discussion / Open Source Solutions  / 27 February 2025

Definitions for open source software & hardware and why they're important

Recent conversations (including this previous thread) have reminded me that while I've been involved in various open source tech communities for years, I sometimes implicitly – and incorrectly – assume that everyone has a shared understanding of what the term “open source” means. Apologies for any confusion! In fact, there is contention even within open source communities such as discussed in this GOSH forum thread.

I've been reflecting on why it is so important to have clear definitions of open source hardware and software, and found that veganism is a potentially useful point of comparison. Here goes...

The Open Source Hardware Definition and Open Source Software Definition (👈 please check out those links!) are the de facto dictionary definitions of those terms. They are non-trivial, and the results of decades of community effort to establish a shared language for effective communication and collaboration. In addition, bad actors such as certain Big Tech companies have taken advantage of those who are not familiar with those terms to cause harm to the community, e.g. marketing products as open source for good vibes when they are not, underscoring why it is important to clearly delineate the terms.

Without going more into the extensive history, the definitions in question are only “strict” in the sense that the word “vegan” is strict.

The adjective “vegan”, according to Wiktionary, means: 

vegan /ˈviːɡən/ (not comparable) 

1. (of a product or practice, especially food) Not containing animal products (meat, eggs, milk, leather, etc) or inherently involving animal use. 

2. (of a person) Committed to avoiding any product or practice that inherently involves animal use. ...

That is, a vegan meal does not contain any animal-based ingredients. A dish is either vegan or it isn't. In the same vein, a piece of software or hardware is either open source or it isn't.

Having well-defined key terms establish a shared understanding and enables better communication and collaboration. It is NOT to discourage people from exploring ways of making their software or hardware more open. Just like there is a “spectrum” of meals from fully animal-based (like a steak!) to vegan, there are certainly software and hardware which fall on different places on the spectrum from fully closed source (proprietary) to open source. If someone wants to reduce their carbon footprint, they might have meals with higher proportions of plant-based ingredients over time, and that's great! But unless a meal is 100% plant-based, it is not vegan. The same principle applies to open source software and hardware.

Without clearly defined key terms to establish shared understanding, there would be friction and confusion. It's like planning a meeting where we invite people to discuss their favorite vegan dishes, but say “preferably the dishes are vegan, but this is not a requirement.” This would be an oxymoron and counter-productive. 

The WILDLABS Open Source Solutions group is for creating a space to think about open source tech for conservation. Therefore, the projects we showcase should be definition-compliant. Consider a “vegan group” that works on sharing and promoting vegan dishes. This group isn't to “exclude” non-vegans, but is to have a designated, protected space to talk about vegan food. Non-vegans are still warmly welcome to join and learn about veganism even if they don't eat a 100% plant-based diet!

The above opinion might be a spiky point of view as postulated by Wes Kao. But I hope that means this post can be a base for productive discussion.

Additional critiques and feedback welcome!




Thanks for this excellent and thought-provoking post, Pen. I agree this is a binary yes/no issue, but there is a spectrum. There could also be philosophical nuances. For example, does excluding honey from a vegan diet meet the ethical criteria of veganism? It's an animal product, so yes, but beekeeping generally doesn't have the same exploitative potential as cow, sheep, or pig husbandry, right? However, looking strictly at the definition, honey is out if you want to be vegan. 

Back to software! Isn’t the main issue that companies falsely claim to offer open source hardware/software? To avoid this, do you then have to create an accreditation system? Who polices it? Is it fair? Would users care that their software has the accredited open source stamp of approval? Ultimately, we need definitions to define boundaries and speak a common language.