What Is Open Source?
Open source software, open systems, open data, open standards, open….
‘Openness’ is a topic that is increasingly being talked about. From reading and listening to the discussion, it is clear there is no consistent definition of what Open is. However that doesn’t detract from the passion of open advocates and the benefits of Open source, data, standards etc.
Lets look at some of the components
Open source software consists of applications and components where the source code is publicly available for others to use and enhance as they wish. Such software has large (online) communities of developers and users sharing information on bugs, enhancements and ideas related to the application or component.
- Joomla or Drupal – web content management applications
- Thunderbird – desktop email and messaging application
- LibreOffice – desktop productivity suite
- Linux – operating system
In the world of open source software, there are two types of licences used to ‘govern’ ongoing development in summary;
- GNU General Public Licence where the main principle is that if you use an open source application or component in your software then your software needs to be made available as open source as well
- Apache Licence where the principle is a little different in that you don’t have to make your software application open to other developers even though you may have used open software in the application
(Open) standards are needed to produce open software
In order for software to be open, standards are needed. Open standards exist in many software areas but in order to considered as an open standard, each one must comply with a number of criteria. Two examples of open standards are;
- TCP / IP – together these two open protocols enable networks around the world to exchange data and thus was a big contributor to the development of the worldwide web
- HTML – one of the markup language standards for web pages
Such standards work from a similar principle as open software; if a standard is good enough, then they are used, otherwise an existing standard is enhanced or a new standard is started and shared around the world. One benefit from using open standards is ‘interoperability‘ where my application or component can work in different software environments.
Then there is open data
The final open component is open data, which is as important as the other components. As the use of the web has increased, so has the amount of data and information, both personal and business, from new product and customer announcements to holiday photos and Government services information. With this growth, a debate on how best to use all this information with due consideration to privacy, security and the potential benefits of information sharing has taken to the air.
In an ‘open’ letter from Google on the “Meaning of Open”, three useful principles of openness were discussed;
- Value – by sharing information and data companies can make products and services that can be beneficial to people. In return, companies need to explain in simple language to users the value that they receive in turn for sharing some or all of their data
- Transparency – where it needs to be easy for a user to find out what information is being gathered and how it is being used
- Control – where the final decision is in the hands of a user to easily control how much information is shared via such features as opt-out.
From my experiences of the Open world, I find it innovative and with that innovation it can be a little chaotic as open source software, standards and data evolve. Evolution is an apt term for the Open world because I think it’s a longer term game but progress is ongoing.