Live data from Hacker News

When I reject AI code even if it works

vinibrasil.com

171–180 of 184 posts

Re: When I reject AI code even if it works

#172
post #50

Earlier quoted context omitted.

The problem I have with this kind of approach is 1) it emphasizes scaling up a much as possible, which I don't believe is necessarily the most valuable thing, and 2) I really don't want my job to be band aiding agent problems, because it's like herding cats and there will never be an end to it. I'd rather just...get hands on and be involved in the code I am working to create.

Kinda fascinating watching a fairly reasonable response get downvoted. The AI psychosis really is catching... Incidentally I also don't understand the drive to scale up. Show me a successful tech company and I'll show you a company that won, not by delivering code the fastest, but by delivering the right product with the right features at the right time. Hell, Anthropic itself is the perfect example: they're doing we…

Thanks mate, I think you hit it on the head: the hardest problems in tech were never really tech problems. They're often people and market problems, and throwing more agents at the wall isn't going to magically solve them.

Re: When I reject AI code even if it works

#173
post #125

Earlier quoted context omitted.

That's cool. Could you share some concrete examples of your successes?

One I currently working on (privately) is ecadforge.app The last ones, I worked on in Industry are retail7 apps, Migros Self scanning client, EDEKA, LIDL and so on customer facing apps. My private interest is more in electronics.

Ah interesting. We are in very different domains haha. I had to search a lot of terms.

Thanks for sharing!

Re: When I reject AI code even if it works

#174
post #170

Titles like these make me always point out the obvious: A working state is the absolute minimum requirement for any code to be merged, isn't it? ...imagine to merge something even though you know that's not working. Besides, this post has nothing specific to code produced by an LLM, and placing AI in the stated reasons feels completely arbitrary, or is rather a fallacy of our times: - I reject [AI] code when I can’t…

I’ve had multiple people say “you don’t work on code anymore, that’s for the AI. You work a level of abstraction above that. As long as you prove it works through testing, the code doesn’t matter anymore. It’s like looking at the assembly the compiler spits out now - who cares?” These are the people who spit out an incredible volume of code with AI, to the point reviews simply can’t keep up. The last person who said…

But if the output matches the duck typing test, does it actually matter what's inside the black box of code?

If you're given two embedded devices and both pass the same testing, how would you tell which one was 100% AI code and which was beautifully handcrafted line by line?

Re: When I reject AI code even if it works

#175

The bottleneck when using a "faster keyboard" is understanding. We have a tool for this in compsci. Not having to fully understand something in order to successfully exploit it is a staple of computer science; we use abstractions to help us reason at a higher level. You don't necessarily always have to understand the nuance involved in selecting a hash function just to put and get some items in a hash map. Specifical…

Visualisation tooling IMO is the way to reason with this.

You don't look at the code, but use tooling to create a chart of the calls, data models etc. Then you can look at that and see the complexity.

...and we already had these tools in the early 2000s, when (can't remember which) no-code fad was running about. You know the ones where you just draw the boxes and lines and poof the code is generated =) There were also tools that did the reverse.

Re: When I reject AI code even if it works

#176

I think a particular failing with developers embracing AI is fighting the sunk cost fallacy. While you might not have spent as much time putting together a non-working solution, you still did spend time working with the agent to slap together a non-working solution. Being able to step back and say "this was a failure and we need to discard the day's work and start over" is still hard with LLMs.

If I spent half a day asking an agent to do something and it's a "non-working solution". I can just throw it away. I have sunk close to zero cost in it. I have no emotional attachment to the code.

It's like if I 3D-printed something I haven't modelled myself and the print goes wonky. I don't spend days trying to glue and file it back together. I chuck it in the bin and start a new one.

But if I had handcrafted the same item over multiple days, of course I'd try to salvage it - because there was a sunk cost of me spending time doing it.

Re: When I reject AI code even if it works

#177
post #170

Earlier quoted context omitted.

I’ve had multiple people say “you don’t work on code anymore, that’s for the AI. You work a level of abstraction above that. As long as you prove it works through testing, the code doesn’t matter anymore. It’s like looking at the assembly the compiler spits out now - who cares?” These are the people who spit out an incredible volume of code with AI, to the point reviews simply can’t keep up. The last person who said…

But if the output matches the duck typing test, does it actually matter what's inside the black box of code? If you're given two embedded devices and both pass the same testing, how would you tell which one was 100% AI code and which was beautifully handcrafted line by line?

Most embedded code is security / safety critical, so it gets looked at by auditors. So, then.

Also, when something invariably doesn’t work (maybe I told Claude “delay 1 sec after each swing of the axe the robot makes if the proximity sensor trips to avoid the puppy that walks across the ax’s path once every month”, and meant to type “2 sec”), I still have to go down to the level of the code sometimes. I’m sure the counter argument is “well then that just means your testing wasn’t good enough”. Sure, but I’ve never seen any project with hardware in the loop where the testing was good enough 100% of the time. Sometimes it’s hard to test once in a month type events in a regression test suite.

FWIW I hover around 80-90% code AI written these days. I still look at every line of code it makes.

Re: When I reject AI code even if it works

#178
post #177

Earlier quoted context omitted.

But if the output matches the duck typing test, does it actually matter what's inside the black box of code? If you're given two embedded devices and both pass the same testing, how would you tell which one was 100% AI code and which was beautifully handcrafted line by line?

Most embedded code is security / safety critical, so it gets looked at by auditors. So, then. Also, when something invariably doesn’t work (maybe I told Claude “delay 1 sec after each swing of the axe the robot makes if the proximity sensor trips to avoid the puppy that walks across the ax’s path once every month”, and meant to type “2 sec”), I still have to go down to the level of the code sometimes. I’m sure the co…

Even software related projects don't have 100% test coverage.

No amount of reading code or auditing or testing gets you 100% bug free solutions. It's possible, but nobody outside of maybe NASA will foot the bill for that.

My point is that why does it matter who or what wrote the code if errors are inevitable anyway? You plan what you do when you encounter one and limit the blast radius. If you find a process that can cut out a category of bugs, you implement it when you encounter it.

Why do we allow human written code to have more errors than AI generated code? Or is it just that both create different type of errors?

Post reply on HN