July 3, 2020
Programmer Powerprying open “software freedom”
Nathan Schneider’s recent post on the ethical software movement reminded me about an old quip on open source from Andrew Ross quoted in E. Gabriella Coleman’s Coding Freedom back in 2006:
voices proclaiming freedom in every direction, but justice in none
That stung when I first read it, several years ago. It stings, if anything, more deeply now. Because it’s not just that free and open source people talk a lot of talk about freedom, and very little about justice. It’s that even when free and open source people talk about freedom, they don’t really mean freedom as such. They mean power, and specifically their own.
Pretend, if you can, that you never heard the phrase “software freedom”. Or replace it in your mind with some arbitrary placeholder, like “Macaroni”. Now pretend you work for a dictionary company and it’s time to enter “Macaroni” into the next edition. You head to your file of citations for examples of use in the wild.
Where do people use the term? Why do they use it? What do they appear to mean by it, not according to their own definitions, but according to usage, in practice? Your job isn’t to report what some community says a word means, but what they mean when they say it.
Overwhelmingly, “software freedom” gets used by programmers when the universe tells them “no”. Want to use that framework for a project at work? If the answer is no, for whatever reason, “software freedom” comes to mind. Bought a new gadget from the store and can’t turn off a feature you don’t like? If the source code isn’t available, you might complain of “proprietary crap” online. Can’t use that library to run a website without sharing all the code for it? Another “software freedom” violation, even if passing on the same privilege to competitors was never part of the plan.
Programmers invoke software freedom to say that they ought to be allowed to do what they wanna, other considerations be damned. The phrase “software freedom” helps them say this without actually saying it, because saying it directly, in personal, “gimme” terms rather than general, high-sounding “philosophy” terms, would come across as selfish, immature, and entitled.
Thus laid bare, software freedom boils down to a kind of avocational supremacy. The usual rules about permission, compensation, respect, and so on don’t apply, insofar as they’d apply to those making software. Software people, and their progress, über alles. Which explains why other kinds of people don’t go on about “software freedom” so much.
This hasn’t been hard to see unless you’re a programmer, in which case seeing it conflicted with your ego and your interests. The Bible of hackerdom, Stephen Levy’s Hackers, which a lot of us have read, calls it out explicitly:
In a perfect hacker world, anyone pissed off enough to open up a control box near a traffic light and take it apart to make it work better should be perfectly welcome to make the attempt. Rules that prevent you from taking matters like that into your own hands are too ridiculous to even consider abiding by. This attitude helped the Model Railroad Club start, on an extremely informal basis, something called the Midnight Requisitioning Committee. When TMRC needed a set of diodes or some extra relays to build some new feature into The System, a few S&P people would wait until dark and find their way into the places where those things were kept. None of the hackers, who were as a rule scrupulously honest in other matters, seemed to equate this with “stealing.” A willful blindness.
A traffic light is a critical public safety device. The System was a model train. The willful blindness was and is an ethical blindness. A highly convenient, self-imposed kind of blindness.
The hacker “ethic” looks the other way from, or even preempts and dismisses, the consequences of its own prerogative. If a license, a business model, a law, or a locked door stands in the way of what the hacker wants, it’s ridiculous, illegitimate, inconceivable, void. No genuine inquiry is made into the motives or circumstances behind the limitation. When a thought might be spared to those whose interests are about to be trounced, it’s usually to condemn them for some venal sin—greed, stupidity, backwardness, evil—rendering their abuse a just punishment.
In the most intuitive case, the fact that the maker of a product, service, or program needs to recoup costs or earn fair compensation becomes irrelevant, if not overtly despised. When such realities get acknowledged at all, the answer is often a hypothetical, futuristic, highly non-specific Utopian get-out-of-moral-quandary-free card. An imminent “post-scarcity” economy. A miraculously level field on which they, too, can pillage the non-hacker market. Universal basic income. And so on. Meanwhile, the futurist, the other side of the supposedly balanced moral equation, deserves just whatever they want right now.
In the end, the surest test of universal principle versus self-justification, of “software freedom” versus “programmer supremacy”, is transitivity. Those insisting on the benefits of “software freedom” for themselves rarely or never insist on those same benefits for others, especially others unlike them, with any urgency. Rather, they try to establish the universality of their principles not empirically, but by analogy to more broadly acknowledged, universal rights.
Hence, software is speech. The illiterate will be motivated, educated, or otherwise sorted out by history. At least until the question becomes whether software, including APIs, can or ought to be encumbered by intellectual property—a source of many “no” answers—at which point code is suddenly all function again.
Stallman and his school spoke of “users” by default and made ready analogy to free speech. But by users they thought mostly of themselves, and set users’ wants equal to their own. After all, everyone would be a programmer, or want to be. Those foolish enough not to couldn’t be helped, could be justly left to fate. Thus is the loop of chauvinism closed.
Others have paid rhetorical service to the emancipation of society more broadly, too. But only in vague hypotheticals, visions of imminent or distant promised futures. Often these strike a borderline millenialist, free-in-the-promised-land tone. Thus, when free and open source finally come to full moral fruition, eventually, hackers will stop drawing the line of freedom at their own front doors, or around the headquarters of their employers, and freedom will sweep o’er the land like a mighty wave. Never mind that the bounty of today is earned precisely by standing on the thin green line between Utopian communalism on the supply side, among programmers, data subjects, and contributors of free stuff galore, and the harsh, fish-gobble-fish, demand side of the market.
A great tide of freedom, incidentally, would be welcome not just outside of programming but also within it. For as we’ve seen, software’s injustices afflict not just helpless muggles but also a great many very helpful developers. Particularly those who refuse, often for well informed, eyes-open moral reasons, to take jobs working for, or selling into, behemoth multinational firms. Firms, as a rule, adept at gobbling up free tools, libraries, and frameworks, in order to make and keep leverage over those they monetize in one way or another.
On their face, the ethical concerns we’re hearing in software these days differ markedly. What does financial inequity among fellow tradesmen have to do with the malign uses of software to profile civilians, stoke hatred, or pen refugees into camps?
A common root. When we give ourselves permission to trample others, and reinforce that self-serving indifference with a compelling slate of enabling myths, we’re as liable to wrong our own kind as any other.
Your thoughts and feedback are always welcome by e-mail.
back to top — edit on GitHub — revision history