Last week, Microsoft announced Sandcastle which produces MSDN style documentation for your Visual Studio projects. Sandcastle is used internally to build the .Net Framework documentation. About the same time, Kevin Downs the creator of NDoc an open-source .Net documentation tool, announced that he will not be working on future versions of NDoc. It’s kinda sad to see a good project go wrong but it just goes to show you how frail the open source movement is. It is difficult enough to manage a project team that’s on your payroll. It’s exponentially more difficult to do so when contributors are doing so out of their own free time. Don’t get me wrong open-source has it’s place and I use open-source software just about everyday. But I wouldn’t risk my projects on it unless I knew what the source was doing. A good example of this is Rocky Lhotka’s CSLA. We use the CSLA in the office and build all of our business objects on it. But if Rocky didn’t have a book on how the CSLA was built wouldn’t I have used it. It would of taken too much time and money to dissect the source to figure out what it was doing. Sure it cost me $40 to essentially buy a manual but it is definately worth it. If more open-source projects had better documentation I would use open-source more often.
A few years back I demoed nSurvey it worked just fine but I had some major problems with the 1) lack of support, 2) lack of documentation. Now the open-source camp would say “just fix it yourself”. But my company doesn’t pay me to fix free software, they pay me to deliver corporate solutions. Purchasing a survey package gave me both the support and documentation. Fixing survey code doesn’t help the company bottom line. Do I blame Microsoft for releasing their own documentation tool? Nope. I welcome it. Could of NDoc competed with Sandcastle? Probably. Can you blame Kevin for moving on? No way. So good luck Kevin you created a nifty little tool.
BTW – those people who mail-bombed Kevin, that was just wrong.
Some other opinions on the subject:
“I cannot understand the mentality of someone who demands for developers to hurry up and release a new version of a free software product. If you are in such dire need of the new version, why not hurry up and contribute? Having said that, I feel particularly bad that I never contributed to NDoc, yet enjoyed so much use out of it. So let’s [band] together and declare today, July 26, 2006, Contribute To Open Source Day. Look at the open source software you use and consider making a tiny contribution to the project if you find it useful.” — Phil Haack
“It’s too bad to see what happens to such a useful project. I guess it’s common for hobby projects like this one. Having worked for big companies, I can testify that they use open source products extensively, but wouldn’t do the slightest thing to contribute to the projects or help them in any way. They just expect the free tools to work perfectly, just like they had paid big money for them!” — Fabrice Marguerie
“Personally, as an Open Source project co-leader, I’d much rather folks who use DasBlog pick a bug and send me a patch (unified diff format) than give money. I suspect that Kevin would have been happy with a dozen engineers taking on tasks and taking on bugs in their spare time. We are blessed. This Open Source stuff is free. But it’s free like a puppy. It takes years of care and feeding. You don’t get to criticise a free puppy that you bring in to your home.” — Scott Hanselman
Via The Server Side.