Un esperimento personale che ha acceso il dibattito

Durante il Open Source Summit Europe, Linus Torvalds ha confermato di impiegare quotidianamente strumenti di intelligenza artificiale generativa per scrivere codice. Tuttavia, ha raccontato un episodio recente in cui, per un progetto personale, ha chiesto a un’IA di creare un’interfaccia grafica in Java, linguaggio che non utilizza abitualmente.

Torvalds, abituato a lavorare su kernel e sistemi a basso livello, aveva già sviluppato in C un’interfaccia per un microcontrollore dotato di piccola schermata. Per dare un aspetto più “moderno” all’interfaccia, ha deciso di affidarsi all’IA, sperando di risparmiare tempo su una parte del lavoro fuori dalla sua zona di comfort.

Il risultato è stato “terribile”: l’IA ha generato codice Java pieno di errori di sintassi, dipendenze inutili e una struttura di interfaccia che non rispettava le specifiche richieste. Torvalds ha mostrato il codice al pubblico, sottolineando come l’output fosse “orribile” e richiedesse una revisione completa.

Le lezioni apprese da un errore di programmazione

Quando l’IA è utile

Torvalds ha ribadito che l’intelligenza artificiale funziona meglio quando complementa le conoscenze del programmatore e copre aree in cui quest’ultimo ha meno esperienza. In pratica, utilizza l’IA per “fare le cose che gli vengono male”, affidandole compiti di routine o di esplorazione che non impattano la stabilità di progetti critici.

    • Generazione di boilerplate per linguaggi poco familiari.
    • Prototipazione rapida di interfacce utente non mission‑critical.
    • Supporto nella scrittura di test unitari o script di automazione.

Limiti evidenti nella programmazione di basso livello

Il caso della UI Java ha dimostrato che, per codice di basso livello o per componenti che richiedono precisione estrema, affidarsi completamente all’IA è pericoloso. Un errore in un progetto personale può avere conseguenze limitate, ma un bug nel kernel di Linux avrebbe impatti globali.

Torvalds ha sottolineato che la revisione umana resta imprescindibile quando si tratta di:

    • Modifiche al kernel di Linux.
    • Gestione di driver hardware critici.
    • Implementazioni di sicurezza a livello di sistema.

Il punto di vista di Torvalds sull’evoluzione dell’IA

In passato Torvalds era scettico riguardo alle capacità delle IA generative, ritenendole “non abbastanza buone” per la programmazione reale. Con l’avanzare delle tecnologie, ha rivisto la sua opinione, testando gli strumenti in “progetti piccoli” e constatando miglioramenti significativi nella qualità del codice prodotto.

Oggi afferma di apprezzare le IA perché rendono la programmazione “più piacevole” quando sono usate con criterio. Evidenzia anche il ruolo positivo dell’IA nel rendere più accessibile lo sviluppo software a principianti, riducendo la barriera d’ingresso che esisteva negli anni ’80.

IA e sviluppo del kernel: una relazione cauta

Torvalds ha chiarito che la sua opinione cambia radicalmente quando il discorso si sposta sul kernel di Linux. Un errore in un progetto personale è circoscritto, ma un difetto nel kernel può compromettere milioni di dispositivi in tutto il mondo. Per questo motivo insiste su una supervisione umana rigorosa per qualsiasi utilizzo dell’IA in questo contesto.

Nonostante le riserve, Torvalds non rifiuta l’IA all’interno dell’ecosistema Linux. Al contrario, ha difeso pubblicamente l’uso di strumenti IA per:

    • Revisione del codice.
    • Rilevazione di bug.
    • Assistenza nei processi di manutenzione.

Ha sperimentato con assistenti come Claude Code per attività legate al kernel, ma sempre “sotto direzione e validazione umana”.

Il futuro della programmazione assistita dall’IA

Secondo Torvalds, la discussione non riguarda più se l’IA possa programmare, ma come integrarla senza perdere il controllo sul risultato finale. La chiave, per un veterano che ha contribuito a una delle più grandi opere software del mondo, è mantenere la responsabilità nelle mani dei programmatori.

Questa visione si allinea con tendenze emergenti come il “vibe coding”, che incoraggia i nuovi sviluppatori a sperimentare e apprendere attraverso prototipi rapidi, supportati da IA. La possibilità di trasformare un’idea in un’applicazione funzionante con l’aiuto dell’IA può rendere il processo più divertente e formativo rispetto a qualche anno fa.

Conclusioni

Linus Torvalds ha dimostrato che l’intelligenza artificiale è uno strumento potente, ma non una panacea. È efficace per compiti di supporto, per colmare lacune di competenza e per accelerare la prototipazione, ma richiede sempre una verifica umana, soprattutto nei contesti critici come lo sviluppo del kernel Linux.

Il suo messaggio è chiaro: usare l’IA con criterio, supervisionare i risultati e non delegare compiti vitali a una macchina. Solo così la comunità potrà beneficiare dei vantaggi dell’IA senza compromettere la stabilità e la sicurezza del software su cui il mondo intero fa affidamento.