kcw | journal | 2000 << Previous Page | Next Page >>

Hopefully this will be the last exchange of messages about this subject. But since I just replied again and I'm a lazy journal writer, I thought that I'd add the next chapter of this little discussion I'm having.

James Gregurich replies to my last message:

While I don't disagree with your design philosophy, I see no reason that good design up front means a Development environment doesn't need a good debugger. Debuggers can help you pick out flaws in your thinking. A debugger is certainly a better approach than littering your code with Printf's as was suggested, though that may be necessary in some cases.

Debuggers are also very useful for for figuring out someone else's code. Not all of us work in Nasa environments where everything is documented to the T and written in plain english. I have had 2 projects where I could not have understood them without a debugger because they were spagetti code.

In fact, with the Codewarrior Java tools, I was stepping through TinySQL to see how it worked and the adventure turned into a lost cause because the debugger was junk. So, an IDE with a junky debugger is pitiful. Just because you don't personal use it does not mean it is not a very useful tool in a moderm development shop. It is a very important tool and Metrowerks should be ashamed for releasing it for purchase.

All good points. And perhaps we have gotten away from what started this discussion, at least for me. It's time to restate what I think is the main point, to make sure we are still talking about the same thing:

I don't disagree that debuggers can be useful in many situations. In fact, I can't really say anything for or against debuggers because of my limited experience with them. What I'm disagreeing with, is the feeling that without a debugger, you can't write serious programs.

Maybe you that's not what you meant, in which case I apologize for the misunderstanding. But when I first read your original message, I read it as saying "no debugger == can't do serious work". My response was to say that my group has created serious enterprise level work without using debuggers. I did not intend to imply that using a debugger means that you aren't doing real work or that you aren't a real programmer if you depend on a debugger. So if that's what you took out of my writings, then I apologize.

I'll close by saying that I've been using CodeWarrior Pro 4 and 5 for the last year and a half and I have found it to be a good environment for developing Java programs. Mac OS Java support is a bit clumsy to use compared with Windows, and I'm glad that CodeWarrior takes care of most of those details for me. While other people have pointed out some (very valid) failings in Metrowerks' offering, I for one am quite happy with the product. I'm not saying CodeWarrior is good for everyone, but it is good for at least one programmer.

So hopefully that'll be enough to end this part of the argument. I don't think we really disagree. And I definitely don't think we were talking about the exact same thing. I had a problem with the absoluteness of his initial statement. Because of my poor wording and another poster's contribution, he took my argument to mean more than I had intended.

It's interesting to see how a discussion can flare into something more acrimonious. Although we were rather civil in this particular thread, it could have easily gotten out of hand if one of us had been more confrontational. That's something that I don't see enough of on the Internet -- there are still too many people (and it really only takes a small minority) who quickly resort to personal attacks to resolve arguments and to fight back against perceived slights.

So is this discussion truly over for me? I guess I'll find out in a day or two. Note that I've only repeated the main thread, and did leave out a short message from James in agreement with Joseph. The other parts of the thread I'm sure have influenced the main thread, but for the most part the other parts are not as thoughtful as the main thread.

Copyright (c) 2000 Kevin C. Wong
Page Created: August 18, 2004
Page Last Updated: August 18, 2004