Live data from Hacker News

An AI coding agent, used to write code, needs to reduce your maintenance costs

jamesshore.com

101–110 of 126 posts

Re: An AI coding agent, used to write code, needs to reduce your maintenance costs

#102
post #4

Same with code reviews. I wonder if AI could make code reviews more presentable. for example, with human code reviews, developers learn quickly not to visually change code like reflowing code or comments, changing indent (where the tools can't suppress it), moving functions around or removing lines or other spurious changes. And don't refactor code needlessly. also, could break reviews up into two reviews - functiona…

First Agent I used: Do a proper code review of the changeset, it adds comments in my merge requests. Then the junior devs paste these into their IDEs and loop forever :-P

Re: An AI coding agent, used to write code, needs to reduce your maintenance costs

#103
maintenance cost on AI code isn't really uniform per line. most of it follows standard patterns, maybe easier to maintain than average human code. but the 5% where something went subtly wrong costs way more to fix because you can't retrace the reasoning, you just re-derive the whole thing from scratch. average looks fine but the tail kills you.

Re: An AI coding agent, used to write code, needs to reduce your maintenance costs

#104
R&D is always expensive and that is the phase we're in with AI tools. They will eventually reduce costs, but every company has to make an upfront investment in figuring out their own specific "hows". We'll get there, some faster than others.

Re: An AI coding agent, used to write code, needs to reduce your maintenance costs

#105
post #69

In my Dconf'24 talk "Software as investment" I proposed a basic framework based upon a value function (compositional) for each piece of software. This framework doesn't really need an update due to AI, apart from the (unrelated!) cost model being updated depending on how good AI is at maintenance. Apparently it would do 1.7x the number of bugs, but perhaps it fixes them faster too? I don't know. Seeing software as in…

> Seeing software as investment avoids speaking about "technical debt" by speaking about "value" People already see their efforts as an investment, but that doesn't stop Debt from accruing over time. There will always be parts in your software that could have been written better, and that's Debt.

No, debt isn't "parts of your software that could have been written better". Any part of your software can always be written better. Debt is the cost you have to pay monthly to keep your application working—it's the parts of your codebase that make it harder to work on new features.

Re: An AI coding agent, used to write code, needs to reduce your maintenance costs

#106
The math works for codebases that survive past year one but not so much for less mature ones, no?

I shipped a small Stripe storefront with Claude Code over the weekend. Three pages, four integrations, one database. At that size you can read every file before merging, and that's basically the lever. Shore's argument really bites when you can't.

The thing missing from his model, I think, is project shape. Bounded greenfield has a maintenance ceiling because the code itself does. A long-lived monolith with the agent extending it is where the math gets ugly.

Re: An AI coding agent, used to write code, needs to reduce your maintenance costs

#107
post #62

I really like this question: If you could wish for a codebase, which codebase would you wish for? If you think a second on that question, you’ll realize you probably not wishing for a super feature-rich one, but an easy to understand one, quite close to what you have now. One that is easily to maintain and extend, depending on the upcoming business challenges.

> an easy to understand one, quite close to what you have now

oh, you sweet summer child... I wish I had one of those

Re: An AI coding agent, used to write code, needs to reduce your maintenance costs

#108
post #69

In my Dconf'24 talk "Software as investment" I proposed a basic framework based upon a value function (compositional) for each piece of software. This framework doesn't really need an update due to AI, apart from the (unrelated!) cost model being updated depending on how good AI is at maintenance. Apparently it would do 1.7x the number of bugs, but perhaps it fixes them faster too? I don't know. Seeing software as in…

I did not see your talk but this summary somehow seems wrong.

I would say there are two types of software debt. Dead code/useless features not providing value, which is in my experience easy to excise and rarely really causes issues, and the badly written code, which is providing value.

The term software debt is usually used in the second case because you have to pay it for delivering new value to the product. The debt was introduced in the past when another value was being added and it was added in a way that increased coupling, reduced cohesion, etc. Let's just say that it was implemented badly, for many interpretations of badly.

Now, if I want to add this new value then that previous bad implementation is causing issues, because of unsolicited side effects, of difficult to reason about logic, etc. So, now, I have to pay the debt, by refactoring, or by changing the logic in tens of places (which further increases the debt).

Tech debt was never really about functionality that does not need to be there and is not providing value, because you seldom pay it, or it's relatively cheap to pay it. The problem is when you have to rework the old feature, still providing value and should continue to do so in the same manner, just to deliver this new value. That's the expensive tech debt.

Re: An AI coding agent, used to write code, needs to reduce your maintenance costs

#109
post #81

Earlier quoted context omitted.

> Code bases that you "work in" (maintain, etc) solve real world problems, and solving those problems should trump cleanliness every time Only if you value your time more than the users’ time and your fellow developer time. Code are run and read more than they are written. You may need to do some hacky coding, but they should be small in scope, surrounded by warning, and have a ticket filed for properly resolving the…

Outside of opensource developers do not suggest what code is written. Sales does. If the developers say something like "well this will take 3 weeks longer to do correctly". They'll be replaced by the code monkey that can turn a POC over to the customer in 3 days. Reality does not live up to our dreams.

You must have worked in some pretty dysfunctional organizations. Nobody just says "it will take 3 weeks longer to do correctly" - they'll say "if we skip X, then it will potentially result in Y; or we can do Z which will take a little longer but will not have this potential business risk".

You gotta use the language that folks speak in order to get your point across.

Post reply on HN