Implementazione della AI nel mio processo produttivo

<analisi>

Una breve analisi su come utilizzo la AI nel mio lavoro quotidiano per capirne vantaggi e limitazioni attuali (fine 2025)

Oramai da qualche anno l'intelligenza(?) artificiale ha preso pieno posto nelle nostre vite quotidiane in svariati settori, ed il mio, quello dello sviluppo software è il settore più discusso, quello le cui previsioni future fanno tremare tutti e che causa preoccupazioni per scenari apocalittici non troppo lontani.

Si prospettano tempi difficili per programmatori e compagnia bella, in un futuro molto prossimo non ci sarà più bisogno della nostra figura professionale, questo è quello che dicono molti analisti del settore coadiuvati da alcuni CEO di grosse big tech. Le AI funzioneranno in autonomia e prenderanno il posto di diverse figure professionali.

Ma prima di entrare nel panico vediamo oggi (fine 2025) a che punto siamo di queste previsioni così speventose.

Premessa: ogni nuova tecnologia sviluppata nel tempo ha portato ad un cambio più o meno significativo nel mondo del lavoro, alcune realtà lavorative sono sparite completamente, alrte si sono rimodulate per adattarsi, chi dice che non ci sarà più bisogno di programmatori non sta analizzando per bene la situazione.

Ma quindi come sarà il futuro? I giovani di oggi perdono tempo ad imparare a programmare? Come nella maggior parte dei casi, la verità sta nel mezzo; è indubbio che l'avvento dell'AI è stato un colpo fortissimo e velocissimo che quasi nessuno si aspettava in modo così dirompente, ma dobbiamo un attimo rallentare e capire due concetti fondamentali:

  • Oggi le intelligenze artificiali non sono intelligenti, ovvero non ragionano, non hanno un pensiero proprio critico ma semplicemente eseguono delle azioni basandosi sun una loro memoria vastissima fatta di informazioni su cui si sono istruiti. Esempio, se chiedo ad una AI di crearmi un software X e do delle specifiche tecniche, tutte le AI cercheranno di soddisfare quelle specifiche anche se non sono ottimali, ma nessuna AI corregge le mie specifiche perchè magari ritiene che si possa fare meglio, a meno che non lo chiedo esplicitamente.
  • Un qualsiasi cliente, anche il più ferrato, non può ad oggi portare a termine un progetto usando l'AI perchè ci sono sempre dei processi produttivi che non sono solo la realizzazione del codice. Creare iun sito o una applicazione web richiede un'analisi approfondita di vari aspetti legati al progetto come lo stack di lavoro, le tecnilogie giuste da utilizzare, eventuali analisi post produzione, mantenimento ecc..tutte cose che un cliente non può gestire da solo anche se dovesse riuscire a produrre del codice funzionante.

Detto questo è chiaro come la figura del programmatore non è destinata a sparire nel breve ma certamente dovrà modificarsi per svariati motivi. In primis, l'AI crea aspettativa e certamente aiuta che sviluppa a essere più veloce e a produrre con più qualità, per cui i clienti di domani saranno molto esigenti. Quello che prima si poteva fare un con un team di 5 persone lo si potrà fare in 2 se non proprio da soli per cui la barra si alzerà di parecchio e applicazioni che erano solo il frutto di grossi team domani diventeranno lo standard di riferimento ad ogni livello produttivo, quindi chi non si aggiornerà verrà tagliato fuori quasi sicuramente.

Ma torniamo al topic iniziale, ovvero come io utilizzo l'AI oggi nei miei progetti. In primo luogo non utilizzo una sola AI ma mi sono, diciamo, abituato ad usarne 2 principalmente, si tratta di Claude e ChatGPT.
Claude viene considerato il top per quanto riguarda la programmazione e devo dire che per lo stack che utilizzo io, è quello che è stato il più istruito a riguardo per cui continuo con lui. Ma cosa gli faccio fare? Per il momento mi limito a farmi sviluppare piccole parti dei progetti, funzioni logiche o matematiche, risolvere problematiche logiche complesse dove è richiesto un ragionamento di tipo tecnico, fornendo sempre specifiche dettagliate sul progetto corrente, stack, linguaggio, esigenze, obiettivi e risultati.

Chiedo sempre un piccolo pezzo di codice, cioè se devo creare una funzionalità X, non la chiedo tutta, ma la spezzo in vari blocchi e per ogni blocco chiedo a Claude di svilupparlo, poi metto io insieme i blocchi ottenuti. (ovviamente l'analisi del software va fatta prima) Ho notato che questo approccio è il più funzionale perchè le AI tendono a fare gli "sboroni" propopendo spesso soluzioni complesse a problematiche non così complesse, generando codice che a volte è superfluo per quel caso specifico, quindi spezzare tutto in piccoli blocchi tende a creare un codice più pulito e facilemente organizzabile, sopratutto per sviluppi e modifiche future.

Poi è ovvio che anche le AI sbagliano, e meno male, per il quale tutto il codice va poi provato e verificato, l'errore è sempre dietro l'angolo, e questo è un altro motivo per cui è sempre necessario conoscere l'argomento che si sta sviluppando altrimenti la correzione dei bugs diventa impossibile e le AI quando entrano ner loro loop di allucinazione difficilmente ne escono...

Le allucinazioni sono un pericolo costante delle AI attuali e una limitazione di oggi, non parliamo solo di errori che spesso non riescono a risolvere ma a volte mi è capitato di vedere eseguire del codice basato su delle scelte completamente errate oppure non ottimali a risolvere il problema proposto, il che richiede di essere sempre vigili e non dare per buono qualsiasi cosa sputino fuori.

Come piace dire ai miei amici che me lo chiedono, usare una  AI oggi è come avere un ottimo programmatore ma che si presenta a lavoro ubriaco, mai dargli carta bianca e mai lasciarlo fare senza controllare.

Per quanto riguarda ChatGPT lo uso solo per scrittura di testi per mockup di progetti, e per la generazione di immagini. Per la programmazione ho notato che non ha risposte tecnicamente performanti, risolve le problematiche ma non ha una efficienza al pari di Claude.

 

</analisi>