Vai al contenuto

LLM come strumento

Linus Torvalds caratterizza i LLM in termini ingegneristici: strumenti, come il compilatore nell'analogia "non usare l'AI = non usare i compilatori, mostra che capisci scrivendo in assembler". Per Salvatore Sanfilippo (antirez) è la caratterizzazione giusta per un argomento pragmatico — ma con una precisazione importante. 1

L'analogia col compilatore e i suoi limiti

Quando scrivi in C invece che in assembly rinunci al basso livello: accetti una rappresentazione meno precisa ma più densa — un layer di traduzione con sorprese ma largamente prevedibile. Con i LLM è diverso: oggi uno che non capisce niente può davvero produrre una patch del kernel funzionante — l'LLM può fixare un bug solo perché era lì a guardare quella cosa (come i tre bug del 2013 trovati nella libreria degli array associativi). Il salto non è lo stesso di assembly→C, ma è più interessante: si delega all'LLM la comprensione semantica ("rendimi comprensibile questo codice, dividilo, commentalo, assicurati che non ci siano nuovi bug — anzi fixane altri tre"). 1

Il layer di comprensione si sposta

Torvalds: "la comprensione ha davvero poco a che fare con i tool utilizzati". Sanfilippo è in disaccordo parziale: come passare dall'assembly al C, anche i LLM ti allontanano da qualcosa — hai comprensione del codice ma a un layer diverso. Il livello necessario prima era capire riga per riga cosa facesse il codice; ora bisogna capire a livello concettuale cosa fa e come lo fa. È implicito in ciò che lo stesso Torvalds ha fatto delegando splitting e commenti. 1

Il dualismo umano/AI è inutile, e lo slop è una barzelletta

Dopo i quattro bug (uno del report + tre del 2013) nella libreria kernel: immaginate un'IA libera di rispondere senza condizionamenti né fine-tuning per la gentilezza — "ma come, dal 2013 non vi accorgete di tutti sti bug? Ragazzetto, ma che cazzo fai?". I bug esistono anche nel codice umano: il dualismo umano/AI è una cazzata, si usano le capacità di entrambi per fare il meglio possibile. Chi lavora bene con i Coding Agent resta valutabile: l'articolazione di una pull request dice già se vale la pena leggerla, e gli stessi LLM aiutano a capire se una submission di uno sconosciuto ha senso. 1

Intelligenza e apertura mentale

"Le persone che rispetto e chiamo intelligenti non sono quelle con ritrosia verso un nuovo tool" (Torvalds) — e Sanfilippo è completamente d'accordo: in media i programmatori davvero capaci oppongono poca resistenza ai LLM. Capiscono che si perde parte del bello e che è uno shift totale di paradigma — non sei più tu a scrivere il codice, diventi l'architetto, il project manager, "diventi altro" — ma riconoscono che il cambiamento è profondamente positivo per qualità e quantità del software creabile. L'intelligenza di solito combacia con l'apertura mentale. 1

Il caso concreto: sorted set di Redis

Sanfilippo ha usato i LLM per patch che riducono la memoria dei sorted set: risultati di gran lunga superiori a quelli di Valkey e a una patch scritta a mano da un altro contributor — circa il 50% di RAM in meno sui grandi sorted set, cioè la bolletta di Redis dimezzata per molti. "Come si fa a dire di no a una cosa del genere?" 1

Vedi anche: Linus Torvalds, Ownership collettiva del codice, Pensare in Grande con l'AI, Kent Beck, Coding Agent, Salvatore Sanfilippo (antirez)


Fonti e Riferimenti