← Back to context

Comment by fhd2

5 days ago

Users typically don't read code, developers (of the software) do.

If it's not worth reading something where the writer didn't take the time to write it, by extension that means nobody read the code.

Which means nobody understands it, beyond the external behaviour they've tested.

I'd have some issues with using such software, at least where reliability matters. Blackbox testing only gets you so far.

But I guess as opposed to other types of writing, developers _do_ read generated code. At least as soon as something goes wrong.

Developers do not in fact tend to read all the software they use. I have never once looked at the code for jq, nor would I ever want to (the worst thing I could learn about that contraption is that the code is beautiful, and then live out the rest of my days conflicted about my feelings about it). This "developers read code" thing is just special pleading.

  • You're a user of jq in the sense of the comment you're replying to, not a developer. The developer is the developer _of jq_, not developers in general.

    • Yes, that's exactly how I meant it. I might _rarely_ peruse some code if I'm really curious about it, but by and large I just trust the developers of the software I use and don't really care how it works. I care about what it does.

      7 replies →

  • But you read your coworkers PRs. I decided this week I wouldn't read/correct the AIgen doc and unit tests from 3 of my coworkers today, because else I would never be able to work. They produce twice as much poor output in 10 time the number of line change, that's too much.

    • Right, I'm not arguing developers don't read their own code or their teammates code or anything that merges to main in a repo they're responsible for. Just that the "it's only worth reading if someone took the time to actually write it" objection doesn't meaningfully apply to code in Show HN's --- there's no expectation that code gets read at all. That's why moderation is so at pains to ensure there's some way people can play with whatever it is being shown ("sign up pages can't be Show HN's").

Key part is *where reliability matters*, there are not that many cases where it matters.

We tell stories of Therac 25 but 90% of software out there doesn’t kill people. Annoys people and wastes time yes, but reliability doesn’t matter as much.

E-mail, internet and networking, operations on floating point numbers are only kind of somewhat reliable. No one is saying they will not use email because it might not be delivered.

  • 10% is still quite a lot!

    Reliability matters in lots of areas that aren't war. Ignoring obvious ones like medicine/healthcare and driving, I want my banking app to be reliable. If they charge me $100 instead of $1 because their LLM didn't realize their currency was stored in floating point dollars and not cents, then I may not die but I'd be pretty upset!

    • I was writing about Therac 25 that’s not war that’s medical equipment and code written by a human that killed people. Without LLM.

  • << 90% of software out there doesn’t kill people.

    As we give more and more autonomy to agents, that % may change. Just yesterday I was looking at hexapods and the first thing it tells you ( with a disclaimer its for competitions only ) that it has a lot of space for weapon install. I had to briefly look at the website to make sure I did not accidentally click on some satirical link.

    • Main point is that there is many more lines of code of CRUD business apps running on AWS and instances of applications than even non-autonomous car software even though we do have lots of cars.