← Back to context

Comment by doug_durham

1 day ago

You should look at other engineering disciplines. How many highway over passes have unique “chef quality” designs? Very few. Most engineering is commodity replications of existing designs. The exact same thing applies to software engineering. Most of us engineers are replicating designs that came earlier. LLMs are good at generating the rote designs that make up the bulk of software by volume. Who benefit from an artisanal REST interface? The best practices were codified over a decade ago.

> How many highway over passes have unique “chef quality” designs?

Have you ever built a highway overpass? That kind of engineering is complex and interdisciplinary. You need to carry out extensive traffic pattern analysis and soil composition testing to even know where it should go.

We're at a point where we've already automated all the simple stuff. If you want a website, you don't type out html tags. You use Squarespace or Wordpress or whatever. If you need a backend, you use Airtable. We already spend most of our time on the tricky stuff. Sure, it's nice that LLMs can smooth the rough edges of workflows that nobody's bothered to refine yet, but the software commodities of the world have already been commodified.

Just like cooking in the middle ages. As the kitchen, hygiene, etc. got better, so did the chefs and so did the food.

This is just a transition.

re-Rest API, you're right. But again, we use roombas to vacuum when the floor layout is friendly to them. Not all rooms can be vacuumed by roombas. Simple Rest api can be emitted one shot from an LLM and there is no room for interpretation. But ask a future LLM to make a new kind of social network and you'll end up with a mash up of the existing ones.

Same thing, you and I won't use a manual screwdriver when we have 100 screws to get in, and we own an electric drill.

That didn't reinvent screws nor the assembly of complex items.

I'm keeping positive in the sense that LLMs will enable us to do more, and to learn faster.

The sad part about vibe coding is you learn very little. And to live is to learn.

You'll notice people vibecoding all day become less and less attached to the product they work on. That's because they've given away the dopamine hits of the many "ha-ha" moments that come from programming. They'll lose interest. They won't learn anymore and die off (career wise).

So, businesses that put LLM first will slowly lose talent over time, and business that put developers first will thrive.

It's just a transition. A fast one that hits us like a wall, and it's confusing, but software for humans will be better made by humans.

I've been programming since the 80s. The level of complexity today is bat shit insane. I welcome the LLM help in managing 3 code bases of 3 languages spread across different architectures (my job) to keep sane!

There is a part of this that is true. But when you get the nuanced parts of every "replicated design" or need the tweaks or what the AI gave you is just wrong, that deteriorates quality.

For many tasks it is ok, for others it is just a NO.

For software maintenance and evolution I think it won't cut it.

The same way a Wordpress website can do a set of useful things. But when you need something specific, you just drop to programming.

You can have your e-commerce web. But you cannot ask it to give you a "pipeline excution as fast as possible for calculating and solving math for engineering task X". That needs SIMD, parallelization, understanding the niche use you need, etc. which probably most people do not do all the time and requires specific knowledge.