• peoplebeproblems@midwest.social
    link
    fedilink
    English
    arrow-up
    7
    arrow-down
    1
    ·
    1 day ago

    Man this is just another great example of why I think software is essentially magic.

    At the root of it, the hardware, it’s magic smoke. It’s all based on magic from that point up - because the layer below the one you are using “works because it does.”

    • Redkey@programming.dev
      link
      fedilink
      arrow-up
      1
      ·
      6 hours ago

      I think it depends a lot on a person’s individual knowledge. If you keep studying far enough away from your main area of expertise, there’ll still be some point where you stop and have to blindly accept that something “just works”, but it will no longer feel like that’s what your main field is based upon.

      Imagine a chef. You can be an OK chef just by memorizing facts and getting a “feel” for how recipes work. Many chefs study chemistry to better understand how various cooking/baking processes work. A few might even get into the physics underlying the chemical reactions just to satisfy curiosity. But you don’t need to keep going into subatomic particles to have lost the feeling that cooking is based on mysterious unknowns.

      For my personal interest, I’ve learned about compilers, machine code, microcode and CPU design, down to transistor-based logic. Most of this isn’t directly applicable to modern programming, and my knowledge still ends at a certain point, but programming itself no longer feels like it’s built on a mystery…

      I don’t recommend that every programmer go to this extreme, but we don’t have to feel that our work is based on “magic smoke” if we really don’t want to.

    • TheOakTree@lemm.ee
      link
      fedilink
      arrow-up
      8
      ·
      1 day ago

      If writing software makes you some sort of magician then writing in assembly should surely mean you are a cleric or warlock.

      • vivendi@programming.dev
        link
        fedilink
        English
        arrow-up
        5
        ·
        1 day ago

        I designed microcontrollers and wrote assembly for them

        Now I’m just a regular software dudebro

        What class do I get?

      • peoplebeproblems@midwest.social
        link
        fedilink
        English
        arrow-up
        2
        ·
        1 day ago

        I havent worked with assembly or any firmware in 10+ years, but from memory, I think it’s more like being a Witch Doctor. You got primitive things and no idea what they do, but the specific patterns and dances make things happen.