Why your favorite paid software wouldn’t exist without open source

Software makes the world go round, and more often than not you have to pay a pretty penny for the biggest and most popular software packages. Which is more than a little ironic when you consider that just about any software you pay for today is built at least partly on the work of free and open source developers.
Most commercial software is assembled, not invented
In the early days of computing, even the early days of the modern PC, software was usually written from scratch, but as the complexity of operating systems and software began to grow, it just didn’t make sense to keep reinventing the wheel. So software became modular. Instead of writing a function by hand, you’d call that function from a shared library.
Just like any software, some libraries are proprietary and have to be licensed from the owner, but many others are open-source. Wikipedia maintains a comprehensive list of open source software libraries if you want to see just how many different ones there are. I’d feel pretty confident in saying that nearly all software you use today does rely on at least one of these libraries.
By relying on libraries for common functions, software developers can divert resources to the features that are truly new and unique in their software.
Open source quietly handles the hardest problems
The most complicated problems in software development are ones we all take for granted, largely because large open-source software projects do all the heavy lifting with these fundamental systems.
I’m talking networking, encryption, media codecs, database engines, and data compression. The genuinely genius-level math and code that the vast majority of “coders” couldn’t replicate, let alone understand.
Of course, with enough money and talent, large companies could replicate these features using proprietary code, but getting it wrong could have enormous cost and reputation implications. Whereas the open source solutions for these core functions are proven and have been subjected to long process of community-driven bug hunting. This also means that, although a developer can’t claim to own the code, they do benefit from this shared responsibility to maintain and improve the code base.
It doesn’t give anyone an unfair advantage. If everyone has access to the same open-source foundation, it actually levels the playing field.
Paid software monetizes polish, not fundamentals
When you pay for proprietary software, you’re almost never paying for pure invention. You’re paying for polish, personal customer support, and a promise of a certain level of service delivery.
It’s the pretty facade layered on top of the solid open-source bones, and that’s of course fair. Open source software projects tend to be by coders, for coders. Open source apps meant for end users like you and me aren’t the majority of the FOSS (Free and Open Source) pie. It also explains why open source apps often have terrible user interfaces, because the incentives between FOSS and closed-source projects aren’t the same.
Licenses make commercial use possible
It’s easy to overlook that the whole reason open-source software can be such a powerful set of shared scaffolding for the paid software we use has absolutely nothing to do with computer code. Indeed, the code is all exactly the same. What sets FOSS apart is licensing. The genius of the “copyleft” movement is how open source licenses are carefully designed to leave no doubt as to how, when, where, and by whom the software may be used.
If these licenses weren’t properly formulated, then companies who develop paid software would never take the risk of using FOSS code, because the consequences could be dire.
This was demonstrated elegantly by the refusal of Linus Torvalds (the creator of Linux) to port the Linux kernel license from GPL-2.0 to GPL-3.0. This is because the new version of the license would prevent anyone who wanted to use the Linux kernel in a device like a streaming box or other embedded system from locking that device down. It gives anyone the right to replace the software on such a device with whatever they like.
If the Linux kernel were to make the move to this newer version, hardware manufacturers who currently use the Linux kernel as the basis for their hardware would abandon it, because it’s too much of a risk for commercial products.
The ecosystem is more symbiotic than adversarial
I think many people see commercial and FOSS software as enemies, but that’s never been the truth. In fact, FOSS software came about at least partly because different commercial entities recognized that they needed some way to share things without complicating their legal frameworks. From one point of view, you can see FOSS as being an open standard of sorts, like Bluetooth LE or ACPI.
We need both types of code to create the software we need, and to use resources efficiently, but, of course, FOSS has become far more than that. What I really want you to take away from this is that, the next time you open an app you paid for, spare a thought for all the open-source code that made it possible in the first place.




