• PM_Your_Nudes_Please@lemmy.world
    link
    fedilink
    English
    arrow-up
    26
    ·
    edit-2
    2 months ago

    There is also the hilariously misguided belief that good coders do not produce bugs so there’s no need for debugging.

    Yeah, fuck this specifically. I’d rather have a good troubleshooter. I work in live events; I don’t care if an audio technician can run a concert and have it sounding wonderful under ideal conditions. I care if they can salvage a concert after the entire fucking rig stops working 5 minutes before the show starts. I judge techs almost solely on their ability to troubleshoot.

    Anyone can run a system that is already built, but a truly good technician can identify where a problem is and work to fix it. I’ve seen too many “good” technicians freeze up and panic at the first sign of trouble, which really just tells me they’re not as good as they say. When you have a show starting in 10 minutes and you have no audio, you can’t waste time with panic.

    • Aceticon@lemmy.world
      link
      fedilink
      English
      arrow-up
      5
      ·
      edit-2
      2 months ago

      Good programmers (and I don’t mean just at the coding level) make less bugs exactly because they want to avoid bug fixing as much as possible.

      They still have to do debugging - and hence have to be good at it - just less often than if they didn’t invest any time into figuring out ways of working that reduce the rate of bugs in their work (and, again, this is at more levels than just coding).

      I think that misconception of “good coders do not produce bugs” in anchored in the totally wrong idea that it’s at all possible to make code without bugs - the way I see it the path to being a “good coder” must go through being good at debugging and just wanting to avoid doing it as much because how how much more time it takes to have to go all the way down to using the debugger to find bugs than doing things like at least some analysis upfront of the program requirements, using proper naming conventions to reduce the likelihood of the kind of bugs that comes from confusing variables and structuring you code so that you don’t get lost or don’t forget things (especially for code you don’t see for months and later come back to having forgotten the logic you were following with it).

      I’ve done some programming without proper debuggers (embedded stuff in shitty shit microcontrollers, shader programming) and it’s a total PITA.