Sono lieto di darti il benvenuto in questa serie di post che analizzeranno l’intero processo di sviluppo di una piattaforma per la vendita di corsi online(course platform).
Hai capito bene. Ti offro la possibilità di seguirmi nello sviluppo, passo a passo, dal nulla a progetto terminato, di una piattaforma web per la vendita e la gestione di corsi online.
Sarà complicato e laborioso, ma senz’altro memorabile
È un blog di intelligenza artificiale, machine learning e data science, quindi se ti stai chiedendo per quale motivo dovresti seguire lo sviluppo di una web course platform… beh avresti perfettamente ragione.
Ricordi il discorso di Seth sulla mucca viola?
Dobbiamo differenziarci!
Come?
Diventando dei Data Scientist Full-Stack.
Calma Calma. La spiegazione arriva.
Full Stack Developer
Nel magico mondo del web developing, distinguiamo due figure:
- Front-end developer, colui che cura la parte estetica di un sito web (UX/UI design) e si assicura che i dati provenienti e diretti al server siano gestiti al meglio. In pratica conosce i linguaggi di markup HTML, CSS e usa i framework Javascript, come React.js o Vue.js, per agevolare il suo lavoro.
- Back-end developer, gestisce invece tutto ciò che concerne il server. Autorizzazioni, sicurezza, operazioni di lettura e scrittura sul Database e via dicendo. Spesso cura anche le così dette DevOps. Crea istanze server su piattaforme come AWS (Amazon Web Services) e GCP (Google Cloud Platform).
- Full-stack developer, è l’unione delle due figure. Capace di gestire un progetto nella sua interezza, un full-stack developer è un risorsa preziosa, meticolosa ed esperta.
I requisiti per diventare una mucca viola sono ancora più alti. L’asticella deve essere alzata.
Abbiamo detto che la figura del data scientist raggiunge la massima produttività fondendo le sue conoscenze di analisi con quelle proprie di un dominio professionale, il così detto domain knowledge.
Dal momento che non siamo ancora dentro un dominio particolare, la nostra soluzione è diventare completamente autonomi a livello di pipeline: dalla creazione di sistemi per la raccolta dati, passando per la relazione di modelli, al loro rilascio in produzione, fruibili quindi dagli utenti finali.
Questo progetto, course platform, serve per acquisire maggiori conoscenze nello sviluppo web. Ottima flessibilità e logiche a componenti.
Perfetto. Ora che siamo allineati, vediamo come procedere.
Requisiti progetto course platform
Pensare di realizzare da zero una piattaforma completa è assurdo.
Procederemo per step, definendo i componenti essenziali e progettandoli in modo che siano integrabili senza soluzione di continuità.
Una piattaforma per la gestione dei corsi si basa su un e-commerce.
Abbiamo la selezione del corso da acquistare, la fase di acquisto e quella di uso. A questo aggiungiamo una dashboard che sarà uso esclusivo degli amministratori e con cui potranno facilmente gestire utenti e risorse.
Ottimo!
Quindi, prima di creare course platform andremo a realizzare un super basic super simple e-commerce.
Quali sono i costituenti base di un e-commerce? Bella domanda.
E-commerce MVP
Ci serve un prodotto base ma funzionante. In gergo è chiamato MVP (Minimum Valuable Product). Quali sono quindi i componenti che non possono prescindere?
- Sistema di login
- Sistema di pagamento
- Caricamento e gestione dei prodotti
- Monitoraggio ordini
Nel concreto, useremo le seguenti tecnologie.
Andremo a creare un monolitich MERN stack. Un MERN stack è l’unione di più sistemi, chiamati in questo caso:
- MongoDb (database non relazionale)
- React (web JavaScript Framework)
- Express js (framework per Web API)
- Node js (un runtime environment)
Monolithic perché in soldoni l’intero codice del server sarà su un unico progetto, e non differenziato in sotto progetti.
Curioso di non perderti nemmeno un update? Seguimi e lascia la tua email! Niente spam. Promesso
Un caldo abbraccio, Andrea
3 Comments
[…] post precedente ti ho spiegato i motivi celati dietro questa folle idea e ci siamo allineati sulle specifiche del […]
[…] identificato gli elementi chiave per la realizzazione del progettto, e creato un sistema per il login delgi utenti. Siamo quindi […]
[…] Full stack data scientist. […]