• Ghoelian@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    58
    ·
    1 day ago

    Even if you’re an actual software dev, it’s still pretty much impossible to guess how much work something is without knowing the codebase intimately.

    • shoo@lemmy.world
      link
      fedilink
      English
      arrow-up
      5
      ·
      edit-2
      16 hours ago

      When a dev with game dev experience says something should be easy to fix, it’s under the assumption of a reasonable code base. Most games are built off of common engines and you can sometimes infer how things are likely organized if you track how bugs are introduced, how objects interact, how things are loaded, etc…

      When something is a 1 day bugfix under ideal conditions, saying it will take 6+ months is admitting one of:

      • The codebase is fucked
      • All resources are going to new features
      • Something external is slowing it down (palworld lawsuit, company sale, C-suite politics, etc…)
      • Your current dev team is sub par

      Not that any of those is completely undefendable or pure malpractice, but saying it “can’t” be done or blaming complexity is often a cop out.

      • theblips@lemm.ee
        link
        fedilink
        English
        arrow-up
        1
        ·
        42 minutes ago

        The correlation between code quality and game quality is almost negative. When you’re doing groundbreaking stuff or going for your own artistic vision it’s tough to code well, even more so when you hit a jackpot and have to expand quickly (e.g. League spaghetti, Palworld)

      • kattfisk@lemmy.dbzer0.com
        link
        fedilink
        English
        arrow-up
        1
        ·
        3 hours ago

        In the real world there is no entirely reasonable code base. There’s always going to be some aspects of it that are kind of shit, because you intended to do X but then had to change to doing Y, and you have not had time or sufficient reason to properly rewrite everything to reflect that.

        We tend to underestimate how long things will take, precisely because when we imagine someone doing them we think of the ideal case, where everything is reasonable and goes well. Which is pretty much guaranteed to not be the case whenever you do anything complex.

      • DireTech@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        3
        ·
        18 hours ago

        Can’t be done is usually shorthand for the cost massively outweighs the benefits. No different from remodeling a building. Like coding, literally anything is theoretically possible but sometimes you’d have to redo so much existing work it’s never going to be worth it.

    • mriswith@lemmy.world
      link
      fedilink
      English
      arrow-up
      12
      ·
      1 day ago

      Absolutely, it’s impossible to know how much. But it’s a lot easier to grasp that it’s rarely just “changing a few lines” when it comes to these types of situations.

      Specially since many programmers have encountered clients, managers, etc. who think it’s that simple as well.

      • fennesz12@feddit.dk
        link
        fedilink
        English
        arrow-up
        9
        ·
        20 hours ago

        My favorite one is “Just add multiplayer”.

        Sure. I’ll just go right ahead and toggle it in the engine. Why didn’t I think of that?

      • Cenzorrll@lemmy.world
        link
        fedilink
        English
        arrow-up
        4
        arrow-down
        2
        ·
        22 hours ago

        You did it twice, so I’ll be the grammar police:

        Especially = particularly

        Specially = for a specific purpose

    • billwashere@lemmy.world
      link
      fedilink
      English
      arrow-up
      4
      ·
      23 hours ago

      And even then it’s sometimes impossible because how much can you keep in your head at once. Everybody specializes on these large projects. I may have 30000 ft view of how things operate but getting down into specifics can be hard. I have some intimate knowledge of the learning management system we develop for, which is way less complex than most games, and there are always little gotchas when you make code or architecture changes.