Ultimamente mi sento abbastanza giù. Un po' per come sta andando l'economia, un po' perché questa situazione comincia a farsi sentire anche nel mio portafoglio. I risparmi piano piano spariscono, i vecchi clienti si perdono e trovarne di nuovi non è proprio una passeggiata.
E come se non bastasse, è arrivato anche il colpo di grazia. Ho trovato il mio gatto morto.
Non so nemmeno cosa gli sia successo. Forse una macchina, forse qualche delinquente. Qui si parla anche di gruppi di ragazzi che andrebbero in giro a fare del male ai gatti. Non so se sia vero, né se c'entri qualcosa con quello che è successo al mio. Però già il fatto di dovermi porre questa domanda mi fa stare male.
Guardo quello che succede nel mondo e mi sembra che stiamo entrando in una fase sempre più buia. Guerre, conflitti, incertezza economica, gente che sembra tirare fuori il peggio di sé. Magari sono io che in questo periodo vedo tutto più nero del solito. Può essere.
E con tutta questa tristezza addosso, devo comunque lavorare. Ho un progetto per una startup da finire in pochissimo tempo, scadenze da rispettare, problemi da risolvere.
La cosa strana è che il lavoro è diventato quasi l'unico posto dove riesco a non pensare a tutto il resto. Apro l'editor, mi concentro su un task, poi su un altro. Un bug, una funzione, un problema di performance. Finalmente qualcosa su cui posso intervenire. Qualcosa che, almeno in teoria, posso sistemare.
E poi, a essere sincero, non sta andando nemmeno male.
La ricerca che sto portando avanti comincia finalmente a dare risultati interessanti. Quello che era nato come una semplice proof of concept sta diventando qualcosa che funziona davvero. C'è ancora tanto da provare e dimostrare, però vedere certe idee prendere forma mi dà una soddisfazione enorme.
Anche il gioco che sto sviluppando sta diventando bello. Comincia ad assomigliare a quello che avevo immaginato nella mia testa, con il suo universo, i pianeti, le risorse, le interazioni. Mi ritrovo a provarlo e a pensare: cavolo, sta venendo fuori davvero.
E tutto questo grazie anche all'AI, che ormai si prende tranquillamente, direi, un buon 70% del lavoro.
Perché 70% e non 100%?
Bella domanda. E forse proprio qui c'è una cosa che ho imparato negli ultimi mesi.
L'AI è diventata incredibilmente brava a scrivere codice. Le puoi chiedere di implementare una funzione, un modulo, un sistema abbastanza complesso, e spesso il risultato arriva in pochissimo tempo. Però quando si entra nel system design, nelle performance, nelle decisioni architetturali che oggi sembrano irrilevanti ma domani fanno la differenza per scalare, lì continuo a vedere problemi.
Non sempre, ovviamente. Però abbastanza da aver cambiato il mio modo di lavorarci.
La cosa buffa è che spesso io ho già in testa come dovrebbe essere costruito l'intero sistema. So dove voglio arrivare, quali componenti mi serviranno, come dovrebbero comunicare tra loro. E all'inizio pensavo: perfetto, glielo spiego tutto e lo faccio costruire.
Sembra la cosa più logica, no?
E invece no. O almeno, con me spesso non funziona.
Se gli spiego tutta l'idea, mi ritrovo con un sacco di codice, apparentemente anche ben organizzato, ma poi cominciano le correzioni. Una scelta architetturale sbagliata, una dipendenza che non volevo, una parte che funziona benissimo da sola ma diventa un problema quando si collega alle altre. E si finisce a cercare bug, riscrivere pezzi e perdere proprio quel tempo che pensavo di risparmiare.
Così ho cominciato a fare una cosa molto più semplice. Non gli spiego tutto. Gli do il lavoro a pezzi.
Nel gioco, per esempio, ho costruito prima l'engine dell'universo. Poi il sistema delle sessioni per gli utenti. Poi le risorse, i pianeti, le loro logiche. Ogni pezzo con le proprie responsabilità, cercando di mantenerlo il più indipendente possibile. Solo dopo ho cominciato a collegare tutto.
E piano piano il risultato è venuto fuori. Senza dover continuamente demolire mezza architettura perché qualcosa non era stato pensato bene all'inizio.
Qualcuno potrebbe dire: ma scusa, è semplicemente il modo in cui si dovrebbe sviluppare software anche senza AI.
Esatto!
È proprio questo il punto.
Mi sono accorto che lavorare con gli agenti AI somiglia sempre di più a lavorare con un team. E non intendo soltanto perché puoi assegnare task a diversi agenti. Intendo proprio il modo in cui devi pensare e organizzare il lavoro.
Devi capire cosa delegare, quando delegarlo, quali dipendenze esistono, cosa deve essere pronto prima di iniziare qualcos'altro. Devi saper distinguere le decisioni importanti dai dettagli implementativi.
In pratica entrano in gioco le competenze di un team lead, o comunque di qualcuno che sa coordinare lo sviluppo di un progetto.
E secondo me chi possiede queste competenze parte già con un vantaggio enorme nell'utilizzo degli agenti AI.
Ma attenzione, perché non significa che basta organizzare un team e tutto funziona. Anche tra esseri umani ci capiamo male, comunichiamo poco, assegniamo responsabilità ambigue. Quante volte un progetto è finito male non perché mancassero programmatori bravi, ma perché il lavoro era organizzato da schifo?
Con gli agenti succede la stessa cosa. Magari in forme diverse, però il problema è molto simile.
Ed è anche per questo che non sono un grande fan di tutta questa ossessione per i mega file Markdown, documentazioni infinite e istruzioni gigantesche che dovrebbero spiegare all'AI come comportarsi in ogni possibile situazione.
Non sto dicendo che la documentazione non serva, eh. Ci mancherebbe.
Ma ho visto che per me funziona molto meglio sapere organizzare il lavoro nei passi giusti, con le priorità giuste, piuttosto che cercare di infilare l'intera conoscenza di un progetto dentro un file e sperare che l'agente capisca tutto.
Io, per esempio, non ho un enorme documento dove ho scritto ogni singola cosa che gli agenti dovranno realizzare nei prossimi mesi. Gran parte del progetto ce l'ho in testa.
Quando arriva il momento, so quale pezzo affrontare, quali vincoli dare e cosa controllare. Certo, ogni tanto sbaglio anch'io. Però mi sembra di perdere molto meno tempo così che tentando di pianificare e far generare tutto in una volta.
Forse è proprio questa la competenza che diventerà sempre più importante. Non sapere scrivere ogni riga di codice, ma sapere che cosa costruire, come dividerlo e soprattutto riconoscere quando qualcosa non va bene.
E qui mi torna in mente una frase che gira spesso: l'AI è un moltiplicatore.
Se fai schifo in qualcosa, rischia di moltiplicare anche quello. Se sai cosa stai facendo, può moltiplicare enormemente le tue capacità.
Sembra una banalità, però ci penso spesso.
E non lo dico perché io sarei quello bravo che sa sempre cosa fare. Anzi. Su tante cose faccio schifo anch'io. Ho sbagliato progetti, ho perso tempo, ho preso decisioni stupide e continuo a prenderne. Basta guardare quante cose ho costruito senza riuscire a trasformarle in un'attività che mi permetta di vivere tranquillamente.
Solo che almeno cerco di riconoscerlo.
Perché se non riesco ad ammettere che il problema potrebbe essere una mia decisione, una mia incapacità o semplicemente qualcosa che non ho capito, allora nessun modello AI mi aiuterà davvero. Anzi, magari mi permetterà di costruire molto più velocemente qualcosa di sbagliato.
Ed è qui che entra in gioco il nostro caro ego.
Ho l'impressione che molte persone si aspettino dall'AI una specie di conferma delle proprie capacità. Se il risultato non funziona, è colpa del modello. Se funziona, è perché loro hanno avuto l'idea geniale.
Ma magari il modello ha fatto esattamente quello che gli abbiamo chiesto. Era la nostra idea a essere sbagliata.
È difficile ammetterlo, soprattutto quando hai investito tempo, soldi e magari anni della tua vita in qualcosa. Lo so bene.
Eppure credo che la capacità di mettere in discussione noi stessi sarà ancora più importante in un mondo dove possiamo produrre software, contenuti e interi prodotti a una velocità che fino a pochi anni fa sembrava impossibile.
Perché adesso possiamo sbagliare molto più velocemente.
E forse anche imparare molto più velocemente. Però per imparare bisogna prima accettare di aver sbagliato.
Comunque, sono partito parlando della tristezza che mi porto dietro e sono finito a parlare di architetture software, agenti AI e problemi di ego. Come al solito mi si mescola tutto in testa.
Fuori continuano a esserci problemi che non posso risolvere con un editor e un terminale. E la cosa mi pesa, parecchio.
Dentro, almeno, posso ancora costruire qualcosa. Vedere un'idea che prende forma, un esperimento che finalmente funziona, un gioco che comincia ad avere vita propria.
Non risolve il resto, lo so.
Però in questo momento mi aiuta ad andare avanti.
E per quanto riguarda l'AI, continuo a pensare che il problema più grande non sia necessariamente la sua intelligenza.
È il nostro ego. Quello che ci impedisce di capire quando siamo noi a sbagliare, anche mentre abbiamo tra le mani lo strumento più potente che abbiamo mai avuto per fare le cose.
Send via.chat
Receive form leads, send login codes, and route important alerts through WhatsApp or Telegram.
Contattaci
Hai una domanda o vuoi collaborare? Lascia un messaggio qui sotto.