Open Source is Discriminationthat’s the point, or at least it used to be
Open source discriminates against closed software. That was the point. But that’s not what you’ll hear these days. Or rather, that’s not what you’ll hear from the major foundations, industry rags, and “open source professionals”. Professionals like me.
These days, if a new open source license comes along that requires openness, but that kind of openness isn’t good for you, your clients, or your company, you don’t have to add it to your corporate-policy blacklist, curse the hippies under your breath, and pray it flickers out on its own. You can attack it as “not open source”, an apostasy unworthy of acclaim or cachet. Even though twenty years ago, open source would have been at your door with the pitchforks.
Just follow three easy steps.
How to Shun a Share-Alike License
Step One: Pick a vague, high-sounding snippet from the “Open Source Definition”, an edited copy of an edited copy of a generalist statement of principles drafted in private mostly by one guy. Avoid the criteria about specific needs of Linux distributions, like criterion 9. Go for the glittering generalities, like criterion 5 or criterion 6, the rules against “discrimination” toward “fields of endeavor” and “persons or groups”.
Step Two: Argue that the license discriminates against (is bad for) what you want to do—the “field of endeavor” of making closed software—or for you or your company—the “persons or groups” who are proprietary software developers and companies. If the terms of the license make that distinction, point to that. If the terms don’t make that distinction, say they’ll have that effect in practice. If the terms don’t say that and it’s not clear they’ll have that effect, say that’s what the author of the license secretly intends, anyway.
Step Three: When the author of the license counters that the criterion you cite is vague, that your reading is forced, that other important documents of free and open history contradict your line, that the Open Source Initiative and Free Software Foundation have approved or even written licenses that would violate your interpretation, or that the license should be judged standing on its own, and not based on what bad things you say about the author, ignore them. Declare there’s no “consensus” that the license is open source, because some people disagree. Do what you can to cast the author as a usurper, a conman, a Trojan with a horse to sell to “the community”, which sees it for an obvious fraud.
This is not a new play. It’s been run many times, by many players, in many forums. It’s not even the oldest in the book. But it’s by far the most popular these days. The meta of The Open Source License Game circa 2021 is clear: Say open source is open when it doesn’t discriminate against closed.
Telling the Difference
Part of the power of this play is that the nondiscrimination bits of the Open Source Definition have such a shimmering, high-minded appeal. Kind of like the Declaration of Independence, if you forget about the Articles of Confederation, the Constitution, and the worldly interests of the Founding Fathers.
“Discrimination” has a bad ring to it these days, because we associate it with gender, racial, religious, sexual, and other kinds of deplorable oppression. Who isn’t against discrimination? Isn’t open source good for standing strong against it?
Oppression requires discrimination, but oppression and discrimination are not the same. Only oppression is inherently bad. Discrimination can be overwhelmingly positive. It’s at the root of all morality.
Consider the banner example of deplorable oppression in the United States: racism. Enterprising “entrepreneurs”, all of them nominally Christians, discovered that enslaving Africans and their descendants could be highly profitable. So they propounded a social category—a lesser “race” of people, actually tons of different peoples with disparate languages and cultures—and taught others to discriminate on that basis. Having made the distinction, society could then oppress those it set apart. In time, the consequences convinced still more people that the distinction was valid, whether they profited from it or not, even though it was morally wrong, ultimately self-limiting, concentrated wealth, and scientifically bunk.
Another society might uplift those people instead, to offset the oppression they’ve suffered so long. That would also require discrimination: Who to uplift? Ideally, those who’ve suffered from oppression. But what does that mean in practice? Just the descendants of African slaves? Anyone of African heritage?
Discrimination can be good, but good discrimination isn’t easy. It’s rarely intuitive or popular—as any TV debate on affirmative action or reparations will show.
Similarly, though with far lesser consequences, an open source project might discriminate good and bad contributors, bestowing welcome, moderation power, technical leadership, and commit bit accordingly. This is what early free and open people celebrated as “meritocracy”, before it became clear that the particular kind of lazy, blinkered discrimination actually practiced online, as distinct from the mythical fair holistic contest of achievement, potential, and brilliance hackers found so flattering, had terrible social consequences. Good discrimination isn’t just intuition based on the obvious. It takes humility, subtlety, open-mindedness, and hard work.
As a result, the word “discrimination” used to have a nobler ring to it. It called to mind distinctions that were just, uplifting, and prosocial, rather than oppressive. Its connotation was closer to the feelings we now evoke with “discernment”.
A “discerning person” is one who can tell the difference—discriminate—in a good way that matters. Between high and low quality. Between truth and self-serving sales jabber. Between strong and weak arguments. Between just and unjust outcomes. Between fair and false dealing. It is hard to get one over on a discerning person. We rely on discerning people to keep things moving along in the right directions.
That is exactly what “free software” and “open source” tried to teach coders and businesspeople in software. There wasn’t just “software”. There was “free” or “open” software on one hand, and “proprietary” or “closed” software, on the other. Free and open software was better, and very possible, but relatively rare up to that time. Closed and proprietary software was worse, but all over the place. Don’t be fooled.
Having learned to discriminate between open and closed, free and proprietary, ethical and exploitative, good and bad, hackers, businesspeople, and consumers could choose to make open software, choose to use open software, choose to support open software, choose to promote open software. None of that would be good for closed software. After all, software could not be both open and closed. Standards would rise, and closed source would drown under them.
Once you learned to see the difference, you had to make a choice.
Change
The starkness of that view, and the speed with which it took over minds in the early days of the Internet, produced some memes that seem trite, even tribal, now.
Microsoft? Evil. SCO. Evil. Tivo? Evil. Software patents? Evil. Software as a Service? Evil. Most of the industry, it turned out, was evil. A view not unlike that of “Big Tech” now.
The absolutism of yesteryear makes it clear just how much and how little has changed since. Take a quick skim through the logos on the Open Source Initiative’s sponsors page, for example:
The towering behemoths:
- Amazon Web Services: uses open source to make a closed cloud platform, infamous holder of the “one-click” patent
- Cumulus Networks: open source routing, acquired by NVidia, who makes chips and such
- Facebook: uses open source to make a closed social network
- GitHub (now part of Microsoft): uses open source to make a closed social network
- Google: uses open source to make closed web services, previously including a social network
- Heptio: startup from the creators of Kubernetes, acquired by VMware
- IBM: integrator, reseller, enterprise jack of all trades, major patent holder
- Intel: chips and such, major patent holder
- Microsoft: major patent holder, most famous closed software vendor in the world, transitioning toward using open source to make closed web services, wants to own the whole software development stack
Smaller companies using open source:
- Craigslist: uses open source to make a closed classifieds site
- Daily Fantasy Cafe: uses open source to run a fantasy sports website
- Digital Ocean: uses open source to make a closed cloud platform
- Indeed: uses open source to make a closed jobs website
- Lineups: uses open source to run a sports data website
Companies that help companies use open source:
- 2ndQuadrant: sells support and consulting for open databases
- Command Prompt: sells support and consulting for open source databases
- Look to the Right: SEO and web development firm
VPN marketing, for some reason:
- Best VPN Service: VPN comparison site, runs on open source
- TheBestVPN.com: VPN comparison site, runs on open source
- Top10VPN.com: VPN comparison site, runs on open source
- VPN Compare: VPN comparison site, runs on open source
Random, vaguely tech-related stuff:
- Hand Wrist Institute: surgical center for carpal tunnel and the like
- USB Memory Direct: sells USB flash drives online
A couple defunct:
- {code} : website down, appears to have been an umbrella group for open developers
- Gratipay: open source web app for getting open source developers paid, startup, RIP
And finally, the actually open source:
- Bitergia: open source software development metrics tools, services for open source programs offices, foundations, etc.
- Handshake: open source peer-to-peer naming system
- Open Collective: open source web app, startup
- Rocket.Chat: open source web app, startup
- SalesAgility: consultants that develop open source CRM
All of these last are small.
Only a few of these companies make their core product or service open source, especially counting by size. The vast majority use open source to make a product or service that is closed, or to help others make products and services that are closed.
I suspect a sponsor list for the Linux Foundation, if I could find one, would skew even more heavily toward big public proprietary software companies. I haven’t clicked all the links, but the picture for Apache looks much the same.
Newspeak
In the new manner of speaking, this means open source has “won”. Nearly all software is open source, in the sense that it builds on open source, uses open source tools, relies on open source infrastructure, and loudly proclaims how awesome all this free stuff is for business. Microsoft sponsors OSI!
But that is exactly the opposite of the principled discrimination FOSS taught. There was no “software”, all basically the same, an amorphous gray slurry of pristine white open and oppressive black closed. Software was either open or closed. It could not be both, from the user’s point of view.
If you had to make closed software, perhaps to pay the bills, that was regrettable, if understandable. But no weaseling about how you used an open source language, open source libraries, an open source framework, or relied on open source services, or how much of your “stack” was open, beneath the thin oily film of closed code that people actually paid for.
Open being good, closed being evil, the question was how closed could become open. Hate the sin, love the sinner. Can you convince your boss? Could you demand it before joining the company? Could you found a competitor willing to take the leap? Not: How to cook the books and count it all for the cause?
Capture
For those who’ve been around FOSS a while, it might be easy to write this off as nothing new. All of this is can be hastily filed under “how free and open aren’t the same” or “open source sold free software out”. Unfortunately, there’s more to it than that.
Time is a factor, and free and open theory is nothing out of industry context. A new and different breed of firm is doing, wielding, and attempting to influence open source, as perceived and as practiced. There’s way more of them than there ever were before.
Gone are the days when “corporate open source” meant Tim O’Reilly and some hot IPOs selling consulting, warranties, and support contracts, or dual licensing. Those business models were largely compatible with a stark view of open source good and proprietary evil, as well as aggressive, activist-driven copyleft, as we knew it at the time. There wasn’t any sense trying to fly the flag otherwise.
Even if we believed those companies had too much influence, that they stumped for their own self-interests in definitions of “open source”, like users stumping for their pet features, those influences seemed benign. At worst, they overemphasized mere parts of the whole, missing the gestalt of the thing:
-
It’s not open source if O’Reilly can’t sell the book at retail.
-
It’s not open source if Red Hat can’t host and support it for The Enterprise.
-
It’s not open source if you can’t combine it with GPL code from MySQL, Qt, Artifex, &c.
When these companies produced software, if they produced software, they produced open source. So none of them had time of day to stump for firms that didn’t.
Not so anymore. These days, the angles look more like:
-
It’s not open source if AWS can’t make it their first-party service.
-
It’s not open source if it can’t go on GitHub, where anyone can fork it, even privately.
-
It’s not open source if
$HUGE_CONSULTANCY
can’t build it into closed products for clients.
There’s always been tension around permissive versus copyleft licenses. But at one point, the crowd-pleasing argument against copyleft wasn’t that it was wrong or pointless, but that it was unnecessary. Whether the license said you had to contribute back or not, that is what firms seemed to be doing, as often as was practical. The terms were different, but the effect was the same. Software was getting open, the way it should be. Slowly but surely, the movement was climbing up the stack, and would soon be crushing end-user apps with free alternatives and 90+% clones for everything from Microsoft, Adobe, and all the rest.
Those who still believe can hold out hope that someday the titans of industry will come around. Like the cult that believes God would come last year, but now definitely this year, and if not next year, certainly the year after that, a bright future is always expectantly plausible. For software freedom, and I suppose for The Linux Desktop, if there are still desktops that far down the line.
But it’s all becoming ever more difficult to square with the evident business trend. It’s more realistic to say that all popular software will be “open”, as we mean open today, if, only if, and when business figures out other ways to hold back control of its function to make money. The cloud giants publish a ton of open source, but an awful lot of it boils down to interfaces over their paid services, or strong inducements to sign up for and use more of them, instead of or in addition to the competition, none of which is “open” as in “open source”. There’s wrappers over the S3 HTTP API in every language I’ve checked for. As a whole, developers probably don’t need to use Kubernetes nearly as much as Google needs them to use Kubernetes.
There are folks (and firms) who are happy with the way “open source” is going now. They’ve paid the money, hired the pros, sponsored the events, and written the marketing strategies to steer it their way for the foreseeable future, through the institutional levers that were built to fit their hands. Largely foundations.
We could also plot trends and ask: For how long will these firms continue to invest in, or tolerate, definitions of open source that welcome meaningfully strong copyleft licenses, even old ones? GPLv3 was a fight, with all manner of companies threatening to fork or pull developers. AGPLv3 was another fight, and is still barely tolerated, if at all, in corporate open source policies. There’s an argument to be made that AGPL did more to convince proprietary software companies to mosey their way into the open source lobbying game than any major movement statement since the bubble went pop.
It’s all well and good to hold copyleft over for developer credibility, and for the occasional project for which you want patches back, rather than proprietary “open core” forks. But that’s not a lot of benefit, if there’s much of any associated cost. So much the better if activists, who might make a stink about it, have to do so through private blogs and personal social media accounts, rather than the big megaphone of an organization.
Conflict
If we accept that “open source” is and will mean the kinds that are good for business right now, we still have to ask: For whose business? “Business” in a competitive market isn’t one monolithic interest. It’s closer to the opposite. It’s constant conflict.
Hence the spectacle of this week, with dueling public companies, Elastic NV and Amazon, throwing punches over who is the truest open sorcerer. In one corner: a huge proprietary cloud software company hocking a permissive license. In the other corner: another, much smaller public company whose core product has source code we can actually see and hack, stumping for something stronger than AGPL.
At its core, this is a fight about whose interest prevails. The prize is whatever’s left in calling your stuff “open source” and having people nod along.
Both Elastic and AWS develop software. Does the developer closest to the user win, like the banker closest to the money? Or does the originator of the value, the expert in the code, take priority?
Or maybe it’s a fight between “developer” and “user”. But those roles are just as slippery. Is the “developer” the one developing the open source database, the one developing the cloud platform, or the one developing the application on that cloud platform? Is the “user” Amazon? Or perhaps Amazon’s customer, for whom Amazon will appoint itself to speak? What of the end user paying to use the product or service Amazon’s customer has built?
For all its head scratching “tactical” compromise and inconsistency, the ideology of the early free-open days offered a pretty clear position. The user that mattered was the last user, the end user. Everybody else in the chain of production was a developer. User trumps developer. Period. The notion of equity among developers, or of earning money, simply melts away under the rising sun of freedom. It’s an incomplete, unrealistic model. But it’s compelling enough to stoke real enthusiasm. It’s not the kind of pep talk you get at work.
In current, company- and developer-driver discourse about what “open source” does or should encompass, the end user isn’t really represented. Even those activists claiming the poor user’s name largely assume them to be a kind of developer, or potential developer, because that’s as far as free software theory ever got in widespread practical application. So “open source”, which claims to be or to inherit from free software, becomes just another marketing battle, another war of corporate blogs, social media drive-bys, budgets, and bull sessions. There’s nothing for end users to win there.
There’s no high principle, either, just Getting Ours. If that means Taking Yours, so be it. Meanwhile, all sides vie, in a way, to anoint their self-serving efforts in the last puffs of smoke wafting off the crumbled incense called open source circa The Year 2000, when open source provided all that bigger meaning and motivation you didn’t find on the job. The last wisps of a bygone, naive, beautiful, and utterly romanticized era, when all of us were twenty years younger.
When I look back, I see it that way, too. I was also younger. But when I piece it together bit by bit, from anecdotes, stories, struggles, plans, and projects, I see it more the way I believe it really was.
It wasn’t just a happy time of memes and list lore about freedom, quirky communitarianism, and productive conflict avoidance. It was just as much a time of brash, arrogant, idealistic hard-cases prying open the eyes of fellow developers and sending them out for a fight with the industry. The industry they knew they would have to repair and replace, bit by bit, either as it was before or in some new, hopefully better way.
We never found the way to make those worlds meet, for developers en masse to have their good paychecks and serve their broader ideals, too. We got a more evolved oral culture of vacuous “make the world a better place” startup pitches. We got fitter, meaner, more evolved business models, which ingest and metabolize open source like starved hyenas. But we never solved the whole system of accursed trade-off equations. That’s work still to be done.
Your thoughts and feedback are always welcome by e-mail.