Is open source software all it’s cracked up to be? What are the advantages of open source software? Is closed source a better option? We’ll debate that here.
78% of companies are now running at least part of their operations on open source and 66% are creating client software on open source.
As companies look for new and better ways to customise, personalise, and optimise software; they leave rigidly defined, proprietary and controlled close source behind. They embrace the freedom, adaptability and power of many found in open source.
But do the advantages outweigh the disadvantages? Are there any pitfalls that your organisation needs to avoid as you move toward open source?
Explore the answer below as we discuss the disadvantages and advantages of open source software.
What Is Open Source?
It’s a feat that all of us must accomplish at least once in our lives — reading through the entire 10-page terms and conditions agreement for a website or software we’d like to use.
If you have read through a terms and conditions page recently, you’ll likely recall that most of these explicitly prohibit you from making any alterations to their software.
You must use the software as it is intended to be used.
If you have any suggestions that would make the software so much better, you may happily make those requests. And the owner of the software may or may not make them.
Open source software (OSS) is software whose licensing agreement doesn’t restrict others from building upon and changing the software.
What this does is allow software to evolve and take shape in the hands of many rather than restricting its evolution within the hands of a few programmers.
There are many more disadvantages and advantages of open source software to discover. Let’s get to those next.
Cost (Time, Money and Value)
One of the first advantages of open source software that we’ll discuss is the cost. But this isn’t necessarily what you think of when we say “cost”.
We’re not talking about a price tag. Yes, OSS code on which you want to build may have some initial costs. And it may have some ongoing costs, especially if you want some add ons.
But the overall cost of something for individuals and organisations is more than money. It often comes in the form of:
- Initial software costs
- Time wasted cutting through red tape
- Operational costs
- Design costs
- Troubleshooting costs
- Costs of not providing value to customers
When we look at the costs that go into developing software through open source, the advantages of open source software are clear.
The costs of creating through OSS when compared to buying or creating customized software from scratch are reduced. The open source creators and the collaborators who have gone before you have already done much of the work.
It’s simply upon you or your team to build upon what has already been created. Keep what you like. Add what you need. Scrap what you don’t.
Design exactly what you or your clients need for less.
Adaptability & Flexibility
OSS offers individuals and organisations and amazing ability to transform the software into whatever their minds can conceive.
This adaptability can be named among the disadvantages and advantages of open source software. Here’s why.
If people are able to modify the original open source code rather than simply changing it for their own uses, they can morph the software in such as way that it limits future changes.
In these cases, the open source has been manipulated to the point that it is so customized that it no longer services a purpose for the collective of individuals using that source code.
Open source may, therefore, restrict changes to the original code to only a hand full of people to protect its continued usefulness to all.
This is a point of contention among users. But even from this short summary, you can see it’s a complex issue in which functionality and reliability must be balanced with freedom, flexibility and innovation.
If you’re looking for pretty colours and a seamless user interface then, open source likely won’t be your cup of tea.
Open source caters to developers who enjoy peeking behind the curtain to better understand how things work. And then they live for taking that new understanding and applying it to create something new or better.
We could look at this as either one of the disadvantages or advantages of open source software.
The lack of user interface and layman’s level user tutorials means that, theoretically, people who don’t have the skill necessary to create/modify software won’t be monkeying around in the open source, mucking things up for everyone else.
But it can also create a learning curve for even tech-savvy individuals who are new to open source.
OSS fosters a sense of community among developers. Developers in different organizations around the world are in effect building something great together even if they are adapting certain aspects to their own uses.
These developers share their experiences, hardships and triumphs with others working together.
The creators of the initial open source benefit from the ultimate in word of mouth advertising. As more people begin using and developing their open source code, more people become interested in joining the collaboration.
OSS creators strive to appeal to big companies. Collectively, companies spend around £1 trillion on R&D each year. Open source allows software developers to tap into that kind of funding without having to make the investment themselves.
And those individuals who collaborate on the project — no matter how small and insignificant their contribution may seem — are also tapping into those kinds of resources.
OSS service isn’t what we’ve come to expect in the recent years when businesses have focused on creating an “exceptional customer experience”.
This isn’t because the software “owners” don’t care. It’s because there are a gazillion ways that you and others could be altering and evolving the software. And, eventually, the “owners” are you.
Providing customer care, troubleshooting assistance or anything else that resembles customer support isn’t an option.
But this doesn’t mean you’re on your own. Forums and communities built around the software may provide some assistance. Don’t expect them to solve all of your problems, though.
If you plan to work with open source, you should have willingness and ability to figure things out yourself while learning from and sharing with others.
With open source, you do give up a level of control. People around the world are collaborating. These people aren’t often communicating with each other.
This does open open source up to potential for misuse or incorporation of malicious code or backdoor trojans. Ultimate freedom, in other words, comes with a cost.
While everyone is at risk, large companies may have the most to lose through:
- Hijacked data
- Loss of proprietary information
- Loss of reputation
- Financial losses
- Legal woes.
In this regard, the disadvantages far outweigh the advantages of open source software. But as stated above, 78% of business are estimated to be using some open source.
You’d be right if you guessed that there are ways to manage this risk.
First of all, working with only reputable brands who provide open source is one way to reduce your risk. While no brand is impenetrable, trusted brands do put more safeguards in place to reduce the risk to those using their OSS.
After all, their reputation is on the line as well.
Secondly, keep in mind that open source is a collaborative, or a collective if you will. If open source were a Star Trek character, she’d be the Borg Queen. And resistance is futile.
If open source were a creature from nature, she’d be a queen bee. Everyone has shared interest in keeping the open source (queen) functioning properly. Because of this, if any of the thousands of worker bees (developers) spot suspicious code, they’ll remove it.
They’ll protect themselves and the hive in doing so.
As an individual or business concerned about security, only using an OSS that has a strong community built around it, will help keep you safer from attacks.
And now we get to stability. As we discussed in the “Adaptability and Flexibility” section above, there’s a trade off. More flexibility and freedom will typically mean less stability.
If the open source’s original code can be altered, then the software could become unstable. So one of the advantages of open source software being only “partially open”, is that people can’t modify the foundation of that open source.
They can only add to it.
On the flip side, keeping the original OSS can cause redundancies and conflicts to arise. These can wreak havoc on your project.
Again, it’s all about finding that balance that works for that open source community. You can find this balance by working with trusted and skilled open source creators.
The Advantages of Open Source Software Win
The disadvantages of open source can seem a little scary. But as you can see, there are incredible advantages of open source software.
You can build upon the minds of talented software developers.
You’re not forced to re-create the wheel to develop software for you, your company or clients.
You can save time, money and energy by working in open source as you share your skills with other talented people.
What has been your experience with open source? Do you have any advantages or disadvantages to add? We’d love to hear your stories, nightmares or tips regarding open source. Comment below.
Photo by Artem Sapegin