iscriviti al corso di programmazione
Cosa puoi fare dopo il corso

Creazioni di siti web
Realizzerai siti web moderni, veloci e responsive, progettati per comunicare in modo efficace e valorizzare l’identità di aziende e professionisti. Dalla struttura alla grafica, ogni progetto sarà pensato per offrire un’esperienza utente intuitiva e professionale, ottimizzata per tutti i dispositivi.

Software personalizzati
Svilupperai software su misura, costruiti partendo da esigenze reali e processi specifici. Ogni soluzione sarà pensata per semplificare il lavoro, automatizzare attività e migliorare l’organizzazione interna, garantendo affidabilità, sicurezza e possibilità di evoluzione nel tempo.

Web app su misura
Creerai web app personalizzate, accessibili da browser e progettate per essere scalabili, performanti e facili da usare. Dalla gestione dei dati alle funzionalità avanzate, realizzerai applicazioni che rispondono a bisogni concreti e accompagnano la crescita di progetti e aziende.
Scegli il percorso che fa per te
SMANETTONE
moduli avanzati e ottimizzazione del workflow.- N. 5 Lezioni
PARTO DA 0
Le basi passo-passo- N. 10 Lezioni
- 1 mese di stage
DA ZERO A PRO
Percorso completo e accelerato- N. 20 Lezioni
- 1 mese di stage
- Esperienza sul set
- Supporto post-corso
Modulo 1 — Fondamenti Web
1. Il Web e gli strumenti
Obiettivi: capire come funziona il web, impostare l’ambiente.
Contenuti: HTTP, client/server, HTML/CSS/JS overview, installazioni, Git init.
Pratica: repo Git “playground-web”, prima pagina index.html.
Casa: README con obiettivi del corso, commit/push.
2. HTML semantico I
Obiettivi: struttura corretta di una pagina.
Contenuti: tag base, headings, paragrafi, liste, link, immagini, attributi.
Pratica: pagina “Curriculum” con nav e sezioni.
Casa: aggiungere “Portfolio” con card di progetti (solo HTML).
3. HTML semantico II + accessibilità base
Obiettivi: documenti ben strutturati e accessibili.
Contenuti: <header>/<main>/<section>/<article>/<aside>/<footer>, alt text, landmark ARIA (base).
Pratica: ristrutturare il portfolio in semantica corretta.
Casa: validare HTML (validator W3C) e correggere.
4. CSS base I
Obiettivi: selettori, cascata e box model.
Contenuti: specificità, eredità, display, margin/padding/border, colori, font.
Pratica: stile al portfolio; creare una utility class.
Casa: scheda stile tipografico (scala font, line-height, spacing).
5. CSS base II: layout moderni
Obiettivi: layout responsivi.
Contenuti: Flexbox, Grid, media queries, responsive images.
Pratica: layout responsive 2-colonne + gallery.
Casa: rendere tutto mobile-first (breakpoint principali).
6. Form e UX micro
Obiettivi: creare form usabili.
Contenuti: input types, label/for, validation base, states focus/hover.
Pratica: form contatti con validazioni HTML5.
Casa: micro-interazioni (hover/focus/active) coerenti.
Modulo 2 — JavaScript Core
7. JS base I
Obiettivi: sintassi, variabili, tipi, operatori.
Contenuti: let/const, string/number/boolean, template literals.
Pratica: utility per calcoli e formattazioni.
Casa: 10 esercizi di logica (if/else, switch).
8. JS base II: funzioni & scope
Obiettivi: pensare in funzioni.
Contenuti: dichiarazioni, arrow, params default, scope/hoisting.
Pratica: piccola libreria di helpers (pure functions).
Casa: refactor esercizi con funzioni riutilizzabili.
9. Array & Oggetti
Obiettivi: manipolazione dati.
Contenuti: map/filter/reduce, spread/rest, destrutturazione.
Pratica: trasformare un dataset di progetti.
Casa: 5 trasformazioni dati (mappe/filtri/combinazioni).
10. DOM & Events
Obiettivi: collegare JS alla UI.
Contenuti: querySelector, classList, delega eventi, form submit.
Pratica: to-do list vanilla (add/remove/toggle).
Casa: persistenza su localStorage.
11. Async JS
Obiettivi: consumare API.
Contenuti: fetch, async/await, error handling.
Pratica: chiamata ad una API pubblica e render lista.
Casa: spinner, gestione errori user-friendly.
12. Moduli & Build base
Obiettivi: organizzare codice.
Contenuti: ES Modules, import/export, struttura cartelle.
Pratica: suddividere la to-do list in moduli.
Casa: aggiungere un modulo “api.js” con funzioni isolate.
13. Qualità: linting & formattazione
Obiettivi: codice consistente.
Contenuti: ESLint, Prettier, regole principali, script npm.
Pratica: configurare .eslintrc e .prettierrc nel repo.
Casa: ripassare code smells e sistemare warning.
14. Git avanzato & flusso di lavoro
Obiettivi: versionare come un pro.
Contenuti: branching, PR simulata, commit convenzionali.
Pratica: creare feature branch e aprire PR (descrizione chiara).
Casa: merge e release notes minimale.
Modulo 3 — Web moderno
15. Accessibilità & Performance
Obiettivi: pagine veloci e inclusive.
Contenuti: tab order, contrasto, semantic focus, immagini ottimizzate, lazy loading, Lighthouse.
Pratica: audit del portfolio e fix.
Casa: portare LCP < 2.5s su mobile (se possibile).
16. Responsive avanzato & CSS moderno
Obiettivi: design system leggero.
Contenuti: CSS custom properties, BEM/utility-first (concetti), container queries (se supportate).
Pratica: palette e spacings via variables.
Casa: refactor CSS rimuovendo ridondanze.
17. HTTP & API reali
Obiettivi: capire REST e status codes.
Contenuti: GET/POST/PUT/DELETE, headers, CORS (concetti).
Pratica: mini-client CRUD verso una mock API (es. json-server o mock locali).
Casa: scrivere un “API client” modulare.
18. TypeScript (introduzione)
Obiettivi: tipi per evitare bug.
Contenuti: tipi base, interfacce, tipi per funzioni, strict mode.
Pratica: tipizzare l’API client.
Casa: convertire 2 moduli JS in TS.
Modulo 4 — React
19. React I: fondamenta
Obiettivi: mental model di React.
Contenuti: componenti, JSX, props, state, rendering.
Pratica: app “Cards Portfolio” con componenti riutilizzabili.
Casa: estrarre componenti e prop-types o TS types.
20. React II: effects & data flow
Obiettivi: side effects e fetch.
Contenuti: useState, useEffect, lifting state.
Pratica: fetch da API e render lista + loading/error.
Casa: componente SearchBar con filtro client-side.
21. Routing
Obiettivi: multi-pagina.
Contenuti: React Router (routes, params, 404).
Pratica: pagine Home/Progetti/Dettaglio.
Casa: collegare il portfolio statico al router.
22. Forms in React
Obiettivi: gestire input.
Contenuti: controlled/uncontrolled, validazioni base.
Pratica: form “Nuovo Progetto” con validazione.
Casa: mostrare errori user-friendly e reset form.
23. Stato globale leggero
Obiettivi: condividere stato.
Contenuti: Context API, custom hooks.
Pratica: ThemeContext (light/dark) + persistenza su localStorage.
Casa: estrarre un paio di custom hooks riutilizzabili.
24. Chiamate API robuste
Obiettivi: architettura servizi.
Contenuti: separare layer services/, caching semplice, abort controller.
Pratica: useApi hook con cancellazione richieste.
Casa: gestire retry/backoff semplice (se fallisce).
25. Performance & ottimizzazioni
Obiettivi: evitare re-render inutili.
Contenuti: memo, useMemo, useCallback, key, list rendering.
Pratica: profilare e ottimizzare lista grande.
Casa: misurare miglioramenti (note nel README).
26. Test base
Obiettivi: confidenza nel refactor.
Contenuti: Vitest/Jest + React Testing Library, test di componenti e hooks.
Pratica: 2–3 test (render, interazione, fetch mock).
Casa: aggiungere un test d’integrazione semplice.
27. Build & deploy
Obiettivi: pubblicare l’app.
Contenuti: Vite build, asset, env vars, deploy su Netlify/Vercel o GitHub Pages.
Pratica: pipeline di deploy e preview links.
Casa: check lista “Go-Live” (favicon, meta tags, 404).
Modulo 5 — Progetto Finale & Soft Skills
28. Build & deploy
Obiettivi: pubblicare l’app.
Contenuti: Vite build, asset, env vars, deploy su Netlify/Vercel o GitHub Pages.
Pratica: pipeline di deploy e preview links.
Casa: check lista “Go-Live” (favicon, meta tags, 404).
29. Implementazione & Code Review
Obiettivi: qualità e rifiniture.
Contenuti: PR, review, refactor guidato da test, accessibility pass.
Pratica: review live + refactor mirato.
Casa: chiudere bug/issue aperte, aggiornare README.
30. Presentazione & Next Steps
Obiettivi: presentare e saper crescere.
Contenuti: demo dell’app, retrospettiva, CV/GitHub polishing, come continuare (katas, OSS, roadmap).
Pratica: registrare una demo video breve.
Casa: (facoltativo) pubblicare su LinkedIn/Portfolio.
- Durata (2 ore a lezione)
- Lezioni (30)
- Livello (per tutti)
- Lingua (Italiano)
- Esperienza (nessuna)
- In presenza / online
Domande Frequenti
Il livello è adatto a tutti: partiamo dal metodo e arriviamo a un workflow professionale passo-passo.
L’importo indicato si riferisce al pagamento in un’unica soluzione, da effettuare al momento dell’iscrizione.
In alternativa puoi pagare in 4 rate con Klarna oppure fino a 24 rate con Compass.
Gli interessi (se previsti) vengono calcolati al momento della simulazione.
Dopo aver completato il corso, sarà creata una scheda che le tue migliori abilità e una descrizione dettagliata, Riflessi Studios ti presenterà a una serie di aziende convenzionate e avrai la possibilità di fare uno stage di un mese presso diverse strutture
Al termine rilasciamo un attestato di partecipazione Riflessi Studios (su richiesta).
Facciamo il possibile per un recupero su edizione successiva o con materiali di supporto; la gestione è caso per caso in base al calendario.
Le lezioni vengono programmate di volta in volta con massima flessibilità (mattina, pomeriggio), in base alle disponibilità del docente e dello studente.
La frequenza è da 1 a 3 lezioni a settimana: minimo 1 e massimo 3.
HTML, CSS (SASS), JAVASCRIPT, TYPESCRIPT, PHYTON, PHP

Giovanni Buscarino è un programmatore software specializzato in soluzioni cloud per il mondo dell’immagine. Ideatore e lead developer di Up Your Shoot, la piattaforma gestionale e di vendita per fotografi usata in tutta Europa, ha trasformato processi complessi—dalle prenotazioni alle consegne—in esperienze semplici, veloci e scalabili.
Con un approccio full-stack e una particolare attenzione all’esperienza utente, Giovanni guida lo sviluppo di sistemi basati su microservizi e integrazioni API, con moduli che includono gallerie interattive, e-commerce, contratti digitali e funzioni di AI (come il riconoscimento volti) pensate per far risparmiare tempo ai fotografi e aumentare le vendite.
La sua carriera nasce dall’incontro tra creatività e ingegneria: lavorando fianco a fianco con studi fotografici e produttori di contenuti, ha costruito prodotti che rispondono a esigenze reali, mantenendo standard elevati di sicurezza, performance e affidabilità. In qualità di mentor e formatore, collabora con Riflessi School per diffondere competenze pratiche su architetture moderne, automazioni e product thinking.
Oggi Giovanni continua a guidare l’evoluzione di Up Your Shoot e a supportare team e professionisti nella trasformazione digitale, con una visione chiara: mettere la tecnologia al servizio dell’autenticità delle immagini e del lavoro quotidiano dei creativi.