← Back to context

Comment by skydhash

4 hours ago

This is my oldest comment[0] on the AI tools subject back in December 2022

> Coding may be abstract, but execution of the resulting program is not. And results of the execution is driven by real world needs. Truth is that a human can invent things because it can pattern match across whole domains. You can say there is a mechanic solution to that, how can we do an algorithm that have the same result. AI cannot unless the algorithm was already created. I think the current state of AI is great for searching and creating starting point, but it can never get us to the finish line.

I've not seen anything since then that has changed my point of view. My job as a developer is always about creating pragmatic solutions for problems that exists outside of the computer world. I'm not attached to code and will gladly rewrite it if it's lacking or faulty. But the actual purpose is to get something that works well in the hand of the user. But the user's needs are not static, so I also create something that is flexible enough to be able to adapt it later when those needs changes.

So when I read comments that says they don't care about code, but also have no answer about how they will solve their user's problems or how will they modify the software to future changes, it seems so strange to me. Like is your belief backed by real world experience?

[0]: https://news.ycombinator.com/item?id=33873394

I am increasingly convinced that the AI skeptics that remain in the software industry have put very little time into experimenting with AI coding. It’s like listening to someone confidently assert that a plane could never travel faster than the speed of sound and providing evidence that seems compelling only until you have seen a supersonic jet.

As a software engineer, I prefer the scenario where AI is incompetent at writing effective software. But I don’t think that scenario describes the real world.

> AI cannot unless the algorithm was already created

We have documented cases of AI producing novel mathematical proofs. The narrative that AI can only regurgitate existing info has been pretty soundly disproven at this point. I would not consider it a good thing that your perspective is unchanging in the face of new information.

This sort of assertion is also lacking merit because most coding is not about novel algorithms. Most coding is in fact straightforward regurgitation of ideas and code a thousand other developers have already written. So even if this were all AI can possibly do, it could still be a significant improvement over manually coding the same uninteresting boilerplate and CRUD logic.

I think this is perhaps a big piece of the disconnect between your perspective and mine. When we talk about “the middle”, you focus on the bit of critical logic there while I am focusing on the vast amount of logic there that is deeply uninteresting. It’s kind of like the “premature optimization” thing. Put your mental energy where it matters.

> So when I read comments that says they don't care about code, but also have no answer about how they will solve their user's problems or how will they modify the software to future changes, it seems so strange to me. Like is your belief backed by real world experience?

This is a bizarre statement because we haven’t talked about a user’s problems. You’ve seemingly manufactured a scenario in your head where I have AI producing code for no purpose. It’s no wonder you can’t see how this makes sense, because it doesn’t.

  • > the AI skeptics that remain in the software industry have put very little time into experimenting with AI coding.

    Why does everyone assume that anyone that is slightly critical has no experience whatsoever with the thing they critic? That is very dismissive. As soon as you start working on something complex, the agent requires a lot of guidance from an expert. That's not what's being marketed.

    If someone told you they have a supersonic jet, but then you see a small Cessna. Would you take them at face value?

    > Most coding is in fact straightforward regurgitation of ideas and code a thousand other developers have already written.

    Which is why everyone has been using libraries and framework in the past decades. And why people goes to conferences and buy books. No one is keen to reinvent everything from scratch. If you think that we manually code everything that means you don't know anything about developer practice. Most of development is keeping a strong model of the software and tweak things here and there.

    > When we talk about “the middle”, you focus on the bit of critical logic there while I am focusing on the vast amount of logic there that is deeply uninteresting.

    Why is it uninteresting? It seems that the only people not interested in code are the ones that are not responsible for it when it's in production.

    > You’ve seemingly manufactured a scenario in your head where I have AI producing code for no purpose

    No, I'm asking how are you maintaining the code that you found uninteresting. Because all of it will be going in the software. What I've seen is a weird focus on Devex (you don't want to code uninteresting stuff) or HR (no need to hire expensive engineers), but not a peep about the users.