Remix.run Logo
mattcollins 3 hours ago

On the other hand, AI coding tools make it relatively easy to set and apply policies that can help with this sort of thing.

I like to have something like the following in AGENTS.md:

## Guiding Principles - Optimise for long-term maintainability - KISS - YAGNI

musesum 2 hours ago | parent | next [-]

I wrote something similar in a Claude Code instructions.md: "minimize cyclomatic complexity" What happened next? It generated an 8 line wrapper function called only once from a different file. So, I told it to inline that logic in the caller. The result? One. Line. Of. Code.

So, I asked it to modify its instructions.md file to not repeat that mistake. The result was the new line "Avoid single-use wrapper functions; inline logic at the call site unless reused"

instruction.md is the new intern.

Cthulhu_ 16 minutes ago | parent [-]

It reminds me a lot of people who take Code Complete too seriously. "Common sense" is not an objective or universal statement unfortunately - plus, speaking for myself, what I consider "common sense" can change on the daily, which is why I can't be trusted adding features to my own codebase long term <_<.

shafyy 3 hours ago | parent | prev | next [-]

Not sure if you're kidding or not, but to write great maintable code, you need a lot of understanding that a LLM just doesn't have, like history, business context, company culture etc. Also, I doubt that in it's training data it has a lot of good examples of great maintainable code to pull from.

yudhiyudhi 3 hours ago | parent | next [-]

Neither do most humans writing such code, i have seen llms generate better code than 90% of coders I have seen in the last 20 years

shafyy an hour ago | parent | next [-]

Please let's stop with the "but some humans also suck at this so it's ok if LLMs also suck at it" argument. It doesn't add anything to the discussion.

shimman 2 hours ago | parent | prev | next [-]

This says more about you and the people you work with. I find engineers that have been at the company for a while are quite invaluable when it comes to this information, it's not just knowing the how but the when + why that's critical as well.

Acting like people can't be good at their job is frankly dehumanizing and says a lot about your mindset with how you view other fellow devs.

forgetfreeman 2 hours ago | parent | prev [-]

Admitting you've spent two decades on a career stuck working in the kind of sweatshops that hire people who can't actually code isn't much of a flex, and certainly doesn't lend a whole lot of credence to your argument.

nhayfield 3 hours ago | parent | prev | next [-]

He isn't kidding. I have a directive to write the shortest, least complicated, readable business code and it makes a huge difference

kurthr 2 hours ago | parent [-]

Sometimes, as in the bilsbi's top level comment, the solution is to use a free tool/library/product that already exists. The solution is not always to write new code, but the agent will happily do it.

Maybe that's "the manager's job", but that's just passing the buck and getting a worse solution. Every level of management should be looking for the best solution.

whattheheckheck 3 hours ago | parent | prev [-]

"Be sure to remember software is a sociotechnical system and dont fall prey to the Mechanistic myth"

musesum an hour ago | parent | prev [-]

I wrote something similar in a Claude Code instructions.md: "minimize cyclomatic complexity" What happened next? It generated an 8 line wrapper function called only once from a different file. So, I told it to inline that logic in the caller. The result? One. Line. Of. Code.

So, I asked it to modify its instructions.md file to not repeat that mistake. The result was the new line "Avoid single-use wrapper functions; inline logic at the call site unless reused"

instructions.md is the new intern.

reedlaw an hour ago | parent [-]

Maybe a better way to handle "minimize cyclomatic complexity" would be to set an agent in a loop of code metrics, refactor, test and repeat.

musesum 39 minutes ago | parent [-]

Good idea. Am still a bit shy around token budget spend.