Wednesday, July 26, 2006

Open source nightmares

I think one of the biggest problems with open source (OS) development is the lack of proper and clear documentation. I've realised over a period of time that the biggest assumption that all the OS languages have is that every developer is a skilled developer and as such needs very little documentation or sample apps to begin with. I'm not saying that all of them lack the proper intro material but a bulk of them do.

The biggest culprit in my view would have to be the projects under the Apache foundation, by the way the projects these guys have are pretty interesting,the likes of Tapestry,BeeHive just to mention a few..By the way the guys at BeeHive do at least try and give you some form of documentation :-)

Every so often I get a chance to glance over the Apache Foundation website and see the new projects they have, hoping that with time they will have introduced better documentation but true to their nature they don't seem to care for the Beginner Programmer out there who has very little knowledge of the whole XML+Ant+War thingy...

Why focus on developing new frameworks when people can't get decent documentation on the current ones?

Microsoft has it's flaws but one thing I do give them marks for is that they do provide adequate documentation on all their frameworks. Take a look at the .NET framework, they've given you all the docs needed to start developing a basic web app within minutes of the installation. Then we have the website ASP.NET which is like your one-stop shop for anything and everything concerning the .NET framework, very nice stuff on it.

The guys at Interface 21 (Spring Framework) at least they tried by providing you with a sample application which even though isn't comprehensive it does get you started on the whole process. Matt Raible's Appfuse application is pretty good but lacks the start from scratch thing that beginners (like myself) want. Isuggest you head over to his blog and check it out, very nice stuff including some of his sample apps built using Tapestry,JavaServer Faces,Struts,Webwork and Hibernate not forgetting to mention Ibatis (easiest SQL mapping implementation I've ever used :-) ).

I recently started experimenting with Symfony PHP5 Framework, I didn't expect much but when I scooted off to the documentation section boy was I surprised. These guys have a fully developed web app Askeet.com and a day-by-day development lifecycle, what makes it even better is that it's all downloadable the source code as well as the tutorial (for those of you who don't have 24hr internet access you'll most definitely appreciate this). If you think that's not enough they have a One day tutorial showing you how to develop a basic application in one day damnit!! these guys are good. They even go a step further and give you access to movies describing how to perform certain tasks. Now this is what I call comprehensive documentation.
Some of you will notice the similarity between Symfony and RoR(Ruby on Rails) :-)

Why can't the guys at the Apache Foundation take time off and sit down to make some decent documentation??? Your projects are really nice but if am gonna spend hours trying to find out how to connect to a database and retrieve records then sorry guys I'll go to the next easy thing..

Other articles/posts written on the subject:

No comments: