Analisi tecnica e piano di sviluppo
Lo studio sta sopra, ogni cliente ha il proprio spazio sotto: il suo marchio, i suoi canali, chi ci lavora e la memoria di quello che è stato deciso. Il documento risponde ai diciotto punti richiesti prima dello sviluppo — architettura, schema dati, agente, memoria, sicurezza, milestone e costi — e il prototipo collegato è già navigabile.
Un ambiente unico dove stanno il marchio, i contenuti, i task, il calendario e le note delle riunioni, e sopra ci lavora un agente che quei dati li legge davvero e può modificarli con la conferma di chi di dovere. Non una chat affiancata a un gestionale: gli stessi dati, un solo posto.
La struttura ha due livelli.Sopra c'è lo studio: le persone, chi è assegnato a cosa, il conto. Sotto, ogni cliente ha uno spazio separato con il suo marchio, i suoi canali e la sua memoria, e i dati di un cliente non sono raggiungibili dagli altri. L'accesso si dà per cliente, non per persona: qualcuno è responsabile di due marchi, collaboratore su un terzo e i restanti non li vede nemmeno. Chi approva è quasi sempre una persona del cliente, che entra, dice sì o no e non ha accesso a nient'altro. È lo stesso impianto multi-azienda che ho già in produzione su un altro gestionale, con l'isolamento fatto rispettare dal database e non dal codice applicativo.
La differenza pratica sta nel contesto. Quando chiedi cinque idee, il sistema recupera il profilo del marchio, i contenuti già usciti, le decisioni prese in riunione e le correzioni fatte in passato, poi scrive. È questo che separa un output usabile da uno generico, e vale più di qualsiasi elenco di funzionalità.
Il flusso marchio → contesto → richiesta → contenuto → approvazione → calendario è già navigabile nel prototipo: dashboard, assistente con i tool a vista, profilo del marchio con la memoria, e la colonna dei contenuti fermi in attesa dell'ok del titolare.
È la domanda giusta da farsi prima di spendere, quindi la metto io. Con Notion, un foglio di calcolo e ChatGPT arrivi a una parte di questo, gratis: quello che non ottieni è l'agente che legge i dati da solo e ci riscrive dentro. Ogni volta devi incollare tu il contesto — che tono usate, cosa è uscito, cosa avevate deciso — e ogni volta lo incolli un po' diverso, così l'output oscilla. La piattaforma vale quei soldi solo se ti toglie quel lavoro lì: se dopo sei mesi stai ancora incollando contesto a mano, ho sbagliato io il progetto, non tu la scelta.
Hai chiesto che le tue idee vengano messe in discussione dove esiste una soluzione migliore. Queste sette incidono su tempi, costi o su quanto il prodotto sarà davvero usabile.
Instagram, Facebook, TikTok e LinkedIn danno accesso alle metriche solo dopo verifica aziendale e revisione dell'app: settimane di attesa fuori dal nostro controllo, e per alcune metriche il dato non è comunque esposto. Nell'MVP i numeri si inseriscono a mano o via CSV — poche decine di righe al mese — e l'AI li interpreta lo stesso. Le integrazioni si aprono in fase 2, quando il prodotto è già in uso e vale la pena affrontare la burocrazia. La tabella delle metriche nasce comunque con il campo origine — API, CSV o inserimento manuale — così quando una piattaforma si apre non si riscrive nulla: cambia solo da dove arrivano le righe. Va fatta però una distinzione che cambia le priorità: questo vale per i datiorganici. Sulla parte pubblicitaria Meta ha aperto ad aprile 2026 un canale ufficiale per gli agenti AI, e lì la strada è molto più corta — vedi il punto 03.
Leggere in automatico i profili social dei concorrenti significa fare scraping contro i termini d'uso delle piattaforme: si rompe a ogni modifica del sito e ti espone. È anche la funzione che genera più aspettative e che le delude prima. Quello che regge: analisi del sito del competitor, ricerca web con fonte e data, e i dati che inserisci tu, più la libreria inserzioni di Meta: è pubblica, gratuita e mostra le campagne attive di una pagina, che è l'informazione più utile e quella che nessuno ottiene guardando il feed. L'output — posizionamento, gap, opportunità, idee di differenziazione — resta lo stesso.
Il rischio numero uno è che il sistema funzioni e produca copy mediocre, perché i Brand Profile restano mezzi vuoti: nessuno compila trenta campi per cliente. Serve un onboarding guidato in cui l'AI ti intervista, legge il sito del cliente e propone lei una prima versione del profilo che tu correggi. Sono tre giorni di lavoro in più e sono la differenza tra usarlo ogni giorno e abbandonarlo dopo due settimane.
Lo scrivi tu al punto 24 e confermo. Nell'MVP il sistema registra le differenze tra quello che genera e quello che approvi conservando la coppia come esempio di stile del marchio, e la rimette davanti al modello la volta dopo: è il modo economico e affidabile di imparare, perché mostra invece di dedurre. Non ne ricava mai una regola da solo: dopo che lo stesso schema si ripete più volte te lo mostra e chiede se salvarlo. Una regola sbagliata promossa in automatico avvelena tutti i contenuti successivi, ed è un danno difficile da vedere finché non è grosso.
Tempo stimato e tempo effettivo servono per capire redditività e sovraccarico, ma se vanno inseriti a mano dopo ogni attività i dati saranno incompleti e i calcoli che ci costruisci sopra saranno sbagliati. Nell'MVP: un timer che parte e si ferma dal task con un clic, più la stima proposta dall'AI in base a quanto ci hai messo le volte precedenti. Il resto della reportistica sui tempi arriva quando ci sono numeri veri.
Registrare le call è un cantiere a sé — permessi, formati, costi di trascrizione, e in Italia il consenso dei partecipanti. Il valore vero sta dopo: trasformare il testo in sintesi, decisioni, task e scadenze. Nell'MVP incolli la trascrizione da quello che già usi, o carichi un file audio che viene trascritto; da lì in poi funziona tutto come nel brief.
Isolamento per cliente e deleghe non sono un'opzione: sono il prodotto. Vanno messi dal primo giorno, costano poche ore adesso e sono una riscrittura completa se aggiunti dopo. Quello che invece va rimandato è la macchina commerciale — fatturazione ricorrente, piani, iscrizione autonoma — finché non c'è il secondo studio che paga davvero. I primi si attivano a mano in dieci minuti. Aggiungere un cliente dentro uno studio, invece, deve essere autonomo fin da subito: è il gesto che si ripete, ed è il motivo per cui il flusso di ingresso guidato sta nell'MVP e non in fase 4.
Non impongo lo stack, lo motivo. Questa combinazione l'ho già in produzione su altri gestionali: significa meno tempo di setup, trappole già conosciute e un percorso di deploy collaudato.
| Livello | Scelta | Perché |
|---|---|---|
| Interfaccia | Next.js 16 + React 19 + TypeScript | Una sola base di codice per pagine e API, responsive nativo, tipi condivisi tra client e server: meno errori a runtime. |
| Dati | PostgreSQL gestito (Supabase) | Relazionale come chiedi, più ricerca semantica sugli stessi dati senza aggiungere un secondo database. Include autenticazione, storage file e isolamento per riga. |
| Ricerca semantica | pgvector | Estensione di PostgreSQL: gli embedding stanno accanto ai record. Un database di meno da gestire, pagare e tenere sincronizzato. |
| Strato AI | Vercel AI SDK | Interfaccia unica verso più fornitori. L'astrazione però va messa al livello giusto: funzioni per compito — genera copy, estrai i task, classifica — ognuna con il suo modello. Astrarre al minimo comune denominatore fra fornitori farebbe perdere proprio le cose che rendono buono l'agente: cache del contesto, uso degli strumenti, risposta in streaming. |
| Pubblicazione social | Postiz (già attivo) | Gestisce già le autorizzazioni verso tredici piattaforme. Ci si integra via API invece di rifare da zero il pezzo più costoso e burocratico della fase 3. |
| Pubblicità Meta | Server MCP ufficiale di Meta | Da aprile 2026 Meta espone la gestione campagne agli agenti AI su mcp.facebook.com/ads: reportistica, creazione e modifica di campagne, cataloghi, qualità dei segnali, test A/B. Non c'è un client da scrivere e non c'è integrazione da mantenere: gli strumenti si agganciano all'agente come quelli interni. Resta una domanda di accesso avanzato da presentare, perché gestisci account di altre aziende. |
| Infrastruttura | VPS dedicato, deploy da git | Server già operativo con altre applicazioni: certificati automatici, un container per app, backup del database in un comando. Costo marginale vicino a zero. |
Postiz cambia la fase 3 in modo sostanziale. Le autorizzazioni verso Meta, TikTok e LinkedIn sono la parte più lenta di questo tipo di progetti: essendo già risolte, la pubblicazione programmata diventa una chiamata all'API invece di due mesi di pratiche. Nel prototipo trovi già come si presenterebbe: i canali collegati e la coda di pubblicazione.
Come chiedi al punto 25, niente prompt unico che contiene tutto. Ogni richiesta viene composta da blocchi separati, ciascuno con il suo budget di spazio, e solo quelli pertinenti finiscono nel contesto.
I primi due blocchi non cambiano quasi mai: vengono messi in cache dal fornitore e a ogni richiesta successiva costano un decimo. È il motivo per cui la stima di spesa più avanti resta bassa nonostante l'uso quotidiano.
| Tipo di lavoro | Modello | Perché |
|---|---|---|
| Conversazione, copy, idee, pianificazione | Sonnet 5 | Il miglior rapporto tra qualità e costo per il novanta per cento del lavoro quotidiano. |
| Piano editoriale, report mensile, analisi competitor | Opus 5 | Poche richieste al mese ma complesse: qui la qualità del ragionamento si vede e il costo resta marginale. |
| Classificazioni, estrazioni, riassunti brevi | Haiku 4.5 | Compiti meccanici ad alto volume: cinque volte più economico e più veloce. |
Lo strato di astrazione registra per ogni chiamata modello, token in entrata e in uscita, costo, latenza ed esito. Senza questa contabilità il punto 28 resta un'intenzione: con essa vedi la spesa per cliente e per tipo di attività, e puoi spostare un compito su un modello più economico quando i dati dicono che regge.
La memoria è il punto in cui questi progetti riescono o falliscono, ed è anche quello dove il brief è più esigente. Non salviamo cronologie di chat: ogni voce è un record strutturato.
| Campo | Valori | A cosa serve |
|---|---|---|
| Ambito | utente · cliente · progetto | Determina quando la voce è pertinente |
| Genere | fatto · decisione · preferenza · procedura · nota | Un fatto e una preferenza pesano diversamente nella scrittura |
| Durata | permanente · con scadenza | «Chiusi ad agosto» muore da solo, «niente sconti» no |
| Affidabilità | confermata · dedotta · proposta | Solo le confermate influenzano l'output senza avviso |
| Origine | meeting · chat · manuale · dedotta | Ogni voce si può risalire alla fonte e correggere |
Prima una precisazione che vale più di tutta la sezione: la maggior parte delle domande che farai — cosa scade oggi, cosa è in ritardo, a che punto è il Cliente X — non si risolve con la ricerca semantica ma con una query normale sul database, che dà sempre la stessa risposta esatta. Il semantico serve per memorie, note di riunione, copy approvati e documenti: poche migliaia di righe, non milioni. Grosso modo due terzi del contesto arrivano da query deterministiche e un terzo dal recupero per significato — ed è il motivo per cui non serve un secondo database dedicato ai vettori.
Sul terzo semantico: prima un filtro rigido — solo le voci di quel cliente e ambito — poi ricerca combinata: per significato tramite embedding e per parole esatte tramite indice testuale, perché "Reel" o un nome proprio devono essere trovati anche quando la somiglianza semantica non aiuta. I due elenchi vengono uniti, riordinati per pertinenza e ne arrivano al modello solo i primi.
L'agente non tocca il database direttamente: passa da funzioni dichiarate, ognuna con il suo livello di autorizzazione. È così che il punto 30 diventa un meccanismo invece di un'intenzione.
get_client()search_clients()get_brand_profile()search_content()get_tasks()search_meetings()search_memory()get_analytics()search_web()create_content()update_content()create_task()update_task()create_meeting_note()update_brand_profile()save_memory()create_report()schedule_content()delete_content()delete_client()publish_content()send_communication()Ogni chiamata porta con sé il cliente su cui sta lavorando, e l'agente vede solo gli strumenti che quella persona può usare su quel cliente: a un collaboratore non compare nemmeno publish_content. Il controllo non sta nel prompt — sta nel livello che espone gli strumenti, perché un prompt si aggira e un permesso no.
Le operazioni multiple si confermano in blocco, non una per una: «creo questi cinque task?» con l'elenco davanti. Se ogni azione richiedesse un clic separato smetteresti di usarlo entro una settimana. Ogni chiamata resta nel registro con richiesta, esito ed eventuale annullamento.
Le entità che hai elencato al punto 26, con le relazioni che contano. Ventidue tabelle: abbastanza per reggere le fasi successive, non tante da rallentare la prima.
Studio
StudioUserStudioMemberIl livello sopra: chi fa parte dello studio e con quale ruolo generale (admin, operativo, esterno).
Accesso
ClientAccessLa tabella che regge tutto il modello: persona + cliente + ruolo. Il permesso non è dell'utente, è della coppia. Chi approva per conto del cliente vive qui con una sola riga.
Cliente
ClientBrandProfileBrandPreferenceBrandExampleCompetitorOgni riga di ogni tabella qui sotto porta il client_id. Il profilo è separato dall'anagrafica perché cambia con ritmo diverso e va versionato.
Lavoro
ProjectContentContentVersionContentBriefTaskTimeEntryOgni contenuto conserva le sue versioni: è da lì che nasce il confronto tra generato e approvato.
Conoscenza
MemoryMeetingMeetingNoteAssetTagMemory e Asset portano un vettore per la ricerca semantica.
Misura
PerformanceMetricReportCalendarEventLe metriche sono separate dal contenuto e portano il campo origine (API, CSV, manuale): entrano a mano oggi, da API domani, senza toccare il resto.
Contabilità AI
AIRequestAIResponseUsageModello, token, costo, latenza ed esito per ogni chiamata. Il punto 28 vive qui.
Nel sistema finiscono dati commerciali di aziende terze: strategie, risultati, decisioni interne. Verso i tuoi clienti sei responsabile del trattamento e ti serve poterlo dimostrare.
| Requisito | Come è risolto |
|---|---|
| Accesso | Autenticazione con sessioni firmate e secondo fattore opzionale. Nessuna password gestita da noi in chiaro. |
| Isolamento | Regole a livello di riga nel database: una query senza il workspace giusto non restituisce nulla, anche in caso di errore applicativo. |
| File | Storage privato con collegamenti temporanei firmati. Nessun file raggiungibile con l'URL diretto. |
| Chiavi | Solo in variabili d'ambiente sul server, mai nel codice e mai nel browser. Rotazione documentata. |
| Istruzioni ostili nei contenuti | L'agente legge pagine web, PDF e documenti caricati: sono testo non fidato, e un documento può contenere istruzioni scritte per farsi eseguire. Istruzioni e dati restano separati nel prompt, nessuno strumento parte da solo per effetto di un contenuto recuperato, e ogni scrittura passa comunque dalla conferma. È il motivo per cui i livelli di autorizzazione del punto 06 non sono una formalità. |
| Dati e modelli | I fornitori usati non addestrano sui dati inviati via API. Vale la pena scriverlo nel contratto con i tuoi clienti: è un argomento di vendita, non solo un adempimento. |
| Residenza | Database e file in Unione Europea. Le chiamate ai modelli escono dall'UE: va indicato nell'informativa. |
| Backup | Giornalieri con conservazione a sette giorni, più esportazione completa su richiesta. Un cliente che se ne va si porta via i suoi dati in un file. |
| Tracciabilità | Registro di chi ha fatto cosa e quando, incluse le azioni dell'agente. Serve per il GDPR e serve a te quando qualcosa non torna. |
| Limiti | Tetto di richieste per utente e per ora, e tetto di spesa AI mensile con avviso. Una richiesta anomala non può svuotare il budget. |
| Rischio | Peso | Contromisura |
|---|---|---|
| Output generico perché i Brand Profile restano vuoti | Alto | Onboarding guidato con intervista AI e prima bozza del profilo generata dal sito del cliente. |
| L'AI inventa numeri nei report | Alto | I dati arrivano solo dai tool. Se un dato manca il modello deve dirlo, non stimarlo: verificato in collaudo con casi appositi. |
| Spesa AI fuori controllo | Medio | Tetto mensile, contabilità per chiamata, modelli economici sui compiti semplici, cache sui blocchi fissi. |
| Lentezza percepita nelle richieste complesse | Medio | Risposta in streaming e tool eseguiti in parallelo: vedi il lavoro mentre avviene invece di fissare un caricamento. |
| Le API social cambiano o vengono negate | Medio | Fase 2 isolata dietro Postiz. Se una piattaforma chiude, si perde una funzione, non il prodotto. |
| Dipendenza da un solo fornitore AI | Basso | Strato di astrazione dal primo giorno: cambiare modello è configurazione. |
| Non lo usi tutti i giorni | Il vero rischio | Il collaudo si fa su due settimane di lavoro reale, non su casi di prova. La misura è quante volte apri l'app senza doverti ricordare di farlo. |
I tredici punti che hai elencato, con due aggiunte che nascono dalle criticità: onboarding guidato del Brand Profile e timer sui task. Fuori resta tutto ciò che non serve al flusso quotidiano.
Dentro
Fuori, e perché
Il livello studio — panoramica clienti, selettore, deleghe e flusso di ingresso — è già navigabile: vista studio, nuovo cliente e persone e deleghe. Quello che invece resta fuori dall'MVP è comunque già disegnato: Asset, Analytics e Report si possono aprire e giudicare adesso. Sono marcati fase 2 perché è lì che verranno costruiti: tempi e costi dell'MVP qui sopra non li comprendono. Vederli prima serve a decidere se la direzione è giusta mentre correggerla costa ancora zero.
Dodici settimane, con una consegna visibile ogni due. Non ti chiedo di aspettare tre mesi per vedere qualcosa: dalla terza settimana lo puoi aprire e usare sul lavoro vero.
Fondamenta
Accesso, studio, spazi cliente, schema dati, deploy in linea
→ Entri e vedi l'app vuota ma vera
Studio e deleghe
Elenco clienti, selettore, ruoli per cliente, inviti
→ Il team entra e vede solo i propri clienti
Ingresso di un cliente
Flusso guidato in 7 passi, bozza del marchio dal sito
→ Carichi i clienti veri da solo, senza di me
Agente e tool
Composizione del contesto, tool in lettura, conferme
→ Fai domande e ottieni risposte sui tuoi dati
Memoria
Struttura, ricerca combinata, conferme di salvataggio
→ Ricorda le decisioni tra una sessione e l'altra
Contenuti
Stati, versioni, approvazione interna, copywriting, idee, piano editoriale
→ Primo contenuto che nasce dall'AI, viene approvato ed esce
Organizzazione
Task, timer, calendario, pianificazione giornata
→ Sostituisce quello che usi oggi per organizzarti
Meeting e ricerca
Sintesi, decisioni, task automatici, ricerca web
→ Il flusso completo funziona da capo a fondo
Consolidamento
Sicurezza, prestazioni, collaudo sul campo, messa in linea
→ Lo usi tutti i giorni
Le fasi che hai elencato al punto 36 restano tutte, distribuite: requisiti e architettura sono questo documento, il prototipo è già online, l'MVP sono le nove settimane, collaudo e messa in linea stanno nell'ultima, l'ottimizzazione entra nel canone.
Chi paga è lo studio, e quanto paga dipende da quanti clienti gestisce. È l'unica struttura onesta: il costo vivo cresce con i clienti, quindi cresce anche il prezzo — ma meno che proporzionalmente, perché la parte fissa si spalma.
Comprende analisi, sviluppo, collaudo, messa in linea, migrazione dei clienti già attivi e due settimane di correzioni dopo la consegna. Pagamento a milestone: trenta per cento all'avvio, trenta alla sesta settimana, quaranta alla consegna. Fuori IVA. Al primo studio: canone bloccato per dodici mesi e possibilità di citare il caso.
| Clienti gestiti | Canone | Costo vivo stimato | Margine |
|---|---|---|---|
| 1–3 | 199 € | ~85 € | ~114 € |
| 4–10 | 349 € | ~125 € | ~224 € |
| 11–25 | 649 € | ~260 € | ~389 € |
| oltre 25 | su misura | cresce con l'uso dell'assistente | — |
Aggiungere un cliente dentro uno studio non si paga a parte e non passa da me: lo fa lo studio dal flusso guidato, in dieci minuti. È il motivo per cui quel flusso sta nell'MVP: se ogni nuovo cliente richiedesse una mia configurazione, il prodotto non scalerebbe e il canone sarebbe una finzione.
| Voce | Studio con 7 clienti | Nota |
|---|---|---|
| Modelli AI | ~79 € | Tre persone che lavorano tutti i giorni su sette marchi |
| Database e backup | ~25 € | Un piano per tutto lo studio, non per cliente |
| Server e dominio | ~5 € | Quota su infrastruttura già attiva |
| Ricerca web | 10–20 € | A consumo, cresce con competitor e tendenze |
| Totale | ~125 € | Circa 18 € per cliente al mese |
Ipotesi: uno studio con sette clienti e tre persone che usano l'assistente ogni giorno — circa settantacinque richieste quotidiane in tutto — più un piano editoriale e un report al mese per cliente. Prezzi di listino correnti, senza sconti introduttivi.
| Attività | Modello | Volume mensile | Costo |
|---|---|---|---|
| Assistente quotidiano | Sonnet 5 | 18 M in · 3,4 M out | ≈ 76 $ |
| Piani e report, 14 al mese | Opus 5 | 0,4 M in · 0,1 M out | ≈ 6 $ |
| Classificazioni e estrazioni | Haiku 4.5 | 2 M in · 0,4 M out | ≈ 4 $ |
| Totale | ≈ 86 $ · 79 € |
Il costo per cliente scende con la scala: undici euro al mese di modelli con sette clienti, contro i quaranta di un utente che ne segue uno solo. Le istruzioni di sistema e i profili dei marchi restano in cache e il grosso del contesto arriva da query normali, non dal modello. È la ragione per cui gli scaglioni possono crescere piano.
Il conto torna dal quarto cliente in su. Uno studio con tre clienti paga 199 € e ne costa 85: copre, ma non ripaga lo sviluppo. Il prodotto ha senso commerciale se gli studi che lo adottano ne gestiscono almeno quattro o cinque — ed è anche il punto in cui comincia a servirgli davvero, perché sotto quella soglia un foglio di calcolo regge ancora.
Una parte della fase 2 non dipende da nessuna approvazione: l'analisi dei competitor e il monitoraggio delle tendenze usano solo fonti pubbliche — sito, contenuti aperti e la libreria inserzioni di Meta. Si possono fare subito dopo l'MVP mentre le pratiche per le metriche seguono il loro corso, ed è la parte che in una riunione mensile si vede di più.
| Fase | Contenuto | Quando ha senso |
|---|---|---|
| 2 — Dati | Si parte dalla pubblicità Meta, che ha il canale ufficiale e quindi il percorso più breve: campagne e rendimento dentro l'assistente. Poi le metriche organiche di Instagram, Facebook, TikTok, LinkedIn e YouTube. In parallelo, senza dipendere da nessuna approvazione: analisi dei competitor da fonti pubbliche e monitoraggio delle tendenze di settore. | Competitor e tendenze si possono fare subito; le metriche quando l'accesso arriva |
| 3 — Automazione | Pubblicazione programmata via Postiz, regole automatiche, report generati a fine mese, Gmail, Google Calendar e Drive. Al posto del portale cliente: la schermata di approvazione per chi decide, pensata per il telefono. | Quando il flusso manuale è consolidato e vale la pena automatizzarlo |
| 4 — Impresa | Redditività per cliente e per servizio, fatturazione ricorrente, iscrizione autonoma di un nuovo studio, portale pubblico. Le persone e i ruoli non sono più qui: stanno nell'MVP, perché senza non funziona niente. | Quando c'è un secondo studio che paga |
Ogni fase si preventiva quando la precedente è in uso. Preventivarle adesso significa preventivare funzioni che deciderai di non volere, il che non conviene a nessuno dei due. Le schermate però esistono già tutte nel prototipo — comprese competitor, tendenze, automazioni e la schermata di chi approva — così la discussione è su cose che si vedono, non su elenchi di funzioni.
Apri il prototipo e prova il percorso: dashboard, poi l'assistente con le tre domande di esempio, poi la scheda di un cliente. Serve a capire se il modo in cui è organizzato corrisponde a come lavori davvero — e quello è l'unico criterio che conta, visto che il progetto vale solo se lo apri tutte le mattine.
Se le sette criticità reggono e i tempi vanno bene, si parte dalla settimana uno. Se su qualcuna la pensi diversamente, ne parliamo prima di scrivere codice: è esattamente il motivo per cui questo documento viene prima.