This is something I’ve been wondering about for a long time. Programming is an activity that makes you face your own fallibility all the time. You write some code, compile it or run it, and then 80% of the time, it doesn’t work exactly the way you imagined. There’s an error message, or it just behaves incorrectly. Then you need to iterate on it and fix the issues until you get the desired result, and even then it’s subtly wrong, and causes an outage at 3am on Sunday.

I thought this experience would teach programmers to be the humblest people in the world.

I can’t believe how wrong I was. Programmers can be the most arrogant dickheads you will ever meet. Why is that?

  • loklan
    link
    fedilink
    91 year ago

    Part of it is also “engineer brain”, where you see problems in terms of a rigid system of rules and forget that most problems in real life outside of engineering depend on rules and systems but also human beings. Unlike a structural member in a bridge or a piece of code, human beings are weird, proud, scared, emotional and smart enough to get out of following rules when they don’t want to.

    • zalack
      link
      fedilink
      8
      edit-2
      1 year ago

      The dirty secret is that many problems inside of engineering are that way too. There’s a million equally valid solutions to any given problem and the one that gets chosen is all human factors.

      Like: Greenfield REST CRUD App. What language do you choose?

      Sure, you can make a million technical arguments for any given language, but there’s no real right choice. I’d choose Elixir because I like Phoenix/Ecto for that particular problem. I’m likely in the minority. The answer for most apps will be more borne of social politics than engineering.

      • loklan
        link
        fedilink
        41 year ago

        “we should use X, it’s obviously the best”
        “but nobody here knows how to use X except you”

        At which point the terminally engineer-brained will short circuit and throw a tantrum, because they are used to information just flowing from one data structure to another with the right tweaking, but human brains and education don’t work that way.