<link rel="stylesheet" href="/assets/fonts/jetbrains-mono/jetbrains-mono.css" />
All posts

IA: uno strumento di lavoro o qualcuno che farà il nostro lavoro?

Ogni pochi mesi esce un titolo che annuncia la fine della programmazione: "l'IA scriverà tutto il codice", "tra due anni non serviranno più sviluppatori". Intanto io l'IA la uso ogni giorno, nei progetti per i clienti e su questo stesso sito, e la mia conclusione è diversa: l'IA è uno strumento di lavoro, non qualcuno che fa il lavoro al posto nostro.

Non è una posizione nuova. Il compilatore ha automatizzato l'assembly, l'IDE ha automatizzato la memoria delle API, Stack Overflow ha automatizzato la ricerca delle soluzioni comuni. Ogni volta il mestiere è cambiato, ma non è sparito: si è spostato più in alto, verso i problemi che quegli strumenti non risolvono.

Cosa fa davvero bene

Usata per i compiti giusti, l'IA fa risparmiare ore. Nel mio lavoro quotidiano la uso soprattutto per:

  • Codice ripetitivo: DTO, validazioni, scheletri di componenti e di test.
  • Capire codice legacy: "spiegami cosa fa questa funzione da 200 righe" è un ottimo punto di partenza.
  • Prime bozze: una query, una regex, uno script di migrazione da rivedere.
  • Conversioni: da JSON a interfaccia TypeScript, da CSS a SCSS, da callback a async/await.
  • Una prima revisione: errori evidenti, nomi poco chiari, casi limite dimenticati.

Un esempio concreto: generare i DTO con le validazioni per un modulo con quindici campi mi richiedeva una ventina di minuti di lavoro meccanico. Con l'IA bastano due minuti, più cinque per rileggere. È il tipo di guadagno che uno strumento deve dare: meno tempo sul ripetitivo, più tempo sul ragionamento.

Dove si ferma

Il limite non è la qualità del codice, che spesso è buona. Il limite è tutto ciò che sta intorno al codice:

  • Il contesto: non sa perché il cliente vuole quella funzione, né quali vincoli non sono scritti da nessuna parte.
  • Le decisioni: tra due soluzioni corrette, scegliere quella giusta per quel team e quel budget.
  • La verifica: il codice generato sembra sempre giusto, anche quando non lo è.
  • La responsabilità: quando qualcosa si rompe in produzione, risponde una persona, non un modello.

Un esempio che mi è capitato davvero. Per mostrare la data di un ordine, l'assistente ha proposto questo:

// Suggested code to show an order date
const date = new Date('2026-10-02');
label.textContent = date.getDate() + '/' + (date.getMonth() + 1);
// Rome: "2/10" — New York: "1/10"

Il codice compila, i test locali passano e in Italia funziona. Ma una stringa nel formato AAAA-MM-GG viene interpretata come mezzanotte UTC, quindi per un utente negli Stati Uniti l'ordine risulta del giorno prima. L'IA non ha "sbagliato" nel senso stretto: non sapeva che il sito ha utenti in più fusi orari. Accorgersene è il nostro lavoro.

Una giornata di lavoro reale: chi fa cosa

Se guardo una giornata tipo, la divisione dei compiti è abbastanza chiara:

AttivitàChi la fa
Capire cosa chiede davvero il clienteIo
Scegliere architettura e compromessiIo, con l'IA come interlocutore
Scrivere scheletri di componenti, DTO e testL'IA, e io rivedo
Analizzare un errore strano nei logInsieme
Rilascio in produzione e responsabilitàIo

"Strumento" non vuol dire "innocuo"

Dire che l'IA è uno strumento non significa che non cambi niente. Cambia molto: chi faceva solo lavoro ripetitivo è più esposto, e i junior rischiano di saltare la fase in cui si imparano le basi, perché il codice funzionante arriva senza fatica.

Allo stesso tempo, alcune competenze valgono più di prima:

  • Leggere e valutare codice, non solo scriverlo.
  • Conoscere il dominio: fatturazione, sanità, logistica, qualunque sia il settore del cliente.
  • Comunicare: tradurre una richiesta vaga in requisiti precisi.
  • Verificare: test, monitoraggio, revisione critica.

Come usarla come strumento: cinque regole

  1. Non accettare codice che non sai spiegare. Se non sai dire perché funziona, non sai nemmeno quando smetterà di funzionare.
  2. Dai contesto. Versione del framework, convenzioni del progetto, vincoli reali: la qualità della risposta dipende da questo.
  3. Verifica con i test, soprattutto sui casi limite: valori vuoti, null, fusi orari, errori di rete.
  4. Non incollare dati sensibili: chiavi, password, dati personali dei clienti.
  5. Misura il guadagno. Se correggere la risposta costa più che scrivere il codice da zero, scrivilo tu.

In sintesi

Io l'IA la vedo come uno strumento: il più potente che abbiamo avuto da molto tempo, ma pur sempre uno strumento. Automatizza il ripetitivo e accelera le prime bozze; non conosce il contesto, non prende decisioni e non si assume responsabilità. Si dice spesso che l'IA non sostituirà gli sviluppatori, ma che gli sviluppatori che la usano bene sostituiranno quelli che la ignorano: secondo me è vero, a patto di aggiungere che "usarla bene" significa restare quelli che capiscono, scelgono e verificano. Ne parlo anche, dal punto di vista dei colloqui, in questo articolo sulle domande da colloquio nell'era dell'IA.

💬 Note dei lettori

0 note

Scrivi una nota

Condividi la tua opinione, un suggerimento o un complimento

Ultime note

Nessuna nota ancora. Sii il primo a commentare!