upvote
The funny thing is that if you never understand the codebase then you will keep thinking Claude is doing a great work delivering all this incredible software, when all it has done is created unnecessary tech debt.
reply
Which at some point the developers who actually still do know how to program are either going to have to clean up or in terminal cases rewrite.

In a way all we've done (currently) is drastically expand the amount of technical debt across the whole industry.

Should be profitable for the ones who can still actually program though and haven't let their skills atrophy by letting Claude do everything.

I don't deny there are use cases for LLM's I'm just don't buy the hype about them either.

As with all tools, you have to understand how to use them to get done what you need to get done without sticking the chisel through your hand.

reply
> A twenty line for loop. It overengineers most things.

Anecdote I like to tell.. I was working on a financial planning software, intentionally purely vibe coded as an experiment.

I eventually discovered AI had implemented seven duplicate copies of tax calculation functions. All of them different. All of them wrong. All of them giving different answers for same input.

Not even the most junior of newbie junior engineers would do something this crazy. But AI was happy to do it. It will solve the immediate problem, efficiently. Even if the most efficient solution is something ridiculous like this.

reply
I have also a weird story to tell that a human did and it is as crazy as this. It happen in 2019 so no LLMs at all.

A person that was hired as an expert in our startup spent more than one week full time working on implementing his solution to the problem we were having. I checked the code after one week to see the progress and was curious how they are implementing an already crazy sounding idea. I found that the whole week was spent re-implementing in python, python's built-in "float" function. That was it, the whole code was just that.

Our problem was related to financial services and their implementation of "float" was not even correct.

reply
They would not do it in the span of a day or a week. But I’ve definitely seen something like that happen over a period of multiple months.

The llm just allows to generate faster.

We can feel smug about that but all it means is that we need to be clearer on our requirements and preferences up front.

State that similar functions should be in one place and there should be only one. Today there has to be compelling reason why that function is different from others. Normalise the function name based on what it does. Why are there different ones?

Then there are all the other guard rails in place.

Better guidance from mentors, reviewers, and automated project tooling helps everyone. Juniors, seniors, and engineers.

reply
Which model though? I have similar anecdotes but all with older models. The jump in capabilities in the last 6 months has been substantial.
reply
I have literally been hearing that, over and over and over, since '22.

And whilst it is obvious things are growing... Saying that, sounds almost entirely like the person saying it cannot objectively look at the environment. If everything has changed in the last six months, why has the industry not radically changed to match it?

Everything really did change with the Pentium II. It did with 3dfx. It did with Damerau's taken on Levenshtein. Hell, everything changed with React. The AI leap with seq2seq completely revolutionised the entire industry. But... Its kid, the LLM? Really?

reply
For some definitions of efficiency.
reply
Oh and how is it any different than most software engineers?

How many times I heard ORM are bad only to recreate the same shit?

How many times I heard ORM had bad performance and see 1+n stuff everywhere?

How many times I have seen tight coupling in the name of DRY?

reply
Its different, in that when you teach that engineer, they either leave because now they hate you, or they grow. They change to meet the standards of a project, rather than inventing their own.

We don't get seniors, without juniors. I'd say more than half the job, is just... Learning. People grow.

reply
Exactly. People ask how we get seniors with juniors using llm. The answer is the same. Review the code. Analyse write down what is wrong. What you expect to have been better. Force every change to be documented and explained enough.
reply
I am former java enterprise dev, so yes I often code this way. Unit testing, decomposition... Some projects CI refuse to merge commits with 20 line loop and duplicated code...

But that is not a point. Claude can code tight compact loops, it just needs to be instructed to do so! If it does "enterprise code", it means it had no instructions about code style.

If your documentation, spec, agent.md does not have proper guidance on coding style... yet another red flag!

reply
> it just needs to be instructed to do so!

Considering how often it overrules, its own rules?

reply
100%

It is my pet peeve with Claude and why I don't prefer it for most stuff

(also the comment spam - but that's a all of them in a way or another)

reply