Comments on: Bug Triage http://tleaves.com/2004/09/29/bug-triage/ Creativity x Technology Sat, 17 Mar 2012 05:09:58 +0000 hourly 1 http://wordpress.org/?v=3.3.1 By: Christina Schulman http://tleaves.com/2004/09/29/bug-triage/comment-page-1/#comment-618 Christina Schulman Fri, 01 Oct 2004 18:47:20 +0000 http://tleaves.com/?p=200#comment-618 > What I really want is a general purpose > trace system that has no effect on timing > and will allow me to replay the exact > execution of the app over and over > again backwards and forwards. Me Too. Of course, I'd also like a way to observe particles without letting them be affected by the observation... > What I really want is a general purpose
> trace system that has no effect on timing
> and will allow me to replay the exact
> execution of the app over and over
> again backwards and forwards.

Me Too. Of course, I’d also like a way to observe particles without letting them be affected by the observation…

]]>
By: Eric Tilton http://tleaves.com/2004/09/29/bug-triage/comment-page-1/#comment-617 Eric Tilton Fri, 01 Oct 2004 17:36:01 +0000 http://tleaves.com/?p=200#comment-617 Hey, Peter, I think this one is in your code; can you take a look at it? Seriously, though, I also think you're being too harsh on logging, although having said that, it was only two days ago that I tried to pinpoint a particularly nasty crasher and -- et voila -- adding logging made the problem nonreproducible. And now my luxuriously full head of hair is now a mere shadow of its once glory. I like the hospital analogy; we spent a little too much time in hospitals a year ago, and it actually added to my frustration to realize that the medical professionals were just debugging, since it completely demystified the medical aura of authority for me, and I started thinking about them as irritating coders trying to pass off a particularly troublesome problem with stock answers. Hey, Peter, I think this one is in your code; can you take a look at it?

Seriously, though, I also think you’re being too harsh on logging, although having said that, it was only two days ago that I tried to pinpoint a particularly nasty crasher and — et voila — adding logging made the problem nonreproducible. And now my luxuriously full head of hair is now a mere shadow of its once glory.

I like the hospital analogy; we spent a little too much time in hospitals a year ago, and it actually added to my frustration to realize that the medical professionals were just debugging, since it completely demystified the medical aura of authority for me, and I started thinking about them as irritating coders trying to pass off a particularly troublesome problem with stock answers.

]]>
By: psu http://tleaves.com/2004/09/29/bug-triage/comment-page-1/#comment-616 psu Thu, 30 Sep 2004 13:22:40 +0000 http://tleaves.com/?p=200#comment-616 There are classes of UI bugs that can be tracked using your standard debugger and just stepping the code. But, there are other times when running in the debugger just won't work because the problem is timing based or a redraw problem. For those problems, I generally prefer targetted logging over any debugger built by man. What I really want is a general purpose trace system that has no effect on timing and will allow me to replay the exact execution of the app over and over again backwards and forwards. There are classes of UI bugs that can be tracked using your standard debugger and just stepping the code. But, there are other times when running in the debugger just won’t work because the problem is timing based or a redraw problem.

For those problems, I generally prefer targetted logging over any debugger built by man.

What I really want is a general purpose trace system that has no effect on timing and will allow me to replay the exact execution of the app over and over again backwards and forwards.

]]>
By: Christina Schulman http://tleaves.com/2004/09/29/bug-triage/comment-page-1/#comment-615 Christina Schulman Thu, 30 Sep 2004 07:57:04 +0000 http://tleaves.com/?p=200#comment-615 Whoops. Sorry about the double post -- I blame my tools, of course. Whoops. Sorry about the double post — I blame my tools, of course.

]]>
By: Christina Schulman http://tleaves.com/2004/09/29/bug-triage/comment-page-1/#comment-614 Christina Schulman Thu, 30 Sep 2004 07:54:53 +0000 http://tleaves.com/?p=200#comment-614 Peter said: > Apple developing an operating system with > protected memory and virtual addressing On the bright side, having to reboot every time you write to address 0x000000 will cure you forever of failing to check for null pointers. > "If architects built buildings the way programmers wrote programs, > the first woodpecker that came along would destroy civilization." Yeah, but nobody asks architects to build buildings in 2 weeks from a crayon drawing of a house. (Stop me before I drag the analogy out further.) Jonathan said: > Another right way: start explaining the bug > to someone who knows nothing whatsoever about > the code, and ideally nothing about programming > at all. Amen. Long walks, hot showers, and doing the dishes are also good for bubbling those insights to the top. (Plus, you get cleaner dishes and cleaner programmers.) My worst bugs are usually GUI bugs. Specifically, I have yet to find a debugger or debugging approach that makes it significantly easier to deal with Swing doing unexpected things. Automated testing doesn't apply well to GUIs either, at least not in any affordable package that I've found. Peter said:
> Apple developing an operating system with
> protected memory and virtual addressing

On the bright side, having to reboot every time you write to address 0×000000 will cure you forever of failing to check for null pointers.

> “If architects built buildings the way programmers wrote programs,
> the first woodpecker that came along would destroy civilization.”

Yeah, but nobody asks architects to build buildings in 2 weeks from a crayon drawing of a house. (Stop me before I drag the analogy out further.)

Jonathan said:
> Another right way: start explaining the bug
> to someone who knows nothing whatsoever about
> the code, and ideally nothing about programming
> at all.

Amen. Long walks, hot showers, and doing the dishes are also good for bubbling those insights to the top. (Plus, you get cleaner dishes and cleaner programmers.)

My worst bugs are usually GUI bugs. Specifically, I have yet to find a debugger or debugging approach that makes it significantly easier to deal with Swing doing unexpected things. Automated testing doesn’t apply well to GUIs either, at least not in any affordable package that I’ve found.

]]>
By: Christina Schulman http://tleaves.com/2004/09/29/bug-triage/comment-page-1/#comment-613 Christina Schulman Thu, 30 Sep 2004 07:50:15 +0000 http://tleaves.com/?p=200#comment-613 Peter said: "If architects built buildings the way programmers wrote programs, the first woodpecker that came along would destroy civilization." Yeah, but nobody asks architects to build buildings in 2 weeks from a crayon drawing of a house. Jonathan said: Another right way: start explaining the bug to someone who knows nothing whatsoever about the code, and ideally nothing about programming at all. Amen. Long walks, hot showers, and doing the dishes are also good for bubbling those insights to the top. (Plus, you get cleaner dishes and cleaner programmers.) My worst bugs are usually GUI bugs. Specifically, I have yet to find a debugger or debugging approach that makes it significantly easier to deal with Swing doing unexpected things. Automated testing doesn't apply well to GUIs either, at least not in any affordable package that I've found. Peter said:
“If architects built buildings the way programmers wrote programs, the first woodpecker that came along would destroy civilization.”

Yeah, but nobody asks architects to build buildings in 2 weeks from a crayon drawing of a house.

Jonathan said:
Another right way: start explaining the bug to someone who knows nothing whatsoever about the code, and ideally nothing about programming at all.

Amen. Long walks, hot showers, and doing the dishes are also good for bubbling those insights to the top. (Plus, you get cleaner dishes and cleaner programmers.)

My worst bugs are usually GUI bugs. Specifically, I have yet to find a debugger or debugging approach that makes it significantly easier to deal with Swing doing unexpected things. Automated testing doesn’t apply well to GUIs either, at least not in any affordable package that I’ve found.

]]>
By: Alex Groce http://tleaves.com/2004/09/29/bug-triage/comment-page-1/#comment-612 Alex Groce Thu, 30 Sep 2004 02:05:12 +0000 http://tleaves.com/?p=200#comment-612 Print statements in non multithreaded code deserve more credit than you're giving them, especially given the state of the debuggers many of us have to use. In multithreaded code, sure, they're bad. But in multithreaded code, everything is bad except miraculous luck or Sherlock Holmes reasoning. Print statements in non multithreaded code deserve more credit than you’re giving them, especially given the state of the debuggers many of us have to use. In multithreaded code, sure, they’re bad. But in multithreaded code, everything is bad except miraculous luck or Sherlock Holmes reasoning.

]]>
By: Jonathan Hardwick http://tleaves.com/2004/09/29/bug-triage/comment-page-1/#comment-611 Jonathan Hardwick Thu, 30 Sep 2004 01:32:11 +0000 http://tleaves.com/?p=200#comment-611 You realize that NTFS *still* needs defragmenting sometimes, right? So that magic sometimes works... Another wrong way: use GDB. Another right way: start explaining the bug to someone who knows nothing whatsoever about the code, and ideally nothing about programming at all. Half the time you'll blather on for ten minutes, and then stop and slap your head in disgust at missing the blindingly obvious. Spouse/significant others/main squeezes are particularly good for this. Some claim it also works with cats, but I've never got one to feign interest for long enough. You realize that NTFS *still* needs defragmenting sometimes, right? So that magic sometimes works…

Another wrong way: use GDB.

Another right way: start explaining the bug to someone who knows nothing whatsoever about the code, and ideally nothing about programming at all. Half the time you’ll blather on for ten minutes, and then stop and slap your head in disgust at missing the blindingly obvious. Spouse/significant others/main squeezes are particularly good for this. Some claim it also works with cats, but I’ve never got one to feign interest for long enough.

]]>