By Damian Funnell
Open source software has been around for a while now, but sometimes it’s unclear what ‘open source’ actually means. Let’s take a quick look at the difference between open source and closed source software and why you should care.
Put simply, open source software refers to programming code that anyone can modify and share, because that code is publicly available and it’s licensed to allow modification and distribution.
Closed source, on the other hand, refers to traditional software, like Microsoft, that is only made available in compiled form. Closed-source software may still be free, but the developer doesn’t usually make the source code available, nor would they licence other people to modify or distribute their source code if it was available.
What is source code?
Source code is a textual, human-readable listing of commands that make up a software program. There are many different types of source code and many different programming languages that source code can be written in.
Software developers write/modify programs using source code and that source code is ‘compiled’ into software that can be run on a computer.
The compilation of source code converts the human-readable code into machine language that can be executed by the computer.
The term ‘open source’ was coined because, prior to the emergence of open source, software developers would closely guard their source code and keep it confidential. Many still do – at Hoodoo our most valuable intellectual property is contained within our source code and we go to great lengths to secure it.
Why do people produce open source software?
This is the bit that I love. The primary reason that people all over the world contribute millions of hours of their time to develop and maintain open source software is because people are inherently good. The open source movement was started, and has continued to gain momentum over the years, because of the community spirit of those involved in it.
Many open source enthusiasts believe that all software should be open and free. Others just want to contribute to something meaningful and they want everyone to benefit from the fruits of their labour.
There are lots of companies that develop open source versions of their products because it helps with product development and marketing. These companies benefit from improvements that others will make to the free, open-source versions of their products. They will also try and up-sell ‘free’ users to paid, closed-source versions of these products and this is entirely valid.
But most open source software is developed and maintained by volunteers for all to use freely. There is hope for humanity after all.
But is it any good?
In a word, yes. Most of the internet runs on open source software. Almost all of us use open source applications or app components on our PCs, tablets and smartphones every day.
Just as with closed-source software, some open source apps can suck, but open source is the lifeblood of the internet age.
At Hoodoo almost all of the software that we use, including the software used to develop our apps and to host and publish them to the world, is open source. It’s not only free – it’s also the best available. Any software we do pay for is typically cloud-based apps, most of which are themselves developed and hosted using open source software.
Companies such as Google, Facebook, Uber and millions of others probably wouldn’t have existed if it wasn’t for open source. Interestingly, companies such as Google and Facebook give back to the open source community in a big way – both companies have released a number of amazing apps and platforms as open source and contribute significant resources to the ongoing development of various open source projects.
Open source software also makes closed source software better and less expensive. Software publishers such as Microsoft, Adobe, Oracle and others are driven to continuously improve their products and to not charge too much for them in order to compete with free, open source alternatives.
Open source software licensing
As with all software, open source software developers can apply virtually any licence they like to their software and believe me we’ve seen some strange software licences. Whether or not these more exotic licences are enforceable I don’t know, but it’s definitely worth noting that not all open source software licences are the same. And not all open source software is free to use.
Generally speaking, if you are only using open source software (and not modifying or distributing it) then most open source licences allow you do to do so freely and without much risk.
The MIT Licence is the most common open source licence and, at only three paragraphs long (and very easy to understand), it’s definitely my favourite.
The GNU General Public Licence is also very common, but it’s much longer and more complex and has been falling out of favour for some time.
Most open source licences include protections to ensure that the software will remain open source, even if you modify it. This means, for example, that I can’t easily take an open source app like Apache (the world’s most popular web server), modify it and turn it into closed-source software.
A number of licensing and liability issues can arise from the use of open source software, although my experience has been that some organisations over-state these risks and shy away from open source products as a result. I’ve seen customers choose closed-source software over open source in the belief that the licensing risk would be lower, yet the licensing conditions of those closed-source products are often much more invasive, onerous and financially risky. Just ask any CIO who’s had to conduct a company-wide software audit because they were obliged to under a software licence.
Popular open source apps
Some of the most widely-used open source apps run in the data centre and you’re unlikely to come across them. Here are a few of the most popular open source apps that you can download and use:
Thunderbird – / – An excellent email client, try it as an alternative to Microsoft Outlook.
Firefox – www.mozilla.org/ – If it wasn’t for Google Chrome (which itself is based on an open source browser), I’d use Firefox as my web browser of choice.
LibreOffice – www.libreoffice.org/ – A completely free, open source productivity suite that’s remarkably good. Give it a try as an alternative to Microsoft Office.
GIMP – www.gimp.org/ – despite the unfortunate name, GIMP is a truly impressive image manipulation tool (ie, Photoshop alternative).
Shotcut – shotcut.org/ – a free, open-source, cross-platform video editor.
KeePass – keepass.info/ – a lightweight, easy to use password manager. Check KeePass out if you’re not already using a password manager – it can help you improve password security while reducing the number of passwords you have to memorise.
And of course then there’s Linux – the most versatile and widely used operating system in the world. OK, not many of us use Linux on our computers, but anyone with an Android phone is using Linux and most of the servers on the Internet run one version of Linux or another.
Damian Funnell email@example.com has been advising lawyers and law firms about technology for quite a while. He is founder of an IT services company and Hoodoo Cloud Software Ltd, a cloud software company.