Open source embodies some very positive aspects of the internet - collaboration, knowledge and skill sharing towards a common goal. The results are impressive and demonstrate what can be achieved from small contributions of time and effort by a large number of people.
What's it all about?
On the surface, it's exactly what it says on the tin: programmes whose source code (the nuts and bolts of how it works) is open to the public. More than this however, it implies a structured way for teams of volunteers to build complex applications, ranging from software to operating systems.
Open source products are generally free to download, come with little or no copyright restrictions and - most importantly for developers - give free access to source code so that software can be modified, enhanced and customised.
Examples of Open Source
Even if the concept is new to you, you've almost certainly visited websites which have been built with open source technology. In fact you're looking at a website right now which uses the first five technologies listed below! From core behind-the-scenes systems to popular user-friendly packages, here are a list of well known and widely used open source systems:
- Linux - an operating system (like Windows)
- Internet Protocol - the communication standard used on the internet
- Apache - web server software
- PHP - a programming language
- mySQL - database software
- Mozilla Firefox - a web browser
- OpenOffice - office software (like Microsoft Office)
- Moodle - an e-learning system
- Joomla - a content management system
- PHPBB - forum software
Who's in charge?Most open source projects have a committed core team of developers. Bugs reports and requested changes are incorporated into sequentially numbered versions, which are released at regular intervals. The core team will have a vision for the long term direction they wish to steer the project, but it will be open to anyone's input and involvement. An example of a well established group of open source developers is SourceForge.
How do they make money?
If a product is free to download, how can developers afford to spend time working on them?
For many people, coding (writing code) is a hobby and for others it's a passion. The sense of community and shared success in open source groups is very strong, and this encourages people to get involved. With experienced mentors, it's a fantastic environment to learn new skills.
Many open source projects ask for donations of as little or as much as you can afford. This type of income is never likely to earn a place on the Forbes List, but it might cover the basic running costs of a project. Non-technical people can't contribute skills but they may still want to give something back; businesses often use open source systems on a wide scale and feel obliged to pay something towards the development costs.
Other business models include paying for support and documentation, or a free basic version with chargeable add-ons.
The pros and cons
At Iteracy we use open source systems extensively, from web hosting to mailing lists, fora (yes, that's the plural of forum!) and e-learning. We could build these systems ourselves but it wouldn't be economical for our clients to commission the work, so we make use of open source systems and customise them as required.
In the past, open source systems were not user-friendly and required a high level of technical ability to install and configure. Because new versions are continually being released, many have improved greatly and are now robust, professional and fairly easy even for people with limited technical knowledge to use. Documentation is generally much better and discussion boards will invariably answer any question that you might have.
If you want to add or customise open source software on your website, get in touch to discuss what the options are.