Friday, May 8, 2009

A Primer to Open Source SW Development Ideas..

A nice modern Zen poem to start the blog:

To follow the path:
look to the master,
follow the master,
walk with the master,
see through the master,
become the master.

Have been doing some study on the Open Source Initiative.

For those who want to have a primer (and it's a lovely read too), here's the most revered article on the subject. It's titles "The Cathedral And The Bazaar" and is written by Eric Raymond.
Coming from Unix background, he was taken in surprise in 1991 by the Open Source movement and became a beliver himself by 1996. He has actually drawn heavily from the experiences he had with Linus Torvalds or Richard Stallman and these have heavily influenced his writings.



Eric is the person who popularised the line "Given Enough Eyeballs, All Bugs Are Shallow". It's actually a one line summary of the concept of a Bazaar (which is how Linux was developed)...where there is no given protocol and ANYONE can say (contribute) whereas the Cathedral mode of development is when there is a Open Source development thru guidelines and frameworks.

Also interesting to note, when you read the article you will start seeing the myriad ways in which Open Source Development is so similar to Agile SW Development Practices.

I found the following ideas of open source development very similar to that of Agile Development.
4. If you have the right attitude, interesting problems will find you.
5. When you lose interest in a program, your last duty to it is to hand it off to a competent successor.
6. Treating your users as co-developers is your least-hassle route to rapid code improvement and effective debugging.
7. Release early. Release often. And listen to your customers
8. Given a large enough beta-tester and co-developer base, almost every problem will be characterized quickly and the fix obvious to someone
10. If you treat your beta-testers as if they're your most valuable resource, they will respond by becoming your most valuable resource.
11. The next best thing to having good ideas is recognizing good ideas from your users. Sometimes the latter is better.
13. ``Perfection (in design) is achieved not when there is nothing more to add, but rather when there is nothing more to take away.''
18. To solve an interesting problem, start by finding a problem that is interesting to you
19: Provided the development coordinator has a medium at least as good as the Internet, and knows how to lead without coercion, many heads are inevitably better than one


So much for today...see you soon

No comments: