• Semi-Hemi-Demigod@kbin.social
    link
    fedilink
    arrow-up
    51
    ·
    1 year ago

    When I can get in the zone, programming gives me the same feeling as playing a game like Factorio or Civilization. My thoughts get faster and faster, I lose complete track of time, and sometimes even leave my body.

    When I finally stop my brain is going a thousand miles an hour and no matter how late it is I won’t be able to get to sleep for a couple hours.

    It’s beautiful and terrible and exactly why I have the job I do.

  • Sigmatics@lemmy.ca
    link
    fedilink
    arrow-up
    37
    ·
    1 year ago

    I once collaborated with an exceptionally talented programmer who seemed so engrossed in his addiction that he would invent challenges where there were none, presumably to make his work more engaging and bearable. However, this often led to incomplete projects because once the stimulating aspects were finished, he struggled to find the motivation to continue. Clearly, this behavior was extreme and detrimental.

    I think a lot of devs can relate to that

    • purpleprophy@feddit.uk
      link
      fedilink
      English
      arrow-up
      9
      ·
      1 year ago

      Yesssssss. I just got done splitting up a 3000-line mess of React code into a handful of simple, reusable components. Better than sex.

      • fraydabson@beehaw.org
        link
        fedilink
        arrow-up
        4
        ·
        1 year ago

        I’m a total noob but I learned how and refactored my python project I’m doing at work. It takes time but it is very rewarding to have clean code lol

    • Solemarc@lemmy.world
      link
      fedilink
      arrow-up
      7
      ·
      edit-2
      1 year ago

      My brain goblin is a big fan of performance. Recently I reviewed a teammate’s code. It was a small 100ish line PR and he calls the same function twice in a row with a tiny variation. My brain goblin went “you could consolidate these into one call”, “since it’s only one call you could inline it”.

      A couple hours later when he came to ask me what I’m smoking I realised my proposed solution had more LoC and was more complex to read. If we needed better performance, step 1 should’ve been to offload this task to an API that wasn’t made with python. Not to mention the next thing this API does is string manipulation and then write to file.

  • Hammerheart@programming.dev
    link
    fedilink
    arrow-up
    13
    ·
    edit-2
    1 year ago

    this response is based on the few paragraphs available to non medium members

    The second paragraph mirrors my experience with coding to a tee. I may have forgotten to turn off the oven while i was absorbed in Pycharm at least once, and ive certainly given a triumphany “fuck yea” with a raised fist worthy of a freeze frame ending to an '80s film upon succesfully accomplishing a task.

    During a recent difficult time in my life, learning to code was the only activity i found that gave me substantial relief from the stress.

  • jeffhykin@lemm.ee
    link
    fedilink
    arrow-up
    12
    ·
    1 year ago

    First 1/3rd is a bit of fluff but after that, good article. Especially the last 1/3rd.

  • Ben Matthews@sopuli.xyz
    link
    fedilink
    arrow-up
    7
    ·
    1 year ago

    Too true.
    I still remember when java5 came out, many new features, great potential for a massive refactoring of my interactive climate model. Within that, I had an idea called “parallel worlds” for comparing scenarios, whereby for efficiency data was shared for parts of the system, and split across parts that varied as user adjusted parameters. So I pulled apart the whole codebase, and joined it back together again… - about two years later, by which time colleagues had given up interest.
    [ story simplified to relate to point of OP - not only task in two years! ].
    Now I develop a derivative climate system model in scala, but evidently it’s more interesting to develop some new complex part of the science code, than fix a graphical interface for beginners. But moods vary - some days lacking energy for refactoring, could be satisfied ticking off a few small tasks in a todo list. Yet after some time, brain craving for another big new complex idea…

  • ryan@the.coolest.zone
    link
    fedilink
    arrow-up
    3
    ·
    edit-2
    1 year ago

    @ISometimesAdmin@the.coolest.zone Let me know if you need rehab.

    But seriously… yeah, I get it. Especially this part about the workplace:

    Nevertheless, [addicted programmers] can also pose significant risks, especially because they frequently deviate from the planned course. They follow their own agenda, introducing challenges where none were necessary, or dedicating hours to minor, tangential aspects of a project. In the process, they diverge from the project plan, programming what they believe is necessary rather than what the project itself requires.

    I have been that person before, and now I’m in a position where I have to keep those folks on a tight leash and remind them “our goal is to deliver a product right now, and we can enhance it in future sprints. Let’s just focus on what our primary goal was right now.” It’s easy to fall down rabbit holes, and that’s where having proper planning and a ticketing system to backlog and prioritize future enhancements is so critical.

  • YoLaTengo@lemmy.world
    link
    fedilink
    arrow-up
    2
    arrow-down
    1
    ·
    1 year ago

    Damn I need to learn to code and see if I can get addicted to this to curb my alcoholism