Open Source Explained
This is a free lesson in the concept of ‘open source’, in the broadest definition of the term.
It is also an invitation to become a participant in and contributor to The Commons: our common wealth of knowledge as conscious beings.
An expansive list of resources for further reading is provided in the Open Source Curriculum. This document is a synthesis of all the free teachings therein.
v1 of ‘Open Source Explained’ has been written by Erlend Sogge Heggen. I am often writing in the first-person. My aspiration is to write v2 as a collective rather than as an individual; please get in touch!
What is open source?
The term ‘open source’ started in software development, but it is applicable to anything. If a thing is open source, first and foremost it means you have access to its source code — what makes that thing tick.
If a thing is open source, it means that the source code of that thing is available for insight and editing, and may even be copied, repurposed and shared with others under certain conditions.
Here is an open source recipe for making popcorn:
- Put some cooking oil in a thin and shallow pot
- Bring it to medium heat
- Put a handful of dried corn into the pot
- Gradually increase heat until the corn starts popping
- Add any flavoring of your choice
That is a food recipe code. Everything in our knowable world is made up of some type of code, it’s not just computer programs:
Our music is composed of note codes.
Our judicial system is made up of legal codes.
Our government is a big ol’ pile of bureaucratic codes.
Our educational system abides by pedagogical codes.
Our DNA is one long genetic code.
Most dictionaries will give the impression that open source as a concept exists primarily for software, but that would be a massive waste of its potential. I did find one that I liked:
pertaining to or denoting a product or system whose origins, formula, design, etc., are freely accessible to the public.
Closed source is the conceptual opposite of open source:
- intellectual property, esp computer source code, that is not made available to the general public by its creators.
In other words, closed-source products belong strictly to the people who made them, whereas open-source products exemplify various forms of collective ownership.
The commons is a new way to express a very old idea—that some forms of wealth belong to all of us, and that these community resources must be actively protected and managed for the good of all.
The commons are the things that we inherit and create jointly, and that will (hopefully) last for generations to come. The commons consists of gifts of nature such as air, oceans and wildlife as well as shared social creations such as libraries, public spaces, scientific research and creative works.
Essentially, The Commons is the big, bottomless bag of things in the world that we all have equal ownership of.
I like to write it capitalized because it deserves the same legitimacy we give to our physical cities and countries.
Back in the Stone Age, the vast majority of things belonged to The Commons. Today it is no longer the default. Everything has been divided up as people’s property, some with obscenely much more than others.
Because of this grossly uneven distribution, it’s far too easy to perceive the world in terms of scarcity rather than abundance. The haves and the have-nots.
If you live in a world of scarcity, it makes sense to carefully guard any thing you have that can be considered valuable.
This is where software and the internet revolution performs one of the greatest magic tricks in history, by making certain forms of value creation incredibly cost-effective and scalable.
Openness according to software developers
In the world of computer code and software development, we contribute most commonly to The Commons by making our computer code open source. That means we are sharing the source – the inner workings – of our computer program, out in the open, for anyone to look at and remix.
This enables us to understand and change how our many digital and physical gadgets work. And when our gadgets are increasingly in control of our lives, this is a big deal.
The communities that have formed around computer code and its resulting software applications have become quite advanced in their discourse on ‘openness’, in large part because clear definitions of openness in code has major business applications $$$.
Thus, we’ve got specifications and protocols that describe varying degrees of openness in software, so that we may all collaborate with ease and move fast. It has made our industry eat up the whole world, nations and all.
The vast majority of software companies are built on the foundations provided by open source code. But most of these companies are profit-first rather than value-first. For the opportunists and profiteers, their involvement in open source practices is merely coincidental, not out of a sense of obligation to The Commons.
They’re not about progress for all, they’re just about progress for themselves.
If you want to go fast go alone. If you want to go far, go together.
People in tech still have a lot to learn about openness as an innately human, emotional trait. Most of us got unusually comfortable with machines exactly because we had an easier time making sense of 1s and 0s than our selves and fellow human beings with our soft, squishy innards.
There’s a lot you shouldn’t learn from software developers. Most things in fact. But the practice of open source as it applies to your life and the world around you is a conceptual understanding you don’t want to be without.
Source code access
Having access to the source code of a thing means seeing exactly how that thing operates. Oftentimes those things are the products that we purchase when we play the role of consumer. We purchase these products – like a car, a house or a smartphone – believing we’ve made a payment in exchange for total ownership of a given product. But if you do not have access to the source code of the product you bought, you only have partial ownership of it.
For a house, that source code is its blueprint, construction specifications and list of materials used to build it.
For a car it’s the many mechanical parts it’s made up of, what they all do and how they fit together. It’s also increasingly about the computer code that powers the car’s many microcomputers.
For a smartphone it’s the tightly intertwined combination of hardware and software. The source code of the hardware (everything from its exterior metal casing, all the way down to microchips the size of a fingernail) would be schematics of how these components are built. The source code of the software (the operating system, like Android or iOS, and the apps that run on top) is plain computer code, i.e. open source software.
Of course, all the things mentioned above are composites of other, smaller things, which in turn also need to be open source if you want true, 100% ownership. But it’s fine to make some concessions here, as long as our production chain doesn’t rely on closed black-boxes with a disproportionate amount of power.
(“How I built a toaster — from scratch” (TED talk) perfectly demonstrates the complexity of our modern production chains.)
The source code of everything
As members of society we have a legal right to insight into many of the things in our daily lives, albeit only a partial one in most cases:
- Food contents
- Garment fabrics
- Building blueprints
Some things, commonly artifacts of knowledge, are nearly as open as they can possibly be already:
- Most scientific discoveries
- Most religious scriptures
- Books, music and films that have been released into the Public domain.
Your insight into these knowledge resources is unrestricted, but how you may re-make or re-purpose these resources is subject to formal or informal rules.
A book in the public domain is as open as it gets, because the text of the book is the source code.
By contrast, a musical composition is not yet as open as it can be if all you’ve got is a sound recording. You may be allowed to remix and share this particular recording in whichever way you’d like, but in order to play this musical composition with your own instruments and orchestra, you need the musical notes. In other words, the code of the music.
A gifted musician might be able to recreate all the notes of a sound recording simply by listening carefully to it, but they’ve effectively obtained access to those notes in spite of that composition’s lack of openness.
We do this in software as well. A program that is closed source can be ‘reverse engineered’ by closely studying its function and wholly remaking it anew, without any insight into the closed bits. A functional replica.
Understanding ownership is power
It’s important to understand the codes in your life, because your life is made up of them. Once you understand which codes you already have access to and even the right to inspect, you can see more clearly which other codes you ought to have insight into.
Most importantly, from my limited point of view as a digital native, we must be able to inspect our digital tools. Our apps and devices of daily convenience have become so advanced that they are extensions of our brains. Incredibly powerful, deeply embedded mind-extensions.
If we do not have clear insight into these devices, we are not in total control of our own minds.
From closed to open and beyond
Software developers have a clear distinction between ‘open source’ and ‘closed source’ software.
Open = source code is available and altering it is allowed.
Closed = source code is unavailable and altering is disallowed.
Distinguishing closed from open
Imagine yourself buying a beautiful compass, so you may traverse the world with greater ease.
If you are sold just a compass, you have received a closed source product. It works, but it is sealed shut and you do not know what goes on inside.
All you’ve got is this compass-gadget that will eventually break. And when it breaks, you’ve got two options:
1. Find the compass-maker and hope they’ll agree to fix it or give you a new one.
2. Make peace with no longer having a functional compass.
When the compass-maker is nowhere to be found, or a mutually fair trade could not be established, you’re left with the 2nd choice.
If the compass was merely used as a toy, you’ll get by fine. But if the compass was enabling you to do great things, and even more greatness would happen if more of your peers also had a compasses of their own? Well, then a big opportunity is missed by not having access to the product’s source code.
If the compass-maker gives you an unsealed compass and the instructions on how to make one yourself, you have received an open source product.
As it turns out, the compass-maker’s main innovation was making the compass look, feel and function more beautifully.
How to make a compass is already common knowledge. Anyone can make their own compass, for example with the following items:
- Sewing needle about 1-2 inches long
- Small bar magnet or refrigerator magnet
- A small piece of cork (a flat piece from a wine bottle works but make sure it is cork and not plastic)
- A shallow bowl
With those items plus the linked instructions you can make your own compass. The extent to which you can re-make a compass that looks and functions exactly like the one you’ve bought comes down to how open that compass-product is.
Degrees of Openness
Continuing the compass story:
Example 1: Minimally open
Let’s say the compass-maker – henceforth known as the ‘artisan’ – tells you the following:
“Along with this fully functional compass, I have included the instructions on how to make your own compass. Your self-made compass will function according to the same exact fundamental principles as the compass I’ve sold you.
However! you do not get the instructions on how to make a compass that looks, feels and functions quite as well as the compass being sold.”
The artisan does this – as a perfectly rational actor – so that they won’t be without a job. The artisan spent a great deal of time learning and figuring out how to make the compass look, feel and function more beautifully. If they give away all the secrets of their craft without delay, these beautiful compasses will be so easy to re-make by anyone that there would quickly be no demand for the artisan’s wares.
Besides, the compass can still be opened up and taken apart to learn how exactly it works, i.e. by reverse engineering it.
Example 2: Very open
A somewhat more open version of this would be that the artisan says:
“Along with this compass I’ll give you the instructions on how to re-make the entire thing, down to the last notch.
However! Do me this courtesy: Only share these instructions peer-to-peer, one individual to another.”
Example 3: Maximally open
A fully open version of this would have the artisan saying:
“Along with this compass I’ll give you the instructions on how to re-make the entire thing, down to the last notch.
No strings attached. Please share this knowledge as widely as possible. You need not worry about me, because (...).”
Some product-makers can fill in the end of that sentence, others can’t. The constraint is usually not ingenuity, but quite simply the reality of current conditions. Not every product can be fully open upon initial sale whilst also sustaining its original invention and continued development.
At what point does a house that you supposedly “own” go from being ‘closed source’ to ‘open source’?
What does open source baking look like?
What does open source schooling look like?
…let that ball roll as far as it’ll go.
Origins of open software
A 5-minute history lesson on open software licenses and their tribes.
Before we can talk about the future of open source, we must attend to its past. The historical dramas of open source helps us understand what needs healing in order for us to move forward as a unified community again.
The beginnings of what is now most commonly referred to as ‘open source software’ was an earlier movement that coined the term Free Software. While it’s mainly about free-ness akin to ‘free speech’ and not necessarily about being ‘free of charge’, the latter is almost always the case as well.
By the 1980s, almost all software was proprietary, which means that it had owners who forbid and prevent cooperation by users.
In response to the prevailing trend of closed software, a group of liberal-minded technologists devised The Free Software Definition. Think of it as a “Declaration of Code Freedoms”. It goes like this:
A program is free software if the program's users have the four essential freedoms:
- The freedom to run the program as you wish, for any purpose.
- The freedom to study how the program works, and change it so it does your computing as you wish. Access to the source code is a precondition for this.
- The freedom to redistribute copies so you can help others.
- The freedom to distribute copies of your modified versions to others. By doing this you can give the whole community a chance to benefit from your changes. Access to the source code is a precondition for this.
Along with these principles came the first standardized and open software licenses. That’s a piece of text that explains the conditions under which you may use and remix that software program.
A license can be created for anything, not just software. For a simple example we can look at the Creative Commons license, which is widely used for artworks like music and illustrations.
Here is the ‘Creative Commons Attribution 4.0 International Public License’ – or CC-BY for short – in its entire human-readable (not legalese) form:
You are free to:
- Share — copy and redistribute the material in any medium or format
- Adapt — remix, transform, and build upon the material for any purpose, even commercially.
The licensor cannot revoke these freedoms as long as you follow the license terms.
Under the following terms:
- Attribution — You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
- No additional restrictions — You may not apply legal terms or technological measures that legally restrict others from doing anything the license permits.
Traditional companies selling closed-source software have their own company-specific licenses. The terms basically say: “You’re allowed to run this program, and that’s it. Don’t try to look inside or attempt to make any changes”.
The new breed of open licenses that sprung forth in the 80s on the other hand could be used by anyone, private or corporate. Just copy the text, include it with your code collection whenever you’re sharing it with someone and presto, you’ve applied a formal license-of-use to your software.
“Free software” means software that respects users' freedom and community. Roughly, it means that the users have the freedom to run, copy, distribute, study, change and improve the software.
These principles and accompanying software licenses have been adopted by some of the most widespread software applications in the world. Chief among these are the Linux operating system (powers 95% of the internet’s servers, as well as all Android phones) and the WordPress website builder (powers 40% of all websites on the internet — second place is at about 5%).
The Free Software Foundation believes that all software should be free in accordance with the four essential freedoms. It’s an honorable aspiration, but it’s been proven unfeasible in our current model of society.
Selling a free thing
While products like Linux and WordPress are free for users to study, run, change, copy and distribute, they are still run as major commercial projects. In the case of these projects it’s relatively easy to balance complete openness with commercialization, because these are server applications. As such, it’s easy to turn them into services that run on privately controlled servers that charge users for access.
WordPress.com will happily let you set up your website without a single mention of it actually being powered by free software that you could operate on your own computer should you choose to do so — but honestly you should just use their service instead, it’s much easier. The openness of their product means you can take your whole website and leave whenever you’d like, should their serviced alternative ever turn bad. You can see how this is an incredibly powerful consumer protection.
It’s quite telling that while Linux has over 95% market share on servers (the place where all the cat pictures are stored and streamed out from), while its market share on desktops (PCs & laptops) is a dismal 2%.
Free and open source software is increasingly dominant on the world wide web, but closed software still rules supreme on all the devices in our homes. That’s because it’s incredibly hard to commercialize free software that just lives on your device, rather than in some server you need to connect to.
That’s not to say these projects aren’t amazing; they are. Probably the greatest indicator of how these projects are different from your average corporate behemoth is how there is no “Linux Company.” or “WordPress Company”. Instead there’s the Linux Foundation and the WordPress Foundation, both of which are comprised of large consortiums of companies with common interests.
An unprecedented feat of global collaboration in service of a shared commons.
Freedom vs Openness
In 1998 the Open Source Initiative was founded, effectively as a spinoff of FSF.
The conferees believed the pragmatic, business-case grounds that had motivated Netscape [the precursor to Mozilla Firefox] to release their code illustrated a valuable way to engage with potential software users and developers, and convince them to create and improve source code by participating in an engaged community. The conferees also believed that it would be useful to have a single label [open source] that identified this approach and distinguished it from the philosophically- and politically-focused label “free software.”
The OSI branded itself as more pragmatic and business-friendly. They did not share the FSF’s fundamentalist view that absolutely all software should be freely available under the same stringent terms. The founding members of the OSI wanted to enable the release of software with a mix of open and closed source code.
Along with a list of OSI-approved licenses, they drafted The Open Source Definition.
It is important to note that this is not the definition for ‘open source’. There is no central authority for the term, so there is no official definition. No one can claim to own the term ‘open source’, just like no one can lay a claim to words like ‘swimming pool’ and ‘computer’.
Fast forward to 2020: The grand total of OSI-style licensed software now far outweighs FSF-style licensed software, proving that there was indeed a greater appetite for more permissive software licensing that doesn’t prevent you from coupling your open source application with some sort of commercial layer.
Open source is on the rise, but if we stop innovating on open source licenses now we’ll be doing ourselves a great disservice. OSI and FSF are both winners. Both can point to multi-billion dollar industries built around the principles and foundations they have set forth. We also wouldn’t have the trillion-dollar companies of today if they weren’t supercharged by free and open source software, but that’s not really a point in their favor; quite on the contrary.
Open Source is a privilege
Privilege has a strong correlation with openness.
With greater privilege comes greater capacity for openness.
Sadly, not all people with great privilege make use of that extra capacity.
On the other hand, for some greatly unprivileged people, openness is their only choice. In the face of violence and death, openness becomes the only reasonable thing left to do.
When openness is vulnerability
If open source is just an obviously better way to build products, companies and governments, why aren’t we doing more of it already?
Simple: It’s really scary to be open. It can even be legitimately dangerous. Sharing a part of yourself in the open makes you vulnerable. A part of your soft underbelly is exposed.
Openness is the willingness to tell people your story.
Vulnerability is your willingness to let others be part of it.
The fear of loss, in one form or another, is the motivator behind all conscious and unconscious dishonesties: all of us are born to be afraid of loss, in all its forms, all of us, at times, are haunted or overwhelmed even by the possibility of a disappearance, and all of us therefore, are but one short step away from dishonesty.
~ David Whyte, Honesty
If you’re a company, you’re not supposed to have any vulnerabilities.
If you’re a person, you might have experienced feelings of hurt that you’ll avoid at almost any cost.
Being 99% open is an immense privilege. I’m personally in this position because I’m exceedingly safe. Economically, emotionally, politically, spiritually… My Maslow pyramid is all filled up.
In a kinder, more compassionate world, I think one’s degrees of personal openness could look like this:
- 99.99% open with life partner(s)
- 99.9%: closest friends and family
- 99%: the general public
But for most people, it’s much lower than that. My most conservative guesstimate might still be a far too hopeful one:
- 99%: life partners
- 90%: closest friends and family
- 10%: general public
And I’m not talking about whether your partner knows what you had for breakfast every single day of your life. I’m talking about the extent to which they know the fullness of your character.
I have the immense privilege of not having to obfuscate or lie about my age, work, salary, gender, sexuality, skin color, ethnicity, nationality, politics or religion – to the general public! For the vast majority of people, at least one (often many) of these identifications is something they are not at liberty to talk openly about.
I can reveal just about anything about myself (but no, you may not have my credit card information) because I have no enemies. Sadly, a lot of people can’t say that.
Most people, corporations or products can’t be entirely open, because it would make them too vulnerable. Their enemies would find a way to hurt them through that opening.
Thankfully, modern companies are finding ways to incorporate their openness into their holistic business model. They’ve devised ways to turn openness into a competitive advantage.
Human beings have been working on this openness thing since we first started consciously communicating a million years ago, and we are getting vastly better at emotional openness with every generation. People 10 years younger than me tend to be more open-hearted than people 10 years older than me.
Making the rich even richer was definitely not part of the original ethos of the open source movement. Most open source software has been built on the backs of people enjoying privileged lives with an abundance of free time to satiate their intellectual curiosities. Volunteer value contribution also helps lessen the guilt induced by being in the group of people who just lucked out with the life-ride we were put on.
That’s not to say sacrifices haven’t been made. Open source is also built on contributor churn; burnout.
We can’t have a movement that grew out of privilege and suffering become an amplifier of more privilege for those who already have the most, and more suffering for the underprivileged! That’s a very bad look for us aspiring movers. And it would make obvious that what we thought of as “intellectual curiosities” might’ve just been ’pretending to be intellectuals by making up puzzles for ourselves to solve’.
How much of our “progress” is really just little distraction machines that we built to keep our brains from going too quiet and introspective.
We will know our movement is succeeding if we are contributing to privileged wealth being widely and equitably distributed. We will know we have failed if the status quo remains unchanged, and the powers-that-be remain comfortably seated.
Updating the rule books
If we treat the definitions of old as holy texts that shall never be revised, we will be stuck with old, dogmatic ideas that cannot stand the test of time.
This is already painfully evident in the OSI’s Open Source Definition. In pursuit of simplicity, their definition chooses not to deal with some common philosophical paradoxes, such as discrimination.
Can I stop “evil people” from using my program?
No. The Open Source Definition specifies that Open Source licenses may not discriminate against persons or groups. Giving everyone freedom means giving evil people freedom, too.
Open Source as a Force For Good
..and the open source nazi problem.
So we’ve made this beautiful new cog that makes various types of machines faster. At first it’s great. People’s machines of LOVE❤️ are running faster than ever, generating and disseminating more love for all.
Then, a HATE🤬 machine starts using our cog to spread its hate faster. We want to tell the makers of that terrible machine:
“NO! This invention is not for you. We do not support what you are doing with our cog. We hereby revoke your right to use it.”
But we can’t say that. We relinquished that right when we started distributing our cog under an open source license (in accordance with the OSI definition).
The act of inaction
The cog story doesn’t need to be told in the abstract. Discourse was faced with this exact conundrum, as have most other open source projects that reach widespread use. The free, self-hosted version of Discourse was put in use (they’ve since switched platforms) by one of the most prominent white supremacist, neo-nazi communities in the world. And because of our GPLv2 license, there was only one course of action available to us: Do nothing.
Is it enough for the open software movement to stand for nothing else than openness as an absolute? Is openness on its own enough of a force for good that we can justify keeping the definition of open source as simple as it is? I’ve long since stopped believing that.
When a tool I helped make is turned against my friend with malicious, even murderous intent, and my friend asks me “why are you letting them use your tool this way?”, I will no longer respond “because that’s how open source works” as if that sufficiently explains it.
Abolishing machines of hate
Remember that cog we made? Let’s say our cog is deployed in 1,000,000 LOVE❤️ machines, and 100 HATE🤬 machines. If we can come up with a way to exclude only those 100 machines of hate, without impinging on the freedoms of the 1 million machines of love, shouldn’t we do that?
Even if we have to leave a few of the less egregious hate machines running just to avoid an overreach, abolishing most of them would still be a huge win for both ethical openness and social justice.
Aspirations of free speech
Do you want to live in a society where no one is discriminated against? I sure do! Here’s the problem: In order to deter harmful discrimination, it is necessary to discriminate against those who mean harm. It’s a paradox, so holding it in our brains can be a little bit painful. But it’s worth it, and it’s nothing new.
Nations across the world have decided it’s not that simple when it comes to Free Speech.
Even this beautifully succinct principle — which arguably leans heavily towards good — still comes with some very necessary exceptions. We disallow hate speech, or at least we try to. And if you want to disseminate information about something that can be damaging if done in excess, such as tobacco or alcohol, we have strict rules for how you’re allowed to advertise such information (though of course the rules vary depending on your place of residence).
Free speech isn’t an absolute, it’s an aspiration. We aspire to uphold the principle of free speech to its logical extreme, while acknowledging that abusive applications of this principle must necessarily be limited. We can’t have free speech in the absolute before we’re living in an absolutely hate-free society.
The same applies to open source. We need to get our hands dirty and re-imagine our open licenses for a world where technology does not exist in a vacuum.
Simplicity is always worth striving for, but it’s not the right place to start.
There is only one quote short and memorable enough for me to remember it verbatim:
“I didn’t have time to write you a short letter, so I wrote you a long one.”
First we have to address the complexity of our diverse realities. Then we can gradually work our way down to simpler, more universal truths. Start with a long letter, then shorten it down to its essentials.
The Future of Open Source
Commercial Open Source Software is very much a thing.
Yet the movement is divided across tribal lines. The clearest line in the sand is drawn by license factions — people of different belief systems rooted in software licenses. Open software developers sort themselves into tribes defined by whichever software license and parent organisation they identify most with.
The perceived separation between us happens because we fall into the trap of thinking “the freedoms (license conditions) that worked well for me must work for every other person”.
The traditionalists say “we don’t need more open software licenses!”.
The radicals say “we need as many well-written open licenses as we can possibly get our hands on!”.
Author’s note: I suppose I belong with the radicals, though I do not consider my stance to actually be radical in the slightest, since license diversity is very much in line with the spirit of open source development. And I’m definitely not looking to pick a fight, or take a piece of anyone else’s pie. I wanna help make the pie bigger for everyone. We must shed our scarcity-mindset and champion openness as a single tribe.
In the last few years we’ve been seeing a new strain of open source licenses emerge. Traditionalists do not agree with me calling these licenses ‘open source’, but that seems like the most apt description to me. I’ve offered up two of my own tiny definitions of open source in the introduction of this book. Here they are again, remixed into a single definition:
Open source is the sharing of the source – the inner workings – of our things; out in the open, for anyone to look at.
If a thing is open source, it means that the source code of that thing is available for insight and editing, and may even be copied, repurposed and shared with others under certain conditions.
There is a great deal of experimentation going on among those who interpret the meaning of open source along these lines. Here are some examples:
Anti-overwork, Pro-wellbeing license
The 996 license was drafted by Chinese developers, aimed at disrupting “996 culture”, a 12-hour, six-day work schedule common among startups around the world.
Anti-capitalism, Pro-equity license
The Anti-Capitalist Software License lets you do whatever you want with the software, as long as it is not for capitalistic purposes.
Anti-competition, Pro-business license
The suite of PolyForm licenses are different variations of “non-commercial users can do whatever; commercial users must make a deal with us”.
Anti-evil, Pro-good license
The Hippocratic License lets you do whatever you want with the software, as long as you are in “Compliance with Human Rights Principles and Human Rights Laws” as set forth by the United Nations.
Most excitingly, these licenses are human-centric, as opposed to the extremely code-centric licenses of the previous decades. Many of these new licenses have not been tested legally and may not hold up under closer scrutiny and real world use, but the ideals they aim to uphold are very necessary additions to the open source licenses of the future.
There is a singular condition that necessarily precedes all other definitions and principles for free and open software: Source code availability.
Did you notice how the [four freedoms](https://en.wikipedia.org/wiki/TheFreeSoftwareDefinition)_ keep saying “Access to the source code is a precondition for this [freedom].”? We just don’t get very far without source code access.
This particular freedom is special:
The freedom to study how the program works, and change it so it does your computing as you wish. Access to the source code is a precondition for this.
Unlike the other ‘freedoms’, insight is not just a legal story, it’s the difference between knowing and not knowing. When we have insight, we have unlocked the possibility to do whatever we want with this code, legal or not.
If running some code would assuredly save a life, I have a moral obligation to run that code, even if I am not legally allowed to run it.
When the source code of an application is available for view, the most important job is done. The black box has been cracked open and added to the permanent archives of The Commons. The conditions may say “for viewing purposes only; no editing, copying, remixing or redistributing allowed”, and we will play along, provided the rules of the game seem fair at the time.
Open source codes exist on a spectrum of openness. We can’t quite seem to agree what openness taken to its logical extreme should ideally look like, but the modest beginning on the other end is simple and clear-cut:
Open access to the source code of your thing.
On the spectrum of openness
Open source codes exist on a spectrum of openness.
We can’t quite agree on what openness taken to its logical extreme (maximally open) should ideally look like. Is the MIT license (or its modern alternative, Blue Oak) the most open, since it allows practically everything? Or is the GPL more open, because it enforces continued openness downstream?
I don’t know the answer. But the modest beginning on the other end of the spectrum (minimally open) is simple and clear-cut: Open access to the source code.
As such, source code availability is the singular condition that necessarily precedes all other definitions and principles for free and open software. It is where the switch from closed to open happens, and the difference is literally night and day.
Source-available is the beginning, not the end
I’ve no idea how much more closed source software is running in the world compared to open source, but I’m guessing closed software is still in the overwhelming majority, to the tune of 70-90%. We can’t really know, because closed software is by definition kept secret from us.
Let’s say closed source software currently makes up 80% of all software, and open source software (including ‘free software’) makes up the remaining 20%.
Can we all agree that a great first step would be to turn the biggest possible chunk of that closed 80% into source-available code? Once we have insight into most of that 80%, we can commence our bickering over how much more open all these source codes ought to be. The steady march towards sustainable, maximal openness continues.
Source-available licenses are not encroaching on the market share of open source. For applications like Defold, Aseprite or EPPlus (listen to their story), traditional open source licensing simply wasn’t an option for them. Thankfully, source-available licensing enabled them to still exist on the spectrum of openness, rather than having to be yet another closed black-box for the sake of sustaining their project.
Right to insight
The ability to inspect the thing you’ve paid for (whether with money or your data) should be your right as a member of society, just like you already have a right to know the contents of the food you eat and the garments you wear.
It’s especially important that you have insight into the most mind-altering applications in your life: Social Networks, AI, games…
Imagine if Facebook, by law, had to publicly share all their social engineering codes (algorithms and data collection methods) 3 years after they’re first put into active use. If they did something unethical in their codes we wouldn’t know right away, but three years later we would. Setting this up in such a way that they can’t wiggle out of their commitment 3 years later is technically very easy to do.
Do you think Facebook would treat you to the same, inhumane algorithm codes and data collection codes they do now, if they knew we’d have complete insight into those codes 3 years from now?
Facebook and most apps like it can’t be fixed without moving away from their ads-based business model by eradicating ads entirely and charging by subscription, but many of the dangers it poses to our society in its current form can be made harmless by cracking its black boxes open.
Taking back ownership
I expect we’ll eventually have the equivalent of a ‘Fair Trade’ certification for ‘Open Source things’, starting with software and smart-devices, but ultimately every single thing we are able to assemble. When that comes, I strongly recommend that you only use the Open Source stuff whenever it’s available and of reasonable quality. And if your favorite app or gadget isn’t open source, campaign for that to be the case.
Is this application open source?
How open is it?
Take ownership of the technology that is becoming increasingly embedded into your life and the very fabric of your being.
My biggest hope is that you’ll take the extra step, and get directly involved.
Joining the contribution chain
I can’t think of anything more fun and gratifying than building something beautiful together with other like(but-not-same)-minded people. The open source projects I’ve worked with have always felt a whole lot more meaningful to work on than anything veering too far from the open source ideals. Open source practices mesh very well with intrinsic motivation.
It’s not hard to see how our
- Facebooks and Amazons,
- Googles and Microsofts,
- Apples and Samsungs,
- YouTubes and Tiktoks,
- [insert yours]
…would be a lot better for us and for the world if most of a company’s codes were auditable by the public.
And it’s not just about computer codes. Companies also have culture codes, legal codes, ethical codes, financial codes and many more.
We need to demand insight into all of it. Whatever your nerdy interest might be, there will be codes for you to scrutinize.
Any mega-platforms that are beyond repair we’ll just have to re-make ourselves.
As our society’s collective understanding of user-owned data and tools for self-assembly improves, we appear to be reaching an ever-higher consensus on openness and transparency as a great way to fight greed and corruption.
We understand intuitively that we want openness in our technology just as much as we want openness in our personal relationships, as well as our politics, economics, education and other grand-system inventions that deeply influence our lives.
I’d very much like the 2020s to be the decade when we decided to hold products, companies and governments to a higher standard, and restored majority-ownership to The Commons.
Open Product Recipe
How to turn an open source product into a commercial challenger is no longer a mystery.
All other things being equal, an open source product is objectively better than a closed source alternative, due to its accessibility and reduced lock-in. And it will be continuously better going forward, because an open product inherently invites greater product innovation.
A closed product simply doesn’t get as many minds involved in the act of product development, thus stagnation is an inevitability.
The challenge for an open product is to build a business that can sustain continued product development whilst incentivizing continued openness. By now the most basic recipe for making a successful Commercial Open Source Software company is quite straightforward:
- Have some domain knowledge and a real itch for improving the status-quo of that domain.
- Identify the most successful closed-source product in that domain.
- Replicate the core offering of that closed-source product as an open product.
- Make a better product by means of open source methodology and complaint-driven development.
If your product is at least as-good as the closed-source incumbent where it really matters (80/20 principle), you’ve secured yourself a minimum of customers who will prefer your product solely on the merit of its openness and lower lock-in. That on its own is never enough to become truly competitive with the incumbent, but it’s enough to get a solid footing.
I’m not advocating for cheap knock-offs here. I’m talking about legitimate iterations in pursuit of product improvement. The vast majority of closed source products would not exist without their open source foundation, and some even came into existence as a reaction to an open incumbent that had failed to capitalize on its early success, like Slack succeeding IRC.
No going back
This strategy of core-product replication is now being used successfully by many COSS Companies to carve out a space for themselves in a contested market.
- WordPress vs Movable Type
- Discourse vs VBulletin
- Mattermost vs Slack
- Strapi vs Contentful
- GitLab vs GitHub
- MeiliSearch vs Algolia
- Baserow vs Airtable
- Sentry vs New Relic
- PostHog vs Amplitude
It’s quite telling that this doesn’t happen the other way around. Once a product-archetype has been “broken open” by means of an open product achieving dominance, it’s incredibly hard for closed challengers to gain back any meaningful ground in that market segment.
Ever since WordPress displaced Movable Type as the go-to website builder, open source has remained the default in this industry, with WordPress firmly on top. The only way to challenge WordPress in the website builder game (blogging is different because it relies on networks, so closed platforms have made inroads here) is by making an equally open alternative with a novel take on the same problem. Strapi is an example of this.
Of the companies listed above, some have already become market-leaders, while others are well on their way. There are also those who won’t not make it, but, in time, another open alternative surely will; in no small part thanks to its open predecessors. The more the merrier!
Business models for open products
There’s no one-size-fits-all for sustainable, open product development. Models differ depending on product segment (e.g. infrastructure vs application products) and values (company-run vs community-run). But it all boils down to the same thing:
Dare to build in the open.
I don’t care which model you pick. As long as your mission is to open up something that is currently closed, I wholeheartedly support your endeavor and will gladly respond if you reach out to me.
At its most basic, open source is a great delivery mechanism. Making something free – in the widest sense possible – is the best way to get your product in front of people, whether it’s a thing or a thought or something else entirely.
At its very best, open source is unconditional love, as part of a gift economy. There can be a great number of other motivations involved, like skill improvement, resume building, professional networking, making friends.., but one of the motivations mixed in there is the act of giving, and doing so unconditonally.
You get to say:
“Here you go world, have some unconditional love.
To whoever’s heart is warmed by this humble gift:
I’m glad my free bits of love found someone.”
This act of unconditional gifting induces a feeling everyone should experience. It can warm and sustain a heart through cold winters.
Unconditional love really exists in each of us. It is part of our deep inner being. It is not so much an active emotion as a state of being. It's not 'I love you' for this or that reason, not 'I love you if you love me.' It's love for no reason, love without an object.
~ [Ram Dass](https://www.brainyquote.com/quotes/ramdass601709)
Please enjoy the free bits.