A while back I started this thread about the risks of diluting the meaning of open source hardware and software.
I’ve been reflecting on this topic, and recently posted to the WILDLABS forums a possible way of communicating why it’s important to have clear definitions by comparing it to veganism.
It might be relevant here so I’m cross-posting my WILDLABS post below for your consideration:
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 established 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.
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)
- (of a product or practice, especially food) Not containing animal products (meat, eggs, milk, leather, etc) or inherently involving animal use.
- (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 (fully 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, and saying “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 constructive critiques and feedback welcome!