By Jeff Dickey

Re the Ruby Fanbois

Zed,

I agree with 99% of everything you say here. People who think they can program without understanding (at a fairly fundamental level) How Things Actually Work Under The Hood are just the kind of people who drive around mindlessly, without any understanding of mechanics or physics. (How much room do you need to brake in before you hit that group of kids crossing the street? In the rain?)

Valgrind, in particular, is almost something that should be automatically invoked by the compiler. Anything more complex than "hello, omniverse" can break in ways that are hard to find in inverse proportion to your command of such tools. (BoundsChecker, back in the day, saved my career. At least twice.)

However, the swipe at agile development is something I do take strong issue with. There are good TDD frameworks for C as other languages (I use CuTest myself http://cutest.sourceforge.net/). Just as no serious project these days operates without some SCM tool, and every serious programmer knows how to use a debugger and at least one diagnostic tool (like Valgrind), in the very near future, every serious developer will at least make sure his code is fully covered by tests, if not managed under a full continuous-integration system entirely. The single biggest improvement in my productivity in the last 30 years has come about when I know that any changes I make that break anything are guaranteed to not keep that breakage hidden. Your mileage may vary, but I seriously doubt by much.

Thanks for the writing; it's good to see knowledgeable attitude.

Regards,

Jeff