There was a time when ‘open’ software wasn’t synonymous with open source and far removed from the discussions of free (as in libre) software. Open systems were popularized in the 1980s, when interoperability and portability between proprietary and third-party software was a rarity. Open data pushes for the freedom to republish and use data, similar to the open source movement.
Recently, I’ve come across some articles that have flouted another type of ‘open’ - the open core model.
Open Core Model
The open-core model is a business model. Commercially-produced open source software is released with a ‘core’, feature-limited version parallel to a proprietary, feature complete version.
(Examples: MongoDB, GitLab, MySQL)
There’s a lot of controversy surrounding the open core model. MongoDB, in its interest in protecting its bottom line, changed the software’s license from the open source Affero General Public License (AGPL) to the ‘not-so-open-source’ Server Side Public License (SSPL). While it had tried to court the Open Source Initiative’s blessing for the SSPL, MongoDB recently just gave up. They’re sticking with the SSPL, with their open core model, and to the man.
Shifting Landscapes
The larger discussion is that open source is changing. MongoDB is one popular community that has placed a large financial investment in its open source project. Whether or not the actual license it is released under is considered ‘open-source’ by the Open Software Initiative, it isn’t going away.
When an organization behind MongoDB spends millions of dollars on investment on an open-source project while also seeking investment, it makes sense that there would be some anxiety when proprietary services like AWS (Amazon) and Azure (Microsoft) utilize the software without also contributing back to the codebase.
(One could be snarky and mention that this problem wouldn’t exist for developers of free libre software…but that isn’t changing the current market).
The Culture War
Steve Klabnik (@steveklabnik), a core developer to the Rust language, recently took stock on the culture war in the open source community.
"Somewhere along the way, Open Source ran into a problem that many movements face: the members of the movement no longer understood the ideology that created the movement in the first place."
While Klabnik has identified the, “rot,” affecting the culture as being endemic to and intertwined with its roots in the earliest days of advocacy for Free software, it’s important to consider the impact that the next generation has on the day-to-day.
The iGeneration?
Are we just a byproduct of the times? I often wonder if we embrace practicality as a means of rationalizing how broken the world can be. Is my generation focused on solving problems and finding fulfillment with the software we build? Or are we interested in padding our bottom line and egos by contributing to open source software with the expectations of compensation?
The truth is likely not to be found in swath generalizations. It’s true that some junior developers might not be knowledgeable about the philosophical background behind libre software culture and open-source culture, however, it doesn’t mean that developers aren’t thinking of the same problems.
The perspective has simply changed because the global, interconnected community of developers has expanded. Accessible educational materials on programming has contributed to the growth of developers from low-income and minority populations. I know, because, that’s how I became a developer.
Practical Programming
I suspect that programming for people like me is no more than a means to an end. For those who make a certain amount of money to feel income, housing, and job security, daily concerns might consist of wish fulfillment. Try convincing a programmer who’s struggling to make ends meet to care about why the software they use is free. They won’t care about language like libre and open-source - they care about the practical usage.
“Can I use this piece of software for free?” If the answer’s anything short of a solid, “Yes,” there’s a good chance they’ll just keep looking or roll their own solution. Many don’t have the experience in understanding license and copyright law. Many more are working for companies that hire them to accomplish a particular task.
It’s not that these people haven’t existed - the (welcomed) accessibility to educational material has simply expanded their representation within the broader context. More and more, people visualize the technology industry as a pathway to social mobility.
Is it Just Business
According to Tony Baer, Wall Street firms are turning to open source to avoid reinventing the wheel. The reason is simple: it’s cheaper. We live in an increasingly accessible world where the wealthtech industry is rapidly growing.
Why build a proprietary framework when you can find a robust piece of software on GitHub, with a commercial compatible license, clear documentation, and a strong developer community? The answer: open-source software is built harder, better, faster, stronger - at least in comparison to proprietary software that can require a large amount of capital and maintainence. When your software is closed, developers can’t learn how to maintain it until after they are hired.
Open-core is asymptomatic of the larger problem behind both incentivizing contributions and keeping full-time support as a practical way to make a livelihood. The more we see businesses embrace open-source for the practicality of a better bottom line, the further we move away from the heart of the culture. That heart, in essence, is closing.
What Next?
This is an ongoing discussion; it’s clear that open-source is going to remain in one form or another. Developers who are interested in furthering the conversation and have the bandwidth to do so will continue to question the balance between compensation and contribution.
Software is political in nature. The infrastructure of the internet is paved with open-source technology. Developers are embracing the community that open-source culture built and challenging the assumptions that have informed the conversation surrounding free software. If developers have a blurry understanding of what differentiates free from open-source, it doesn’t mean that either will disappear. It’s far more likely, that we’ll see new, creative approaches that attempt to balance the pragmatic needs and desires of developers with the desire to have free software. The developers that want to be compensated for their work might not have an easy time creating a system that is non-controversial and perfect, but, the conversation is happening.