Comment by voidhorse

Comment by voidhorse 2 days ago

3 replies

I completely agree that much of software engineering is not engineering, and building systems around LLMs is no better in this sense.

When the central component of your system is a black box that you cannot reason about, have no theory around, and have essentially no control over (a model update can completely change your system behavior) engineering is basically impossible from the start.

Practices like using autoscorers to try and constrain behaviors helps, but this doesn't make the enterprise any more engineering because of the black box problem. Traditional engineering disciplines are able to call themselves engineering only because they are built on sophisticated physical theories that give them a precise understanding of the behaviors of materials under specified conditions. No such precision is possible with LLMs, as far as I have seen.

The determinism of traditional computing isn't really relevant here and targets the wrong logical level. We engineer systems, not programs.

empath75 a day ago

This is completely backwards. Engineers built steam engines first through trial and error and then eventually the laws of thermodynamics were invented to explain how steam engines work.

Trial and error and fumbling around and creating rules of thumbs for systems you don’t entirely understand is the purest form of engineering.

  • voidhorse a day ago

    I would argue it's more correct to call that phase experimentation. I doubt the early manufacturers of steam machines would even call themselves engineers in a serious or precise sense. They were engineers in the sense of "builder of engine" as a specific object, but the term's meaning has evolved from that basic initial usage.

    A discipline becomes engineering when we achieve a level of understanding. such that we can be mathematically precise about it. Of course experimentation and trial and error are a fundamental part of that process, but there's a reason we have a word to distinguish processes which become more certain and precise thereafter and why we don't just call anything and everything engineering of some form.

    • graemefawcett a day ago

      I think it's still fair to call yourself an engineer while you're using a tool that might still be new. It doesn't change the principles of engineering just because you have a slightly different tool in your tool belt

      You're right that we're still learning how to use them properly. If someone's purely sitting in front of an all-you-can-eat vibe coding machine and trying to one-shot themselves into a fortune with their next startup, then absolutely, they don't deserve to call themselves an engineer.

      But just using AI as an assistive technology does not take away from your abilities as an engineer. Used properly, it can be a significant force multiplier