• panda_abyss@lemmy.ca
    link
    fedilink
    English
    arrow-up
    57
    ·
    23 hours ago

    I’ve been working at a small company where I own a lot of the code base.

    I got my boss to accept slower initial work that was more systemically designed, and now I can complete projects that would have taken weeks in a few days.

    The level of consistency and quality you get by building a proper foundation and doing things right has an insane payoff. And users notice too when they’re using products that work consistently and with low resources.

    • Log in | Sign up@lemmy.world
      link
      fedilink
      English
      arrow-up
      6
      ·
      edit-2
      9 hours ago

      (I write only internal tools and I’m a team of one. We have a whole department of people working on public and customer focused stuff.)

      My boss let me spend three months with absolutely no changes to functionality or UI, just to build a better, more configurable back end with a brand new config UI, partly due to necessity (a server constraint changed), otherwise I don’t think it would have ever got off the ground as a project. No changes to master for three months, which was absolutely unheard of.

      At times it was a bit demoralising to do so much work for so long with nothing to show for it, but I knew the new back end would bring useful extras and faster, robust changes.

      The backend config ui is still in its infancy, but my boss is sooo pleased with its effect. He is used to a turnaround for simple changes of between 1 and 10 days for the last few years (the lifetime of the project), but now he’s getting used to a reply saying I’ve pushed to live between 1 and 10 minutes.

      Brand new features still take time, but now that we really understand what it needs to do after the first few years, it was enormously helpful to structure the whole thing to be much more organised around real world demands and make it considerably more automatic.

      Feels food. Feels really good.

    • Telorand@reddthat.com
      link
      fedilink
      English
      arrow-up
      20
      ·
      22 hours ago

      This is one of the things that frustrates me about my current boss. He keeps talking about some future project that uses a new codebase we’re currently writing, at which point we’ll “clean it up and see what works and what doesn’t.” Meanwhile, he complains about my code and how it’s “too Pythonic,” what with my docstrings, functions for code reuse, and type hints.

      So I secretly maintain a second codebase with better documentation and optimization.

      • panda_abyss@lemmy.ca
        link
        fedilink
        English
        arrow-up
        9
        arrow-down
        1
        ·
        21 hours ago

        How can your code be too pythonic?

        Also type hints are the shit. Nothing better than hitting shift tab and getting completions and documentation.

        Even if you’re planning to migrate to a hypothetical new code base, getting a bunch of documented modules for free is a huge time saver.

        Also migrations fucking suck, you’re an idiot if you think that will solve your problems.