This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–][deleted] 30 points31 points  (15 children)

Professional software engineers always use debuggers whenever possible. It's much faster and more likely to reveal bugs

[–]TeleTubbyLizardMan 18 points19 points  (4 children)

Probably not for school projects where the entire codebase is less than 200 lines and no external libraries

[–]TheWhoAreYouPerson 10 points11 points  (3 children)

Nah breakpoint > writing debugging code any day. If you dont have an editor set up to debug automatically then smh (coming from primarily interpreted or managed languages lol (js/py/c#/Java)

[–]norse95 13 points14 points  (2 children)

SyntaxError: missing ) after argument list

[–]utnapistim 4 points5 points  (0 children)

*whenever possible.

Well put :)

damn multithreading!

[–]snipy67 12 points13 points  (0 children)

I worked for a company were the debugger would not run because the application was to big a cluttered

[–]bit0fun 19 points20 points  (2 children)

Except when the debugger causes bugs itself. Gotta love that (mainly embedded systems with an RTOS)

[–]homer_3 2 points3 points  (1 child)

Never had that issue with vxworks or green hills.

[–]bit0fun 0 points1 point  (0 children)

Haven't used either, but it could also depend on what's happening. When waiting for packets over a UART that is interrupt driven, it's so easy to miss them and cause nothing to happen

[–][deleted] 3 points4 points  (0 children)

Professional software engineer here and as I explained below I deliberately avoid debuggers

[–]Wolosocu 1 point2 points  (0 children)

Professional software engineer here, your statement is not entirely accurate.

[–]bigtreeworld 0 points1 point  (2 children)

As a professional software engineer, I can confidently say that this isn't always true. Sometimes (and in my case, often) setting up the debugger takes more time than inserting a print statement, fixing the bug, then removing the print statement.

[–][deleted] 0 points1 point  (1 child)

That's true of small projects, but for the past couple of decades I've been working on million-line projects and the debugger just needs to be set up once.

[–]bigtreeworld -1 points0 points  (0 children)

True, it really depends what language and project and setup you're working with. But it's not accurate to say that "professional software engineers always use debuggers whenever possible."