LLMs aren't just for sissies

“... even if [FORTRAN] did work, no respectable programmer would use it -- it was only for sissies!” 

Richard Hamming, on programming before the invention of one of the first mid-level programming languages

History is repeating itself. So many words have been spilled about LLMs ruining programming. “Ruining” may be too strong, but some broad opinions include:

  • Junior developers will never learn the fundamentals
  • You always have to review the code and the code is bad
  • LLMs can never replace real programmers
  • LLMs are only good for prototyping greenfield projects
  • ... among many other opinions

Today’s programming isn’t going anywhere. LLMs are another layer of abstraction, which help convert natural language to a (usually) high level programming language. Over the years, professionals have entered the industry at different levels of abstraction and thrived. We all stand on the shoulders of giants.

At each step in this list, those in the level below shake their head at those above for not truly understanding the fundamentals. But each layer has its part to play, and use cases in one layer may not make sense for another. 

LLMs aren't perfect at producing reliable code! But high level languages aren't perfect at memory management, and mid-level languages aren't perfect at bit manipulation, and assembly isn't perfect at register allocation, and machine code isn't perfect at managing CPU caches, and microarchitectures aren't perfect at handling quantum effects, and... I'm not knowledgeable enough to go much deeper, but you get the idea.

But even though I'm not knowledgeable enough, someone is. Professionals that specialize in each of these layers will always be valuable. There are entire conferences for RISC-V, so surely people will still pay attention to Python even though LLMs exist. As vibe coding continues to take off, the market will adjust to fill in the gaps in lower layers as needed. 

Claude's Research mode help me unearth a great talk by Bret Victor called The Future of Programming from 2013, aka before ChatGPT. What speaks to me about this is how it was presented before LLMs, yet many concepts still apply. For example:

Learn tools, and use tools, but don't accept tools. Always distrust them; always be alert for alternative ways of thinking.

This is even more true for LLMs today! Then, in his closing remarks he says, "The most dangerous thought you can have as a creative person is to think you know what you're doing," because you stop being open and receptive to new ways of thinking and doing things, much like how original programmers shunned FORTRAN because they were comfortable programming in binary.

There's a reason people are getting excited, and it's not just tech shareholders. I'm publishing cool Chrome extensions, building newsletter subscription managers, and yes, vibe coding homework games for my kids. I'm learning so much because I'm able to do so much. I haven't had this much fun with computers since I was a software engineering intern in college. 

Hey @mattsayar.com ! This is good shit! Thanks! mattsayar.com/simple-wikic... #Wikipedia

[image or embed]

— Tara Calishain (@researchbuzz.bsky.social) July 8, 2025 at 2:44 AM

And if nothing else, it's a good time to be in cybersecurity.