I had some cleaning up to do this morning so I tuned in to the Oxide and Friends podcast. I chose the episode "Are LLMs Insufficiently Lazy". I haven't finished the episode (or my cleaning) because it led to a post by Bryan Cantrill called "The peril of laziness lost" (quick and worth a read).
One sentence that really struck a chord with me in that post is: "Left unchecked, LLMs will make systems larger, not better". Oh how true that is!
I've been recently calling it "industrial programming". While writing this post I thought of calling it the "supersize era". I then thought of "McMansion Programs". If I were an LLM I'd use all of these abstractions interchangeably throughout this post and probably dash in a few more along the way.
We seem to be fully immersed in a moment in software where we need more "stuff". Burn more tokens. Write more lines of code. Ship more features. IPO for a trillion dollars. Who cares if it's better.
What we seem to be lacking in all of this is taste. A quip I learned from my older sister which I've repeated many times is "money can't buy taste". McMansions are the USA's greatest call to this saying. Humongous homes. Sloppily built. Filled with junk. Expensive to maintain. They give off the appearance of great wealth. But, take another look or use any of the janky hardware in the home and the shine will be gone.
The programs LLMs build tend to fall in this style. Just because we used a lot of tokens building something doesn't make it any good. With LLMs we can build first and think later (or not at all). We can create more features and new additions faster than we can understand our own code/product and certainly faster than our customers can make sense of it. Instead of refining the features we do have and carefully adding new ones we are able to implement every idea that comes into our head.
With the aid of LLMs we have to be more careful. Review our code more deeply before opening a PR. Take another pass at honing it. The first pass we make as humans isn't good enough. Likewise, the first pass the LLM makes isn't good enough. In 1983 Stephen Johnson and Brian Kernighan said "first make it work, then make it right, and, finally, make it fast". In the same year Butler Lampson said "Plan to throw one away". With an LLM, making a version and throwing it away is now easier. But, it is just as important as ever to throw (at least) one away.
Extending the McMansion metaphor a little further: A curious overlap between McMansion Programs and McMansion Homes is that they were both aided by a new technology. In the case of McMansions Homes it was the truss connector plate. If you're curious about that sort of thing this video goes into more details on it and the industrialization of home building. I hope our programs aren't doomed to the same soulless fate as many American suburbs.