I know profilers and debuggers are a boon for productivity, but anecdotally I’ve found they’re seldom used. How often do you use debuggers/profilers in your work? What’s preventing you? conversely, what enables you to use them?

  • pinkpatrol@anarch.isOP
    link
    fedilink
    arrow-up
    7
    ·
    2 years ago

    How do people do stuff without debuggers? :D

    Another way to develop would be through iterating within a Unit Test that you don’t plan to keep around.

    Uh, I set a breakpoint and run the app?

    To add a bit more context, it’s more difficult to configure a debugger when the application is running within something like Docker. How difficult? That depends on the language and tools you’re using.

    • Nicktar@beehaw.org
      link
      fedilink
      arrow-up
      8
      ·
      edit-2
      2 years ago

      I’ve seen the fun of “prints everywhere” in production when a colleague forgot to remove a “Why the fuck do you end up here?” followed by a bunch of variables before committing a hot-fix… Customers weren’t to amused…

      Edit: That was a PHP driven web shop and the message ended up on to of the checkout page

      • MagicShel@programming.dev
        link
        fedilink
        arrow-up
        2
        ·
        2 years ago

        That must’ve prompted a bit of existential crisis in some shoppers. I can see going to purchase some useless consumer shit online and getting a message “Why the fuck do you end up here?” and just closing my browser and rethinking my life decisions.

      • @mastodon.social
        link
        fedilink
        arrow-up
        1
        ·
        2 years ago

        @Nicktar I usually prefer the prints everywhere approach, but of course printing to STDERR not STDOUT - so it ends up in a log, and not in the program output 😅 won’t make that mistake again!

    • aksdb@feddit.de
      link
      fedilink
      arrow-up
      4
      ·
      2 years ago

      We run almost everything on bare metal during development. The ci/cd pipeline runs containerized and also produces a container with the application inside, that then gets deployed to production. But we don’t debug on production, so that isn’t an issue.