[wingide-users] Word completion and refactoring support

Geoff Bache geoff.bache at jeppesen.com
Wed Jul 4 07:28:18 MDT 2007

Martijn Pieters wrote:
> On 3. jul. 2007, at 22.13, Geoff Bache wrote:
>> (3) Reading the list of feature additions in Wing 3.0 made it seem to 
>> me like the bulk of the effort is being put into improving the
>> debugger. To me this seems a shame when more and more people are 
>> moving away from using debuggers towards driving development
>> with tests. Personally I would far rather spend my time writing 
>> automated tests or improving system logging than running a debugger: 
>> these things
>> stay with the system, whereas debugging sessions are transient. My 
>> debugging session now is not going to help any other developer of the 
>> system,
>> nor is it going to help me a few months from now.
> I am one of those people writing more and more automated tests, but 
> that hasn't diminished the need for a good debugger for me. In any 
> complex system, you'll find that the best way to solve a bug is still 
> using the debugger, as you may not have anticipated the situation with 
> tests. You may even be able to reproduce the bug with a testcase, but 
> that doesn't mean you know how to solve it. :)
> Martijn Pieters
That's where logging comes in. I can do no more than repeat the 
oft-quoted Kernighan and Pike. Put the last line of this quote into 
Google and you'll find Kernighan, Pike and I are not alone in these 
views :)

"As a personal choice, we tend not to use debuggers beyond getting a 
stack trace or the value of a variable or two. One reason is that it is 
easy to get lost in details of complicated data structures and control 
flow; we find stepping through a program less productive than thinking 
harder and adding output statements and self-checking code at critical 
places. Clicking over statements takes longer than scanning the output 
of judiciously-placed displays. It takes less time to decide where to 
put print statements than to single-step to the critical section of 
code, even assuming we know where that is. More important, debugging 
statements stay with the program; debugger sessions are transient."

--/The Practice of Programming/ by Brian W. Kernighan and Rob Pike


More information about the wingide-users mailing list