Open Source

Open source software has always held fascination over me for reasons other than just being free software. In fact, Open source software, over the years, has evolved from “free software” to “freedom in software” to revolutionizing the software development business model. Today google is a prime example of the new business model and its success in the stock market is a reflection of how well the new models work. The link between open source software to where google is today is not a straight forward link. The evolution of open source software is a fascinating study and its future evolution would be an interesting lesson in management and software business models.

Open source” as a concept is a way to develop software that relies on using peer review to improve software quality dramatically and at the same time brought in the right processes, techniques and tools to remove the cost of communication across a large and geographically distributed teams. Open Source broke one of the key tenets of Brook's law “Adding more programmers to a late software project makes it later.” since it encouraged openness and constant collaboration resulting in very large teams being able to collaborate and build solutions that are production class.

Once software development took up the open source model, various developers used different collboration tools and processes over the internet to build applications and some of the biggest achievements of this community is Linux and Apache. The corollary to such a technique for development is that the source code - the human readable instructions had to be made “open” i.e. the source code had to be made available to all those people who were interested thereby allowing them to perform the peer review process that open source is famous for. This resulted in an interesting side effect. The software became freely available to anybody who wanted to tinker with it and change it.

This interesting “side effect” resulted removing two key aspects of software development - the cost of development and the cost of debugging became near zero. You had an army of keen users who were constantly contributing bug reports and fixes to the software thereby evolving the state of the software to high levels of quality. Organizations that could capitalize on open source development could suddenly give away their software for free and only charge customers for services that they provide around the software. Other organiztions could actually build a platform based on open source software to provide services to their customers at a cost where the cost of the service did not carry the underlying cost of the software. Companies like google is prime example of this business model.

The circle of giving things for free does not end here. Google in turn offers certain services for free and charges on certain services. This model of free services can be correlated back to some of the concepts of open source software development paradigms allowing us skate to where the money will be

Thus in my mind, open source software as a concept started in the software world but has evolved over time into the business world. It is this kind of evolution that keeps me currently following open source software and also contribute to the evolution. Feel free to browse the essays and software and help yourself to some free beer in the process :-)