Fake Open Source

From Open Source Ecology
Jump to: navigation, search

Levels of Openness

We have observed 6 levels of open source in our journey towards the Open Source Economy, and this article explains them.

Why is this important or more than just philosophical banter? In the Post-Truth Era, we cannot accept lies if we want societal progress. We present our observations here to clear up misconceptions about an important topic of openness - which has profound implications on access and justice. Ultimately, this openness refers to openness regarding the distribution of economic power. Technology is power. So it it important to understand how the world distributes power - how open and transparent it is with its technical knowledge - if we want to do better than we are doing today.

Open Source

  1. Open Source - meaning complying with the OSHWA Definition. The best-in-class example here is Lulzbot up to the end of 2019 - which shares all of its CAD designs and production engineering in open formats. (we cannot tell what will happen after its end-of-2019 acquisition by another company).
  2. Ambiguous Open Source - it is ambiguous whether the OSHWA definition is met. The case in point here is Prusa - read more about Prusa Research

Undocumented Open Source

Is code that is available, but without documentation - open source? Unfortunately, the legal definition of open source (OSI definition, section 2) is not explicit about this point. Section 2, addressing source code - states "Deliberately obfuscated source code is not allowed." However, what does this mean? Does this mean that code is written poorly, or it is missing documentation? Unclear. What is clear, is that undocumented source code is effectively unusable by non-experts in the field. OSE's intent with open source is to avail power to non-experts by teaching people throughout a development process - thus un-documented open source is effectively not open source. The distinction here comes from other requirements of open source: modificiation. Without documentation, it may be very difficult for users to parse code, if their intent is to modify. Thus, from the OSE point of view - Undocumented Open Source is effectively not open.

Fake Open Source

  1. Fake Open Source - pretending to be open source, but the license in not open - typically being non-commercial. Note that not all Creative Commons licenses are OSHWA Definition-compliant. According to this definition, the Peer Production License is fake open source. The word 'fake' refers specifically to the appearance of openness - an impostor open source - where in reality the subject matter is not open source. This is a violation of General Semantics - where the 'map is not the territory' - in the Post-Truth Era. Just because something appears to be - does not mean that it is.
  2. Effectively Fake Open Source - this is not necessarily a slander, but would apply to projects where full documentation is available to the OSHWA standard. However, if the build requires very expensive equipment or rare inputs that very few or no other people can access - then the design is effectively un-replicable - and from the standpoint of replicability - unreplicable open source. Which is effectively not open for replication. Thus, it is ambiguous whether the people who are offering the blueprints are really following a mindset of open culture - or they are simply being strategic.

Strategic Open Source

  1. Strategic open source - this describes typical commercial open source projects - where it simply makes business sense to collaborate on a common core of open code. FB, Google, Microsoft, Amazon - and all the giants now understand that it is cheaper to create new products if they collaborate. These companies typically take the common core and build proprietary applications on top of that common code. So it may be said that open culture is not a prerequisite for strategic open source behavior.
  2. Undocumented open source - see for comments. See above. Undocumeneted source code is Strategic Open Source if deliberate, and if not deliberate, is just poor practice. See above.

Ethical Open Source

  1. Ethical/Radical Open Source - this is Richard Stallman and the ethical position of libre. OSE endorses ethical open source, and for practical purposes of developing purely open source products - they are one and the same. The main distinction is that Stallman does not believe that open source applies to hardware (because hardware cannot be replicated easily like software) - and the FSF does not allow for mixing of closed and open content in one license. Mixing open source and proprietary is currently not possible for hardware - because our designs are open source - but we use many proprietary components for which there are no open source alternatives - YET. By 2028, OSE intends to use 100% open source components, as achieved by Technological Recursion.

Being clear about the level at which others are open source allows OSE to make sound decisions regarding collaboration potential. For OSE purposes - if collaborators are fully open source without bounds - such as Lulzbot as our posterchild - then it's a worthwhile relationship to pursue and that relationship creates clear and visible forward motion. If they are not, time is spent better collaborating with those people who are fully open source, because life is short - and there is no time for Competitive Waste. At the same time, we must be careful about Collaborative Waste.

Details

Open Source is not a loose term, which in common parlance tends to be reduced in meaning to 'something cool.' Instead, Open Source is a technical term defined by the Open Source Initiative in its Open Source Definition.

From the perspective of open source ecology, fake open source refers to parties claiming or implying that their work is open source, as defined by the Open Source Hardware Definition, when in reality it is not. Fake open source does not apply to companies that were formerly open source but turned proprietary - as long as the proprietary company makes no claims of being open source. An example of the latter is Makerbot, which used to be open source, but has since declared itself to be proprietary - and is making no claims about being open source. Ie, Makerbot is a good bastard.

Open source claimed by someone as open source is not open source if:

  • First and foremost - If it restricts commercial use, such as by the NC Clause in Creative Commons licenses - it is not open source according to the OSHWA definition.
  • Note that making money provides a positive feedback loop for people to make livelihood based on open source. This is one of the 4 points that consistute the Open Source Definition. This right should not be abridged if we care about general human welfare. In practice, when someone uses open source there is a good chance that they will contribute to a project out of good will. Thus, people should be encouraged to participate by allowing them to use content for commercial purposes. Livelihood based on open source is a good thing. There are still many who will contribute to NC projects, but only in the capacity of a hobbyist - not one whose livelihood comes from participating. When you contribute to an NC enterprise, that enterprise is privatizing your public contribution.
  • There is no documentation. Someone could claim that they are open source as much as they want - but if they can't point you at a public repository where you can freely download documentation or design - their work is not open source.
  • Their design documentation consists of patents. Patents are already open source in that they are on the public record. However, patents do not show actual designs, they show mechanisms and concepts that are covered in the patent. Thus, if somene says they release all their patents as open source, if they do not make their actaul CAD files, technical drawings, etc, public- then they are not open source.
  • Someone tells you that their work is open source but there is no formal, written declaration - on the internet or elsewhere - that the work is open source. Stay away from such people due to legal risk. If you use their work and the author changes their mind, the legal liability lies on you to defend yourself from infringing on their license.
  • Someone tells you that their work will be open source. Whether or not it will be open source only time will tell, and for present purposes, it is not open source yet.


Examples

  • OpenROV - not open source, as it doesn't meet the OSHWA Definition as their hardware has the NC Clause.
  • Microsoft has an "Open Source" license for their proprietary flagship product, Windows. It reads, "Pay us USD 1m per year, and on receipt of your money, our source code is "open" to you. If however you do anything other than read it, we will sue you into the bedrock and jump up and down in the molten crater of your former existence". But The Source Is Open!
  • n55 - bicycle license is also NC
  • Tesla Motors - what does it mean that they are 'releasing their patents as open source?' Unless the designs are available under an OSHWA compliant license, they are not open source. Point: patents do not reveal the actual blueprints. However, we must give credit to Musk as his move is honorable. He promises not to sue anyone for using Tesla patents.
  • MPCNC - nice discussion at https://www.youtube.com/watch?v=68ohaPYyiDA

Other Viewpoints

Alex Kennis


Discussion

MJ to MA:

Just one more note - I edited your label from Fake Open Source to Strategic Open Source regarding Discourse. Fake refers to NC licensed software, which I don't believe is true for Discourse, correct? But this does bring up a greater question to which I could not find an answer online: does undocumented software technically qualify as open source according to the OSI definition? The answer is a grey area - bc 'deliberate obfuscation' referred to in the OSI definition may make Discourse not even fake, but not open source at all. See my notes on this at https://wiki.opensourceecology.org/wiki/Fake_Open_Source#Undocumented_Open_Source . What are your thoughts? I am thinking of contacting the OSI people to update their definition to clarify the requirements with respect to documentation. I think the official definition should _require_ that documentation be available, as code in itself can be completely cryptic. That is like providing CAD and no build instructions in hardware - which I would not call open source.

MA to MJ:

> I edited your label of Fake Open Source

I noticed. I agree. And I just updated that article with screenshots and a pdf from the original topic.

> Deliberately obfuscated source code is not allowed." However, what does this mean? Does this mean that code is written poorly, or it is missing documentation? Unclear.

That's actually not very unclear from a CS perspective (and "deliberate" rules out poorly written code). Code obfuscation is specifically a technique used by compilers to prevent de-compilation of machine code. It's not hard to imagine that someone could do something similar with the (publicly-accessible) source code itself.

* https://en.wikipedia.org/wiki/Obfuscation_(software)

> the official definition should _require_ that > documentation be available

I agree, but it'll necessarily be a grey area still. Discourse has documentation for their API, for example.

* https://docs.discourse.org/

And they have a bit of documentation for their install guide

* https://github.com/discourse/discourse/blob/master/docs/INSTALL-cloud.md

And at the end of the above documentation, they link to a bunch of topics on meta.discourse.org. Do those threads on meta.discourse.org count as documentation?

*

https://github.com/discourse/discourse/blob/master/docs/INSTALL-cloud.md#add-more-discourse-features

None of ^ that takes away from the fact that their cofounder deprioritizes documentation and deletes user-submitted documentation with intent to generate revenue. It's hard to quantify culture.

Yes, both "provides documentation" and "doesn't suppress documentation" should be requirements for open-source projects, imho.

Links