An Introduction to FOSS, Please bring your own free beer!
This is a basic introductory post to what FOSS – Free Open Source Software – is and Part 1 in a 3 – Part series about contribution into the Linux community.
Are you interested in coding? Do you want to help to create quality software for the masses which allows them to expand their own creative horizons? Great! That passion is the first step to be a part of the FOSS community.
I’m sure there’s atleast one person wondering why I dragged free beer into this. “Think of ‘free’ as in ‘free speech’, not as in ‘free beer’” the eloquent catchphrase Richard Stallman used to explain the concept of Free Software to the masses. The programmer is not prohibited from procuring a certain monetary compensation for his work, rather, it’s the freedom to run, copy, distribute, study, change and improve the software by the user after giving due credit to the programmer which this movement aims at.
Open Source simply refers to the source (code or technology or writing or whatever) being open to the people for modification and change according to their requirement. Open Source is a movement that you’ll see a lot once you start immersing yourself into the Linux community. Most of the Linux community operates under the auspices of this rule. Open Source Software is generally seen as a subset to Free Software. Although they can be used interchangeably in the general sense, there are some restrictive licenses and small differences. This is again the case between FOSS and FLOSS.
As you would understand if you follow at least one of those links, there are a whole lot of people who are really passionate about this “free software for the masses” thing. The most prominent of these would be the the Free Software foundation, with their GNU public licenses, and very vocal activism for their ideals. There are many other open source licenses like the one from MIT which are also used.
Many organizations like Fedora, Ubuntu, Mozilla, etc.. keep FOSS as one of their central themes for creating software. The community is the main driving force of these projects, from funding to coding, these are created through the effort of volunteers. Most of them do have some permanent staff though, according to the organization’s financial capabilities but there are quite a few unpaid volunteers with a day job as well.
For all those who wonder about the code quality of such a seemingly fragmented system, you’d be surprised. Open Source projects give performance as good as and if not better than proprietary systems like Windows or Mac. Although they ship with no guarantees, the community is very prompt in finding out and fixing bugs in the software. There also exists a honor system in the community. If you’ve created something wonderful, the community is quick to recognize and respect you. Conversely, if you have an error, you’re honor bound to clean up your mess. Rest assured, there’ll always be someone to give you some constructive criticism for your work or a much needed helping hand when you’re stuck with a problem.
Aaand that’s it! Part 1’s done! In the next part, I’ll be focusing on contributing to the Fedora Project, one of the largest FOSS projects in the world. This is mainly for the people who need a little guidance to take the first step. It may look daunting to you, but trust me, it isn’t. Once you get the hang of it, it should be easy to move onto any other project of your choice. It’s better to start in a large community and get some experience in your hand before you move on to something smaller.
Update : Although I intended to make this a strict tech article, due to requests, I’ve decided to link this to another article explaining the “free culture”. (Article under construction… subscribe to know when it arrives! 😀 )