As software developers, you must have encountered this term at least once. Since most of us work for profit-making companies, this phrase ‘Open Source’ sounds like a dangerous word. While many of us may not understand it fully but probably most of us would associate this phrase with ‘free’ or ‘non-commercial’ or a sort-of ‘free tools’, ‘utilities’,’linux’, non-microsoft and many other things. To share honestly even I just discovered that I knew so little about it. So, may be a good enough topic to write on it.
‘Open Source’ at core is about making the ‘source code’ open or accessible to all. Since the code is open, it can be modified (with some conditions) and can be re-distributed. It can be a commercial activity (look at vendors who are distributing Linux) and it has been there for a long time.
The above definition is what I could make after reading at many places. If you look at the definition by the organization called ‘Open Source Initiative‘ (OSI) then its much more laced with adjectives and euphoria. Here’s what it says, for your quick reference
“Open source is a development method for software that harnesses the power of distributed peer review and transparency of process. The promise of open source is better quality, higher reliability, more flexibility, lower cost, and an end to predatory vendor lock-in.”
Lets talk in more practical language. Essentially, if you want to help the world and have a program then you can probably get the necessary license from OSI and have it hosted at one of the popular open source inventories on web viz. Source Forge. If people like your program and want to improve it or make it richer, then they would have access to source code. They can also re-distribute the program.
Alert readers would have noticed that you can share or re-distribute with certain conditions. You can read the conditions here.
Without making the whole thing more difficult to read, I would just throw in a example of Linux. As you must be aware that Linux is ‘Open Source’, but then why you need to pay when you buy a ‘Red Hat’ CD. Well, because “Red Hat” as a company has created a wrapper-installer on top of “Open Source” Linux and have added tons of small programs (CD Writing, Notepad, Image Editing etc) and would throw-in a support package. You might be surprised to know that there are about 200 Linux platform vendors or probably more.