{"id":3957,"date":"2025-10-21T14:53:47","date_gmt":"2025-10-21T14:53:47","guid":{"rendered":"https:\/\/jamez.it\/blog\/?p=3957"},"modified":"2025-10-21T14:53:49","modified_gmt":"2025-10-21T14:53:49","slug":"on-programming-using-llms","status":"publish","type":"post","link":"https:\/\/jamez.it\/blog\/2025\/10\/21\/on-programming-using-llms\/","title":{"rendered":"On programming using LLMs"},"content":{"rendered":"\n<p>I have just realized that Il Post <a href=\"https:\/\/www.ilpost.it\/2025\/03\/24\/intelligenza-artificiale-vibe-coding\/\" data-type=\"link\" data-id=\"https:\/\/www.ilpost.it\/2025\/03\/24\/intelligenza-artificiale-vibe-coding\/\" target=\"_blank\" rel=\"noreferrer noopener\">released part of an interview<\/a> I gave on the topic of vibe coding a few months ago (article in Italian). I have many problems with the term Vibe Coding, but I suspect the expression will gradually fade, and it will return to being just &#8220;coding&#8221;, like wireless phones are now just phones or online banking is now just banking.<\/p>\n\n\n\n<p>I&#8217;m adding here the full context of the interview. (Scroll down for translation)<\/p>\n\n\n\n<p><strong>Il vibe coding non \u00e8 una moda, ma uno spostamento tettonico nel campo dell&#8217;Informatica.<\/strong><br><br>Personalmente, ho cominciato a usare i LLM per <a href=\"https:\/\/x.com\/liviopacifico\/status\/1569512698974720000\" target=\"_blank\" rel=\"noreferrer noopener\">scrivere codice nel 2022<\/a> quando GPT-3 era lo stato dell&#8217;arte. Quando \u00e8 uscito GPT-4 circa 8 mesi dopo, ho notato un forte cambiamento nelle mie abitudini da programmatore. Anzich\u00e9 fare domande precise su come risolvere un problema, ho cominciato a fare domande pi\u00f9 generiche, praticamente descrivendo quello che desideravo in output, di fatto dando al modello maggiore autonomia di risolvere il problema nel modo che preferiva. Il sentimento prevalente di quei giorni \u00e8 un misto di esaltazione e panico. Alan Warburton ha fatto un ottimo lavoro nel descrivere il wonder panic nel suo <a href=\"https:\/\/theodi.org\/news-and-events\/news\/wizard-of-ai\/\" target=\"_blank\" rel=\"noreferrer noopener\">documentario<\/a> sugli effetti delle AI nel mondo degli artisti, te lo raccomando. Molto di quello che dice \u00e8 applicabile per gli sviluppatori.<br><br>Neanche un anno dopo, intorno a inizio 2024, ho notato che persone vicine a me che non erano sviluppatori, ma erano un pochino smanettoni o avevano una tendenza al pensiero analitico, avevano cominciato a usare i LLM nello stesso modo e stavano avendo successo a lavoro, accelerando il loro processi e rivelando inefficienze nel loro campo.<br><br>Fra i miei amici sviluppatori c&#8217;\u00e8 una divisione che quella fra democratici e repubblicani a confronto \u00e8 nulla. Da una parte ci sono quelli che come me hanno abbracciato questi strumenti e sono entusiasti di poter esplorare pi\u00f9 idee con pi\u00f9 facilit\u00e0 e pi\u00f9 rapidamente. Dall&#8217;altra parte ci sono quelli che giurano di voler morire prima di usare un LLM (&#8220;just a giant autocomplete&#8221;, &#8220;just a stupid markov chain&#8221;, etc.) e sono convinti che un LLM non sostituir\u00e0 mai il loro lavoro. Io sono convinto che nel giro di 5 anni al massimo si dovranno ricredere e trasformare\/adattare la loro professione.<br><br>Arrivando alla tua seconda domanda: credo che il tuo futuro sia gi\u00e0 il presente per molti! Allo stato attuale, usando LLM per scrivere un programma non molto modulare, si giunge presto a un punto in cui il modello comincia a perdersi pezzi e fare errori ed \u00e8 necessario che qualcuno capisca quello che sta succedendo. Questo punto di rottura con Claude 3.7 \u00e8 gi\u00e0 molto alto, parliamo di decine di migliaia di righe di codice. Ma sono convinto che a breve questo limite sar\u00e0 meno evidente e anche societ\u00e0 con grandi codebase cominceranno a usare questi nuovi strumenti.<br><br>Ovviamente gli umani insisteranno per rimanere sul sedile del guidatore. Ovviamente vorremo accertarci che tutto quello prodotto da un modello sia vagliato da un esperto, specialmente quando il suo uso \u00e8 critico. Ovviamente capire quello che sta succedendo \u00e8 essenziale per noi. Un buon modello di esempio \u00e8 il pilota automatico degli aerei. La maggior parte del volo \u00e8 nelle mani del PA, ma per decollo e atterraggio, le fasi pi\u00f9 critiche, gli umani insistono ad avere il controllo totale. Lo stesso avverr\u00e0 per il codice scritto per fini commerciali.<br><br>Ci sar\u00e0 sempre bisogno di qualcuno che capisce quello che sta succedendo dietro le quinte. Il numero di persone in grado di programmare l&#8217;intera stack stava gi\u00e0 diminuendo (io conosco solo tre o quattro persone in grado di scrivere in qualche dialetto del linguaggio assembly, per esempio), e credo che i LLM renderanno questo fenomeno ancora pi\u00f9 evidente. Il che non significa necessariamente meno lavoro per i programmatori (anche se \u00e8 una possibilit\u00e0), ma semplicemente uno spostamento di ruolo un gradino pi\u00f9 alto. I coder diventano manager e fanno supervisione del lavoro dei LLM. Molte persone adorano scrivere codice, e quando le societ\u00e0 decideranno che \u00e8 pi\u00f9 economico lasciare quel task alle macchine, quelle persone soffriranno.<\/p>\n\n\n\n<p><strong>Vibe coding isn\u2019t a fad, but a tectonic shift in the field of computing.<\/strong><\/p>\n\n\n\n<p>Personally, I started <a href=\"http:\/\/x.com\/liviopacifico\/status\/1569512698974720000\" data-type=\"link\" data-id=\"x.com\/liviopacifico\/status\/1569512698974720000\" target=\"_blank\" rel=\"noreferrer noopener\">using LLMs to write code in 2022<\/a>, when GPT-3 was the state of the art. When GPT-4 came out about eight months later, I noticed a strong change in my programming habits. Instead of asking precise questions about how to solve a problem, I began asking more generic ones\u2014basically describing what I wanted as output\u2014effectively giving the model more autonomy to solve the problem however it preferred. The prevailing feeling in those days was a mix of exhilaration and panic. Alan Warburton did a great job describing this \u201cwonder panic\u201d in his <a href=\"http:\/\/theodi.org\/news-and-events\/news\/wizard-of-ai\/\" target=\"_blank\" rel=\"noreferrer noopener\">documentary<\/a> about AI\u2019s effects on the world of artists\u2014I recommend it. Much of what he says applies to developers.<\/p>\n\n\n\n<p>Not even a year later, around early 2024, I noticed that people close to me who weren\u2019t developers but were a bit tech-savvy or had an analytical bent had started using LLMs the same way and were finding success at work, speeding up their processes and revealing inefficiencies in their field.<\/p>\n\n\n\n<p>Among my developer friends there\u2019s a divide that makes the one between Democrats and Republicans look mild by comparison. On one side are those who, like me, have embraced these tools and are excited to explore more ideas more easily and more quickly. On the other side are those who swear they\u2019d rather die than use an LLM (\u201cjust a giant autocomplete,\u201d \u201cjust a stupid Markov chain,\u201d etc.) and are convinced an LLM will never replace their job. I\u2019m convinced that within at most five years they\u2019ll have to change their minds and transform\/adapt their profession.<\/p>\n\n\n\n<p>Coming to your second question: I think your future is already the present for many! As things stand, when you use LLMs to write a not-very-modular program, you quickly hit a point where the model starts losing track of pieces and making mistakes, and someone has to understand what\u2019s going on. With Claude 3.7 this breaking point is already very high\u2014we\u2019re talking tens of thousands of lines of code. But I\u2019m convinced that soon this limit will be less apparent, and even companies with large codebases will start using these new tools.<\/p>\n\n\n\n<p>Obviously, humans will insist on staying in the driver\u2019s seat. Obviously, we\u2019ll want to make sure everything produced by a model is vetted by an expert, especially when its use is critical. Obviously, understanding what\u2019s going on is essential for us. A good analogy is the airplane autopilot. Most of the flight is in the autopilot\u2019s hands, but for takeoff and landing\u2014the most critical phases\u2014humans insist on having full control. The same will happen for code written for commercial purposes.<\/p>\n\n\n\n<p>There will always be a need for someone who understands what\u2019s happening behind the scenes. The number of people capable of programming the entire stack was already shrinking (I personally know only three or four people who can write in some dialect of assembly language, for example), and I believe LLMs will make this phenomenon even more pronounced. That doesn\u2019t necessarily mean less work for programmers (though it\u2019s a possibility), but rather a shift in role one rung higher. Coders become managers, supervising the work of LLMs. Many people love writing code, and when companies decide it\u2019s cheaper to leave that task to machines, those people will suffer.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I have just realized that Il Post released part of an interview I gave on the topic of vibe coding a few months ago (article in Italian). I have many problems with the term Vibe Coding, but I suspect the expression will gradually fade, and it will return to being just &#8220;coding&#8221;, like wireless phones &#8230;<\/p>\n<p><a class=\"understrap-read-more-link button button-black\" href=\"https:\/\/jamez.it\/blog\/2025\/10\/21\/on-programming-using-llms\/\">Continue Reading &rarr;<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[1],"tags":[79,78,21],"_links":{"self":[{"href":"https:\/\/jamez.it\/blog\/wp-json\/wp\/v2\/posts\/3957"}],"collection":[{"href":"https:\/\/jamez.it\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jamez.it\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jamez.it\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jamez.it\/blog\/wp-json\/wp\/v2\/comments?post=3957"}],"version-history":[{"count":1,"href":"https:\/\/jamez.it\/blog\/wp-json\/wp\/v2\/posts\/3957\/revisions"}],"predecessor-version":[{"id":3958,"href":"https:\/\/jamez.it\/blog\/wp-json\/wp\/v2\/posts\/3957\/revisions\/3958"}],"wp:attachment":[{"href":"https:\/\/jamez.it\/blog\/wp-json\/wp\/v2\/media?parent=3957"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jamez.it\/blog\/wp-json\/wp\/v2\/categories?post=3957"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jamez.it\/blog\/wp-json\/wp\/v2\/tags?post=3957"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}