• lobut@lemmy.ca
    link
    fedilink
    arrow-up
    140
    arrow-down
    1
    ·
    1 year ago

    I remember when I was working with .NET and I saw some web service code and I saw there was no try catches. They didn’t have a global catch in the asax either or anything. I just wrapped each call into a try catch and log.

    I got the same treatment where my manager wanted to know what happened with the increase in errors. I told him what I did. My manager got another developer to go through my commits regardless. I was a bit upset at the lack of trust.

    • MotoAsh@lemmy.world
      link
      fedilink
      arrow-up
      48
      arrow-down
      1
      ·
      1 year ago

      I mean, that ‘could’ be a straight up wrong thing to do if some of the calls were expecting errors to be able to escape. Yea, it’d be super weird and I don’t know if .NET would marshall them anywhere, but in some systems, that sort of, “obvious” fix could break shit. Sure, it’d be something doing something weird and kinda’ dumb, but … don’t we see “weird and dumb” all the time??

      • lobut@lemmy.ca
        link
        fedilink
        arrow-up
        40
        ·
        1 year ago

        oh yeah I just logged and rethrew, so it shouldn’t have had any behavior change, but I could have broken something I make mistakes all the time.

        The errors we were seeing in logs were like logic or application errors that we just didn’t see before. My changes really shouldn’t have caused.

        • ThePuy@feddit.nl
          link
          fedilink
          arrow-up
          18
          ·
          1 year ago

          I think that was the right approach, then again didn’t you have through a pull request or at least a code review? Knowing that would give raise to so many “errors” you should have had some sort of communication beforehand.

          I don’t blame you, more the workflow and ironically the manager

          • lobut@lemmy.ca
            link
            fedilink
            arrow-up
            10
            ·
            1 year ago

            Oh that was like years ago! Probably SVN, we on-boarded Git a little while after.

            No pull requests, you just manually merged back then. It’s definitely a workflow improvement we adopted later and we as a company and as an industry have gotten better.

            lol, the thing was just that my manager asked me what I did and I told him. Him getting another dev to “fact-check” me after is what bothered me a bit. I am usually the type of look into issues rather than brush them off and I am the first to confess to a screw up. Which is why I was irked.

    • magikmw@lemm.ee
      link
      fedilink
      arrow-up
      24
      ·
      1 year ago

      A manager that can’t read a simple try catch commit? Why am I surprised.

        • ursakhiin@beehaw.org
          link
          fedilink
          arrow-up
          11
          ·
          1 year ago

          This is a massive assumption from the story that was provided. We don’t know that they didn’t discuss with the team and an explanation of “I added a log to errors that were already happening” shouldn’t result in lack of trust from the manager.

          Reactive managers like that are a big problem in the industry.

    • dark_stang@beehaw.org
      link
      fedilink
      English
      arrow-up
      9
      ·
      1 year ago

      I joined a team years ago where everyone would catch exceptions then throw a different exception in the catch, swallowing the original. Sometimes these were nested many layers. Troubleshooting was a nightmare.

      I spent a week deleting all of them and told everybody that “try” was now a forbidden word outside of entry points.

      • lobut@lemmy.ca
        link
        fedilink
        arrow-up
        5
        ·
        1 year ago

        I remember doing that as a junior because everyone in our codebase did it!

        My new team lead came in and asked me why. I said it’s to reformat it due to the layer it was in. He said “…and what did you really accomplish with that?” All we did was bury our real error really well. It made me think about these things and to question convention more

  • hesusingthespiritbomb@lemmy.world
    link
    fedilink
    arrow-up
    84
    arrow-down
    12
    ·
    1 year ago

    Changing the error level in the build config without telling everyone and then making a hyperbolic passive aggressive comic when the senior admonishes you for doing so ?

    I’m gonna guess 1 YoE, second job out of college. Enough experience to know what they’re doing, but not enough to know when to do it.

    • bouh@lemmy.world
      link
      fedilink
      arrow-up
      60
      ·
      1 year ago

      It’s the delusion stage, when you think companies are places where you do professional work. Then you learn no one cares about properly doing your job. In fact, they’d rather you do not.

      • Pringles@lemm.ee
        link
        fedilink
        arrow-up
        15
        ·
        1 year ago

        Ah, that hits close to home. I have spent a lot of time and energy to get my direct bosses onboard with following best practices and doing things right from the start. To their credit, they got onboard with it and are pushing that message themselves now. Of course, the board doesn’t care about that and just jams random projects with strict deadlines without any thoughts given to the IT aspects of it up our asses, but our head of IT has apparently grown a spine and started pushing back, with some moderate success.

        The MO of my company has for years been: do a POC and then as soon as it works, push that POC in production. I’m still cleaning up the mess of idiotic shit like that from 15 years ago.

        • baltakatei@sopuli.xyz
          link
          fedilink
          arrow-up
          3
          ·
          1 year ago

          Ultimately, the quality of your work is a function of you and your resources. Corruption and miscommunication plague all management systems. Corrupt management siphons resources away from otherwise good work. Government bureaucracy is another layer of management like any other. Customers are not just consumers but working people like you.

          Hang in there.

    • ThePuy@feddit.nl
      link
      fedilink
      arrow-up
      13
      arrow-down
      1
      ·
      1 year ago

      Tbh the fact that they were even ABLE to push something like that without anyone noticing is a red flag for the work environment and workflow.

    • lukas@lemmy.haigner.me
      link
      fedilink
      arrow-up
      6
      arrow-down
      1
      ·
      edit-2
      1 year ago

      I worked on software that’s roughly as bug-free as a living bug. Intended behavior crashed the software. The master branch was broken, no way to compile the software without local changes. Devs hunted down suppressed exceptions to find out why everything crashes and burns on a daily basis. Unit tests are in the backlog, we’ll get around to it eventually.

      Code reviews are ask whoever is available to approve your changes without looking at the code. Most seniors abused suppressed exceptions to use the Java Streams API, no proper technical justification. So my first official task was to unsuppress all exceptions. This caught many seniors off-guard, but made crashes infinitely easier to diagnose.

      I would’ve done that even if it wasn’t my task. Shotgun debugging is hell. I don’t want to learn which component is most likely to fail silently due to retarded suppressed exceptions. Do your job properly ffs. Don’t shoot others in the foot. Don’t shoot yourself in the foot. You have absolutely no reason to shoot people’s feet. Stop it.

  • phorq@lemmy.ml
    link
    fedilink
    arrow-up
    61
    ·
    1 year ago

    I would normally put an if-statement before that to verify if IGNORANCE still equals BLISS

  • db2@sopuli.xyz
    link
    fedilink
    arrow-up
    56
    arrow-down
    1
    ·
    1 year ago

    The second panel would be “No, I enabled error reporting. Those errors belong to just you.”

    • cynar@lemmy.world
      link
      fedilink
      English
      arrow-up
      50
      arrow-down
      1
      ·
      1 year ago

      “But we can’t ship your computer!” and so Docker was born.

      • MNByChoice
        link
        fedilink
        arrow-up
        19
        ·
        1 year ago

        No, we cannot just put every random library on the server. Please stick to the stable ones the team picked, not random ones you just heard about and wanted to try in production.

        Docker enters the chat: Now you can!

  • Digital Mark@lemmy.ml
    link
    fedilink
    English
    arrow-up
    29
    arrow-down
    1
    ·
    1 year ago

    “My project” doesn’t exist in any team. It’s everyone’s project. A manager needs to have a long conversation with Pink Pants.

    If you build your project at anything but highest error level, clang -Wall etc., you’re letting errors in, relying at best on coincidence to work the way you think it does.

    Commit it and don’t revert it!