02-14-2007
Do-It-Yourself Tendencies and Why Software is Hard
Salon has an interview with Scott Rosenberg about his new book, Dreaming in Code: Two Dozen Programmers, Three Years, 4,732 Bugs, and One Quest for Transcendent Software. The book details the long development process of the Chandler open source software project.
In the interview, Rosenberg includes a quote that explains a phenomenon I’ve seen numerous times in my years in I.T., as programmers build their own software rather than learning to use off-the-shelf tools:
And programmers, as I quote Larry Constantine in my book, programmers are programmers because they like to code — given a choice between learning someone else’s code and just sitting down and writing their own, they will always do the latter. And the programmer who says, it will be faster for me to write it, rather than to learn it, is usually correct. Except that what he will write, most likely, is something that will work but will not have its rough edges worked out, will not have the benefits of a piece of software that has actually been used for a few years, where the bugs have been found and the users have given feedback and have helped you figure out where the problems are. So what they will often be handing you at the end of that I-can-do-it-faster-myself thing is something that works, but that is kind of a mess in certain ways. Whereas the thing that you were going to pull off the shelf, maybe it will take the programmers a while to learn it, but once they learn it enough to hook it up to this project you are creating, what they are hooking up will probably have a lot fewer problems.
Personally, I usually find it easier to learn how to use someone else’s software than to build my own. That’s part of why I’m a big fan of open source tools like PmWiki, Drupal, and WordPress. With them, I’m able to be more productive than I ever would if I had to design, code, test, and implement everything from scratch.
Posted by Matt in business, tech | RSS 2.0
Actually, I think that this is what Scott Rosenberg missed. His observation that programmers like to write their own code rather than using someone else’s code, may have been true about 15-20 years ago. Programmers these days mostly feel the same as you do, and make prolific use of open-source software. Professional programmers know the value of tried-and-tested code. I would say that those who prefer to write their own code in the face of available solutions today are most probably amateurs or students trying to build their programming skills.