Se il software diventa facile da creare, vale ancora?

L’intelligenza artificiale sta rendendo possibile costruire piccoli programmi su misura in tempi prima impensabili. È una prospettiva che spaventa chi vive di software, ma promette anche di liberare molte persone da attività ripetitive. Le due cose possono essere vere contemporaneamente.

C’è qualcosa di entusiasmante, e insieme inquietante, nel vedere un programma prendere forma descrivendo quello che dovrebbe fare: si chiama Vibe Coding.

Un problema concreto, qualche istruzione, una serie di correzioni. Poi un’interfaccia, dei pulsanti, una funzione che finalmente esegue quell’operazione che fino a ieri richiedeva dieci passaggi manuali.

Non sempre funziona al primo tentativo. Non sempre il risultato è affidabile. Ma quando funziona, la sensazione è forte: qualcosa che sembrava richiedere un investimento importante diventa improvvisamente accessibile.

La domanda arriva subito dopo: se posso farlo io, quanti altri potranno farlo? E che cosa succederà a chi, fino a oggi, ha venduto proprio quella possibilità?

È recente la notizia che un solo sviluppatore, usando l’intelligenza artificiale, ha praticamente riprodotto, clonato la suite di programmi Adobe, Office e AutoCAD, programmi storici che vedono coinvolti centinaia di programmatori per il loro sviluppo (negli anni). Questo sviluppatore da solo li ha praticamente replicati senza avere il codice sorgente, l’AI ha studiato i manuali e ha riprodotto tutto, in qualche settimana.

Il software non deve fare tutto per essere utile

Quando si parla di programmi creati con l’intelligenza artificiale, il confronto finisce spesso sui grandi nomi: sarà possibile rifare un’intera suite per ufficio? Un programma di grafica? Un CAD? A quanto pare sì.

Sono domande comprensibili, ma rischiano di nascondere un cambiamento meno spettacolare e forse più vicino alla vita quotidiana.

Alla maggior parte delle persone non serve ricostruire un prodotto completo. Serve risolvere un problema.

Rinominare documenti secondo una regola precisa. Incrociare due elenchi. Estrarre alcuni dati da una serie di file. Preparare un preventivo. Trasformare informazioni ricevute in un formato diverso. Automatizzare un calcolo che viene ripetuto ogni giorno.

Il piccolo programma che esegue bene una sola di queste operazioni non deve competere con un’intera piattaforma. Deve soltanto evitare a qualcuno di rifare sempre la stessa cosa.

È qui che la possibilità di creare software su misura diventa interessante anche per chi non si considera un informatico.

La promessa: adattare gli strumenti alle persone

Molto lavoro quotidiano consiste nell’adattarsi agli strumenti disponibili.

Si copia un dato perché due applicazioni non comunicano. Si modifica un foglio perché il gestionale esporta le informazioni nel modo sbagliato. Si ripete una procedura perché nessuno ha mai avuto tempo o budget per automatizzarla.

Sono piccole inefficienze, spesso troppo modeste per giustificare un progetto di sviluppo tradizionale. Per chi le subisce tutti i giorni, però, non sono affatto piccole.

La promessa del software generato con l’AI è rendere affrontabili anche questi problemi: costruire uno strumento intorno a una necessità, invece di cambiare continuamente il proprio modo di lavorare per adeguarsi a uno strumento.

Il guadagno più importante potrebbe essere il tempo.

Tempo sottratto a operazioni meccaniche e restituito ad attività che richiedono attenzione, giudizio, creatività. Oppure, più semplicemente, tempo per finire prima.

Non tutto ciò che viene liberato deve necessariamente trasformarsi in altra produzione. Anche lavorare con meno frustrazione è un risultato.

La paura non è irrazionale

Per chi vende o sviluppa software, tuttavia, questa prospettiva ha un altro significato.

Se una funzione diventa più semplice da realizzare, può diventare più difficile farla pagare come prima. Se aumentano le alternative, aumenta la pressione sui prezzi. Se un cliente può costruirsi una soluzione sufficiente, potrebbe non acquistare quella già disponibile.

Chi opera in un settore specialistico può trovarsi in una posizione ambivalente: da una parte riesce finalmente a trasformare le proprie idee in programmi; dall’altra comprende che la stessa opportunità sarà disponibile anche ai concorrenti e ad alcuni clienti.

È possibile guadagnare capacità e perdere, nello stesso momento, una parte del proprio vantaggio economico.

Riconoscerlo non significa essere contrari al progresso. Significa ammettere che un cambiamento potenzialmente positivo per la collettività può comportare costi reali per alcune persone.

La frase «nasceranno nuovi lavori» non basta a cancellare l’incertezza di chi deve capire come continuare a vivere del proprio.

Creare una funzione non significa aver finito il prodotto

All’entusiasmo va però affiancata una distinzione.

Un programma che funziona su alcuni esempi non è necessariamente pronto per qualsiasi utilizzo. Restano da verificare gli errori, i casi imprevisti, la gestione dei dati, la compatibilità e le conseguenze di un risultato sbagliato.

Un conto è un’utility personale che ordina una cartella. Un altro è un’applicazione alla quale vengono affidati documenti riservati, decisioni economiche o istruzioni per una macchina.

Questo non rende irrilevante la facilità di sviluppo. Cambia piuttosto la domanda: non soltanto «riesco a costruirlo?», ma «come faccio a sapere quando posso fidarmi?».

Anche il fai-da-te ha un costo. Bisogna spiegare il problema, provare la soluzione, correggerla e mantenerla. Per alcuni sarà conveniente. Altri preferiranno continuare a pagare qualcuno che se ne occupi.

La possibilità di costruire da soli non elimina automaticamente il valore di un prodotto pronto. Lo obbliga, però, a dimostrare meglio perché merita di essere acquistato.

Il valore potrebbe spostarsi

Se scrivere il codice diventa meno raro, altre capacità potrebbero pesare di più: capire il problema giusto, distinguere una richiesta da una necessità, verificare il risultato, integrare strumenti diversi e assistere chi li usa.

Non è una garanzia che tutto il lavoro perso venga recuperato altrove. E non sarebbe prudente immaginare che queste attività rimangano per sempre estranee all’automazione.

È, piuttosto, una possibile direzione: meno valore attribuito alla sola esistenza di una funzione, più valore alla sua utilità concreta e alla fiducia con cui può essere utilizzata.

Anche la conoscenza di un mestiere potrebbe trovare nuovi sbocchi. Una persona che sa riconoscere un problema ricorrente, ma finora non aveva le risorse per commissionare un programma, potrebbe finalmente provare a risolverlo.

In questo senso, rendere più accessibile lo sviluppo non significa soltanto moltiplicare i concorrenti. Significa anche dare strumenti a competenze che prima non riuscivano a tradursi in software.

Un’opportunità non è ancora una distribuzione equa dei benefici

Resta una questione decisiva: chi beneficerà del tempo risparmiato?

Una stessa automazione può alleggerire una giornata oppure diventare il motivo per chiedere ancora più lavoro. Può rendere sostenibile una piccola attività oppure ridurre il potere contrattuale di chi ci lavora.

Il risultato non dipende soltanto dalla tecnologia. Dipende anche da come viene introdotta, da chi controlla gli strumenti e da come vengono distribuiti i vantaggi.

Per questo paura e speranza non sono due posizioni incompatibili.

Si può desiderare un mondo nel quale meno persone passino le giornate a copiare dati e, nello stesso tempo, preoccuparsi per chi rischia di perdere reddito durante la transizione.

Forse il cambiamento più promettente non sarà avere un clone economico di ogni grande applicazione. Sarà poter eliminare migliaia di piccoli ostacoli che oggi consumano le nostre giornate.

La speranza è che imparare a costruire software più facilmente ci aiuti non soltanto a fare più cose, ma anche a doverne fare meno di inutili.

Rispondi

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.