Developer productivity
Slashdot asked the question: "In which OS do you feel most productive." Of course the instant answer was "any unix, but preferably linux". But then I wondered why that was the case, and that took a bit more thought. A major reason is because I am just most comfortable with a standard unix shell. I really know how it works, which I guess I should because I've been using it for around 15 years. I fondly remember my first shell account when I was in high school. I was wondering "what the hell are all those tildes down the side of my screen" the first few times I was forced to use vi when I was composing an email with elm(though at the time I didn't know what tildes were). I couldn't figure out how to switch modes, save, or exit. Anyways, now I spend hours every day using just tcsh and vi so I'm pretty unproductive without them.
Modern tools that have conveniences that I really would like to use. In particular Eclipse has automatic dynamic compilation, which really helps eliminate compilation errors early. Modern debuggers are nice, but I frequently find they aren't as helpful as they should be. Not because they don't work, but rather they don't help me find problems much faster than good 'ole printf. Debuggers require some setup time that I usually don't like to deal with, especially the more troublesome type of errors that are exactly the kind of problems you need a real debugger for. And finally having good logging can help other people work with my code in the future, while debugging breakpoints don't help anyone but me. So I don't really need a modern debugger that often.
Modern tools that have conveniences that I really would like to use. In particular Eclipse has automatic dynamic compilation, which really helps eliminate compilation errors early. Modern debuggers are nice, but I frequently find they aren't as helpful as they should be. Not because they don't work, but rather they don't help me find problems much faster than good 'ole printf. Debuggers require some setup time that I usually don't like to deal with, especially the more troublesome type of errors that are exactly the kind of problems you need a real debugger for. And finally having good logging can help other people work with my code in the future, while debugging breakpoints don't help anyone but me. So I don't really need a modern debugger that often.
Labels: software



1 Comments: Post a Comment
I agree that debuggers are often more trouble than they are worth. Most of the time a simple print statement gets the job done, at least for the stuff I work on.
But I have to say, after using emacs and vi for most of my career, and then recently switching to an editor (CodeGuide) that does both dynamic compilation and also nicely formats your code (with color etc), I am now totally spoiled and won't ever go back to using vi or emacs. It's really a huge improvement.
As for OS, unquestionably Unix is the way to go.
-Nat
<< Home