Pros & Cons of Open Source Software at the Enterprise Level
Open source software (OSS) has come a long way since pioneers unleashed the development in the late 80s. A major milestone along the way was in 1999, when IBM announced its support for the open source Linux operating system. The notion of allowing the general public to view, use, and modify source was totally new back then. The idea of running a business based on open source software was groundbreaking. Open source has had a huge impact on the business world, and has long since found its place therein.
OSS rapidly gained considerable validity and huge popularity. And when it did, it simply became mainstream. When you research your next business software solution, consider the advantages and disadvantages of free software, to help you select the right solution.
PRO: In general, not just in software, secrecy is the enemy of quality.
We’re all human beings. Pretend all you want, but when push comes to shove, if you open your code to the public you’ll give it extra work to ensure that it won’t embarrass you. When code is on display, you’re going to make sure it’s of higher quality than if it’s hidden behind license restrictions. The biggest difference between open source software versus proprietary software is quality. In a comparison, researchers discovered “open source software is at least on par — if not better than! — proprietary software with respect to software defects.
CON: You’ll spend more time getting the software into shape.
Using open-source software isn’t simply a matter of choosing the system you want and popping a bottle of champagne as you wait for “the community” to start beavering away to meet your expectations. You’ll need professionals to get the system customized to your wishes and this will take time. The point is: you have a choice. With proprietary software you won’t have a time issue as you don’t have access to the source code.
PRO: The source code is freely available, which gives you flexibility and liberty.
With OSS you can access the source code and make it do what you need it to do. In complex systems like CMSs, developers use add-ons (also known as extensions, plug-ins or modules) to create highly customized web applications that perfectly match customers’ specific requirements.
Let’s compare open source software with a car. As the hood opens, car owners can fix problems themselves, or choose a repair service that best fits their needs. Using proprietary software is like driving a car with the hood welded shut. If the car breaks down, the owner has to return the car to the manufacturer for repair. Having no access to the engine means that neither the owner nor the repair service is able to fix the problem.
CON: If the product doesn’t work in the way you expected, you have to get it sorted out yourself.
One of the arguments for proprietary software is that the company behind the software is accountable to support and fix it for you. With legal agreements in place, you have recourse to take action and demand your rights as a consumer. Customers need the assurance of an SLA.
PRO: Open-source software is safer and more reliable.
There is a common misconception that stubbornly prevails, namely that OSS is more prone to failure. In fact it’s quite to the contrary. Any sufficiently complex and modern program will always have bugs, they're an inevitable byproduct of writing software. OSS is more reliable in that it gets reviewed by many developers, users and testers. This means bugs are more likely to be found, and that bug fixes and security updates are fast in coming.
When you calculate the hours of volunteer effort that goes into building open source software, it’s daunting. The work is distributed among many individuals, agencies, not-for-profits, enterprises, and more. Not a single one of them could produce the results alone without enormous expense. And they all contribute their time for free, and distribute the results for free.
CON: No one is obliged to help.
While the open source community is good at responding to issues quickly, no one is legally obliged to do so. That being said, most OSS applications do offer support and maintenance services - at a cost. For instance, if you’re using the open source content management system TYPO3 there are a whole lot of qualified agencies and freelancers you can hire.
Our company - the TYPO3 GmbH - is the commercial arm of TYPO3 and in response to this concern we offer SLAs (service level agreements) to support the TYPO3 core. This warranty covers service due to failed components within a specific time. We also provide further services like Extended Long Term Support (ELTS) and Project Reviews. Our overall goal is to establish 100% accountability.
PRO: As Spiderman already learned: “With great power comes great responsibility.”
OSS puts you in the driving seat. Being able to tailor software to specific requirements gives you a competitive advantage. Open source software improves efficiency, innovation and provides effective and powerful solutions. But it also means that you have to make sure website maintenance is running as it’s supposed to, as the responsibility ultimately lies with whoever is responsible for coordinating the work.
CON: The potential of orphaned software is greater.
There is a chance that developers will move off the project and officially “orphan” the software. That being said, any product or service on the market today could be discontinued for whatever reason, no matter if it’s open source or proprietary.
PRO: It’s affordable.
Open source software doesn’t cost a cent. Zero, nada, nothing, niente. Getting the system adapted to best meet your needs will come with a bill to pay, but this also gives you an immediate return on investment. Each and every feature you’d like to have can be integrated to make your project totally unique. You can get that awesome website built that you’ve always dreamed of having.
CON: … ehm … errr … well
… as you can see, we’ve run into trouble. Darn it! Earlier on we promised to take a neutral stance, but we’ve simply run out of cons. We’ve done our best at keeping the balance, honestly. So do we stop here? We do still have a few pros at hand. So, no, it’s just the way it is - there are just so, so many good reasons for using open source software at the enterprise level. Further good reasons are:
PRO: “Open source” is the currency developers understand.
Open source speaks to a mindset that resonates with many developers and attracts bright developers with ideals like community engagement, openness, and collaboration. Researchers also discovered developers prefer open source. Many open source projects get started because a single developer or a team of developers reckons there must be a better way to do things. And these developers often do things just for fun. They truly enjoy tinkering with code to make it do just what they want it to do. They’re passionate about making good things even better.
PRO: The code can be externally reviewed for security issues.
There is no such thing as perfect code and OSS is not immune to security issues. But it does have the potential to be safer than its closed source counterpart. It may seem paradox, but source code being visible to others strengthens its security. If the code is freely available for review, then end users, experts, as well as the open source community at large can verify that the software does exactly what it claims to do.
It’s not that OSS is automatically more secure than proprietary software. It’s that without access to the source code it’s impossible to check for security, let alone to do something about it.
With OSS you can do both: check the code and fix bugs. And as you systematically take action, you reap the benefits too.
PRO: And best of all, it’s fun!
There’s no denying the fact that the social component of code sharing is fun. It fosters collaboration, camaraderie, and creates a new network. As supporters of OSS we’re happy to see the re-energized debate over open source versus proprietary software. Let’s end with defining both models’ philosophies.
Proprietary software’s approach is “Let’s keep it secret so we can make money selling it.”
Open source software’s approach is “I find this useful, maybe others will too.”
Is OSS always the perfect fit for everyone? We think it can and should be the default for all software and for all companies. You may find the same. We’d love to hear your thoughts on this!
Editor’s note: This article was originally published in on July 13, 2017 and has been updated.
Good article, but I think there is another Con you could list. There have been several notable incidents with OSS containing libraries or dependencies that are not using a true open-source license. The end result is that the owner of those libraries or dependencies can withdraw the right to use them. This can lead either to the inability to update software or legal liabilities for the enterprise, as they have installed a copyrighted module without a license.