• Repple (she/her)@lemmy.world
    link
    fedilink
    English
    arrow-up
    41
    arrow-down
    2
    ·
    14 days ago

    This to me seems to be a very odd interpretation of the phrase “coding was never the hard part”. First, that doesn’t mean that it’s not hard, just not the hardest. Second, and more importantly, they jump to deciding what to build being the hard part as if those are the only two things?

    I have used a variation of this phrase (I usually say coding was never the bottleneck at work) but I’ve never even considered deciding what to build as to be what the bottleneck is.

    First, I should say by coding I mean taking a concrete design for a change and writing a single pass at implementation. Modern models to this extremely quickly with up to good performance depending on exactly what you ask them to do.

    The things that take up more time in software development just for engineers, leaving aside things that design and pms do.

    • Coming up with that concrete design for a change (humans may do this in many ways, one of which is writing the code without a plan and refining)
    • Architecting the system at all levels. This one is continuous and huge. A good architecture will easily adopt changes as they come, but you can never foresee all possibilities, and even if you could, there’s usually other people around you who can’t, which brings me to
    • Communicating the system design and coming to consensus about aspects of it. This is mostly applicable to teams and is the primary reason individuals can often outperform entire teams. It’s also one reason why throwing a second LLMs at a problem doesn’t solve it at twice the rate. You’ll never get linear scaling
    • Upkeep tasks: what needs to be replaced and fixed now, how do we best monitor and alarm to figure this out in the future.

    There are “what to build” aspects in here and many engineers also spend time on the overall what to build questions, but the way the article was talking about it seemed very high level.

    Coding isn’t easy, it’s hard. But it’s also not usually the bottleneck in software development.

    • Dultas@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      13 days ago

      For me it was trying to interpret vague business requirements. But I was a designer / coder. I tried to insulate the other programmers from that nonsense.

    • AnarchistArtificer@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      13 days ago

      I’m a mediocre hobby programmer, and for me, the hardest part is coming up with the concrete specifics of what to implement.

      I’m actually half decent now (for a hobbyist), but I remember that when I first moved from coding along with worked exercises in textbooks, to actually trying to solve real life problems, it got exponentially more difficult. The textbooks say “use this tool to achieve this goal”, and even if you’re bad at using that particular tool, you can put all your effort into doing it well. However when you’re having to make the bigger decisions for yourself, you have to choose what tool to use, and I found that super hard — especially when having to choose between an approach that I felt confident with that wasn’t quite the right tool for the job, and a new tool that was completely new to me (and if I am unfamiliar with a new approach, am I sure that it’s the right tool?).

      At one point, when I was deep in a personal project, I had a period of a few weeks where I had no reliable access to internet, and so I did most of my coding using paper and pen. It forced me to think more deeply about the implementation I was using, rather than just diving straight into the code

  • Treczoks@lemmy.world
    link
    fedilink
    English
    arrow-up
    14
    arrow-down
    5
    ·
    14 days ago

    “Code was never the hard part” is probably made up by someone who never had to program anything serious.

      • Treczoks@lemmy.world
        link
        fedilink
        English
        arrow-up
        4
        arrow-down
        2
        ·
        13 days ago

        An OS, a compiler, any complete application. Or at least significant parts of it. And I mean programming from A to Z: defining, detailing, implementing, verifying, documenting.

        • Victor@lemmy.world
          link
          fedilink
          English
          arrow-up
          2
          ·
          13 days ago

          any complete application

          An OS, a compiler

          Quite the hefty examples lmfao, holy hell. Guess all of us “regular” software engineers in the business are just plebs huh.

          • Treczoks@lemmy.world
            link
            fedilink
            English
            arrow-up
            3
            arrow-down
            1
            ·
            13 days ago

            I’ve wrote my first pre-emptive multitasking OS as a teenager. I also wrote my first compiler back then. I’ve worked on everything from industrial controllers to a Cray YMP. And I’ve forgotten more programming languages than most hacker kids can list. I consider myself as a seasoned programmer.

            • Victor@lemmy.world
              link
              fedilink
              English
              arrow-up
              3
              ·
              13 days ago

              Right, you’re a little more than a seasoned programmer, buddy. You are extraordinary.

              You can’t expect “an operating system” or “a compiler” to be the bar for “doing anything ‘serious’” 😂

  • it_depends_man@lemmy.world
    link
    fedilink
    English
    arrow-up
    6
    arrow-down
    1
    ·
    14 days ago

    Remember that story about the chalk mark engineer with Ford? Chalk mark 1$, knowing where to mark 1000$ ? Same with code. “Code” is easy. Knowing what to write, why and where, that’s the hard part. LLMs have somehow managed to automate the code part, without the abstraction, at least in an error proof way. I don’t think “coding isn’t that hard” is insulting, and I don’t use C++ because I think it’s hard. But it’s not because writing something is hard, it’s because writing precisely what is needed is hard.

    Anyway, this debate doesn’t matter, negotiate better, be active politically to ban stuff or not, complaining on the internet won’t do anyone any good. I know you’re emotionally invested in this, just… breathe and do something else? Idk. Also I’m not your enemy on this, so no need to attack me.

  • melsaskca@lemmy.ca
    link
    fedilink
    English
    arrow-up
    5
    ·
    13 days ago

    Code is integral. Everything they add to it, and build around it, is to support the code. Code is the God in the machine.

  • MasterBlaster@lemmy.world
    link
    fedilink
    English
    arrow-up
    3
    ·
    13 days ago

    How do we thrive?

    Accept that change happens. Be equal parts curious and critical about the new stuff.

    That is not the solution. One cannot thrive if one cannot be seen or has been discarded as a relic no matter how up to date that person is. They will never be granted the opportunity to thrive as they have before as an employee. Their only hope to thrive is if they (magically) gain all the skills and networks necessary to be an entrepreneur that can do it all themselves. Nearly a unicorn.

    Meantime while trying, they burn through what savings they have on the hope and dream of “being relevant again” and have about a 5% chance of success.

    Maybe the author is misunderstanding the gist of the original article. Regardless, he raises an obviously accurate assessment of those who hold the hiring power. When I was recently out of college learning my craft, it was a common sarcastic refrain of either, “What could be so hard about it, it’s all 1’s and 0’s” or “What’s taking so long - you’re just typing on a keyboard”.

    This has been a problem since long before I graduated from college (when classifieds called for 10 years experience on an IBM system that was released two years ago) (see, things don’t change so much - names and places, sure, but not much else). People who are in leadership positions, who think they’re better and smarter than most everybody else, frequently belittle those who do the grunt work, both physical and mental. It’s gotta be a corollary to dunning-kruger theory (or maybe an example of it).

  • UnfortunateShort@lemmy.world
    link
    fedilink
    English
    arrow-up
    5
    arrow-down
    6
    ·
    14 days ago

    I won’t miss writing code. In part because I still do when I feel like it, but also because most of the time it is extremely boring. A mere mean to a goal for which you probably have the path mapped out in your brain already. It is basically just busywork at that point.

    There are these moments where you need to squeeze out performance, where you change something about the UI or generally visuals and get a pleasing result, or where you discover a small tweak that collapses a lot of complexity you originally planned for - but that is, in my humble experience, not the norm in programming. The vast majority of code is boilerplate or stuff you have already written a thousand times in some variation. The more experience you have the worse it gets.

    I was ecstatic when I realized how good agents have gotten, realized how I could focus on design and architecture and with small corrections, get more than adequate software. Because for me personally, programming is the least fun part of software development. Most of the time that is. And you can hate it all you want, but programming is a skill worth nothing on its own now, and it will never be again. You can take solice in the fact that you can still do it for fun if you want to.