“Impara a scrivere:” I progressi dell’IA significano che il codice sarà scritto in inglese naturale

Schermata 25-01-2023 alle 9

Screenshot dal sito web di OpenAI

Il chatbot basato sull’intelligenza artificiale ChatGPT è, secondo i suoi promotori, pronto a interrompere o addirittura a rendere obsoleto tutto ciò che riguarda la scrittura, dal saggio universitario alle argomentazioni legali. Ma i grandi modelli linguistici stanno già trasformando un’altra attività umana: scrivere codice.

La programmazione, essenzialmente il processo di comunicazione tra esseri umani e computer, non si riferiva sempre all’utilizzo di linguaggi di programmazione come Python e Javascript per sviluppare un’applicazione. Durante i primi giorni della programmazione dei computer, prima che venissero inventate le tastiere, codificare significava premere gli interruttori. Quindi, codificare significava inserire cifre nelle carte. Con l’introduzione dei linguaggi di codifica di alto livello, a partire dal C nel 1972, la codifica ha iniziato a diventare non solo più efficiente, ma anche sempre più vicina al nostro linguaggio umano naturale. Lungo la strada, la programmazione è diventata un’abilità molto apprezzata e ben pagata, al punto che i programmatori hanno a lungo detto agli scrittori licenziati: “Impara a programmare”.

Ora, con lo sviluppo di modelli di linguaggio di grandi dimensioni come ChatGPT, molti scienziati informatici vedono un prossimo futuro in cui tutti saranno in grado di programmare semplicemente utilizzando il linguaggio naturale. E in un clima di licenziamenti di massa e austerità, la tecnologia è già vista come un modo per spremere di più dai lavoratori. L’evoluzione nella codifica sta avvenendo così rapidamente che forse il consiglio dovrebbe essere capovolto. Forse ad alcune persone che lavorano nello sviluppo di software dovrebbe essere detto: “Impara a scrivere”.

Mentre molte persone erano preoccupate per le capacità di scrittura in lingua inglese di ChatGPT in grado di sostituire scrittori e studenti, un’altra importante caratteristica del modello AI è la sua capacità di tradurre il linguaggio naturale in codice, così come il completamento automatico, il debug e suggerire il codice. Nell’agosto 2021, OpenAI ha rilasciato Codex come strumento beta privato in grado di tradurre i comandi in linguaggio naturale in codice. Secondo OpenAI, Codex comprende il linguaggio naturale perché è un discendente di GPT-3 ed è, in parte, addestrato sugli stessi dati del chatbot.

“Il rilascio di OpenAI Codex, un nuovo sistema Al che traduce il linguaggio naturale in codice, segna l’inizio di un cambiamento nel modo in cui viene scritto il software per computer”, ha scritto il co-fondatore e CTO di OpenAI Greg Brockman e CEO di Code.org Hadi Partovi in un articolo su TechCrunch. Questo articolo, intitolato “No-code is code” ha portato l’attenzione su un crescente movimento nell’informatica chiamato “no-code”, in cui le persone possono sviluppare software senza una conoscenza tecnica dei linguaggi di programmazione, senza che sia richiesta una laurea in informatica.

Amjad Masad, CEO di Replit, una piattaforma online per la codifica collaborativa, ha scritto in un post sul blog del 2020 che l’avvento degli strumenti di codifica basati sull’intelligenza artificiale trasformerà la programmazione, rendendola più facile da imparare e più efficiente.

“Ad un certo punto, probabilmente non nel prossimo futuro, la parola ‘codifica’ scomparirà dal nostro lessico perché la programmazione smetterà di richiedere codice e riguarderà invece il puro atto di risolvere problemi utilizzando i computer rendendoli accessibili a sempre più persone.” Massad ha scritto.

“Stiamo solo grattando la superficie di ciò che è possibile in questa nuova tecnologia. Penso che ChatGPT lo porti ad un altro livello,” ha detto Masad a Motherboard in un’intervista. “Ora siamo all’inizio di un altro grande salto nella produttività degli sviluppatori. Penso che ci sarà un miglioramento della produttività da 10 a 100 volte”.

Masad ha affermato che avere una conoscenza della programmazione sarà comunque una buona abilità da avere, poiché l’intelligenza artificiale aiuterà semplicemente ad accelerare i processi di programmazione e ad abbattere alcune delle barriere all’accesso all’informatica. “Non ci sono davvero abbastanza programmatori al mondo, sono molto costosi. Più efficienza abbiamo nella programmazione, più software siamo in grado di creare. Un assistente AI può aiutarti a eseguire il debug del tuo codice, può aiutarti a migliorarlo e refactoring, e questo migliorerà solo ogni aspetto del ciclo di vita dello sviluppo del software. Per quanto riguarda l’accessibilità, penso che renderà il software più accessibile per le persone”.

Tuttavia, l’avvento della codifica “senza codice” che utilizza l’intelligenza artificiale non è tutto rose e fiori. Sta già incontrando gli stessi problemi etici dei modelli di generazione di immagini addestrati sull’arte delle persone senza consenso, e ha implicazioni potenzialmente preoccupanti per i lavoratori che codificano. Dopotutto, la tecnologia che aumenta la produttività dei lavoratori è storicamente andata di pari passo con una riduzione del numero totale di lavoratori impiegati da un’azienda.

Attualmente, GitHub di Microsoft ha il proprio strumento di codifica per il completamento automatico AI chiamato CoPilot, che è stato lanciato a giugno e suggerisce il codice agli utenti in tempo reale. Tuttavia, CoPilot, che è alimentato da Codex, sta affrontando un’azione legale collettiva da parte dei programmatori GitHub che affermano che Codex ha utilizzato il loro codice senza le licenze adeguate.

Le aziende tecnologiche hanno recentemente licenziato masse di lavoratori: Google, Microsoft, Meta e Amazon hanno licenziato collettivamente centinaia di migliaia di dipendenti negli ultimi mesi. Non è chiaro se ciò abbia molto a che fare con l’IA che sostituisce i programmatori, ma le aziende sperano già che l’IA possa consentire ai lavoratori di fare di più con meno.

Google ha già implementato l’intelligenza artificiale per i suoi sviluppatori interni, in cui 10.000 sviluppatori di software Google hanno utilizzato un modello di linguaggio di completamento del codice, nelle loro attività di programmazione. Secondo un blog del CEO Sundar Pichai, l’intelligenza artificiale ha ridotto “del 6% il tempo di iterazione del codice per questi sviluppatori”.

Molti investitori miliardari stanno facendo pressione su aziende come questa Google per ridurre l’organico dei dipendenti ed essere più rigorosi sul budget man mano che i prezzi delle azioni diminuiscono. Anche se l’intelligenza artificiale non sta guidando la carica verso i licenziamenti, fa parte di un quadro emergente di produttività marginalmente aumentata in un momento di austerità.

Masad ha detto a Motherboard che si aspetta di vedere scomparire una parte dell’ingegneria del software: l’ingegneria back-end e full-stack, o le persone che costruiscono la struttura delle applicazioni e del software. “Vedrai che il prodotto e l’ingegnere front-end saranno in grado di svolgere gran parte del lavoro che forse l’ingegnere back-end o full-stack stava facendo in passato. Penso che creerà pressione da entrambe le parti, il che potrebbe avere un impatto sull’occupabilità di quegli ingegneri nel mezzo, e dovranno specializzarsi. Oppure dovranno andare a costruire prodotti o diventare ingegneri di piattaforma di basso livello”.

Con l’inclusione dell’intelligenza artificiale nella codifica, Masad ha affermato che il valore degli ingegneri del software riguarderà maggiormente la capacità di creare qualcosa di nuovo e di supervisionare e gestire il codice, piuttosto che limitarsi a scriverlo.

“Mentre l’intelligenza artificiale potrebbe supportarti in qualche modo, non sarebbe in grado di scrivere l’intero programma da solo. Quindi penso che la novità del codice che creerai determinerà gli effetti dell’intelligenza artificiale sul tuo lavoro”, ha detto.

Masad è fiducioso per il futuro dei processi di codifica generati dall’intelligenza artificiale. “È importante capire che, nonostante i licenziamenti e tutto il resto, ci sono ancora molti ruoli software vacanti nel mondo di oggi”, ha detto, aggiungendo che pensa che la Silicon Valley stia “accaparrando” lavoratori di talento.

Ad ogni modo, la codifica presto probabilmente avrà un aspetto diverso rispetto a oggi, o un anno fa, proprio come la codifica in C++ è diversa dalla codifica utilizzando il linguaggio assembly. Ciò avrà effetti sulla coorte di persone che programmano per vivere, essenzialmente parlando con i computer, quando i computer inizieranno a rispondere.

Leave a Comment

Your email address will not be published. Required fields are marked *