
I hate it because open source no longer reflects how people create software. The term open source (open source software) has become so broad that it makes no sense. It seems that at least in half of all my conversations, the question arises: “Wait ... what do you mean by saying open source?”. Or suddenly it turns out that we have been talking about completely different things for ten minutes.
Officially, open source is defined by ten criteria that you can read
here . Are you wondering who is the author of these criteria? This is the Open Source Initiative. The organization appeared in 1998 and at the same time introduced the term.
Did you know that the open source has an official definition? I strongly doubt it.
Each clause of this definition begins with the fact that “a license must” or “a license should not”. But license permissions in the modern world are not the most convenient way to determine what open source is. Licenses have the same meaning as the fact that most startups are registered in the state of Delaware (in Delaware, you can get the most favorable tax terms). You do not hesitate to click on the checkbox “I accept”, leaving the nerds and legal experts to clarify the meaning.
')
Translation: Today, young developers are concerned with creating POSS: post-open software. What are license permissions? Join Github.
This is more than just a play on words (poss in slang means “can”, a play on words - that now everything is possible for developers). The modern term “open source” has a different set of values ​​in comparison with the end of the 90s or the beginning of zero values.
- The idea of ​​the “open source” of the 90s was that the code has no owner and is controlled by a license. That, in theory, leads to more viable software.
- The current meaning of “open source” is in 1) public software development and 2) public collaboration .
The conversation shifted from protecting the user's rights to adapting the software to fit their needs and desires (now this is the norm) to protecting the rights of the author or the community that controls the code (this still needs to be made the norm).
Translation: Open source software is the community and the ecosystem around the code, not just the code itself.
This change is largely triggered by GitHub. As the most popular open source development platform, it has changed the norms for a whole generation. Ask, for the sake of interest, of the first generation of the first association of the word "fork". I remember a well-known joke about two synonyms for the word "undead", about which young people would rather say "zombies" and "kill", rather than "groom" and "cherish".
Strictly speaking, most GitHub projects do not even fit the official definition of open source (
about 80% do not have a license attached to the project). Thus, when we say that GitHub is where people “open the code” to their work, we mean what is written in the
GitHub Terms of Use .
Having different versions of the definition of the term is normal. But only if it does not limit our understanding of how people actually create software and collaborate today. For example, I had to enter into a dispute over the "code break" from the Node.js project (the
link to the author's post, the case was also reviewed at
Habrahabr ).
It turns out that in order to protect the rights of authors who are developing publicly, for example, using
Fair Source , it is necessary to say openly that their works are “not open source.” Strictly speaking, Mike Perham from Sidekiq is wrong when he
says that “open source software! = Free software”. Despite the fact that he exactly repeats what many have in mind.
And then we have a bunch of people who "open the code" to some things that have nothing to do with software or the official understanding of open source software. All they have in mind is that they have done their work
publicly for others. To others watched or enjoyed.
There is a feeling that we have long needed a new term. Once the phrase "open source software" appeared because of the need to separate a more pragmatic philosophy from its political predecessor -
free software . Maybe this time has come again?
And how do we call it then?
Now I am testing the term “public software”. In other words, there is proprietary software — with access for a limited group of people, and there is public access — access to it is open to anyone who has access to the Internet.
Open source software remains a form of public software and includes a wide class of applications and experiments. What I still like the term “Public software” is the fact that it is also more understandable for a non-professional (I always shit when I see the puzzled eyes of people who hear the word open source).
I really want to hear your suggestions. Can we find a better definition to use it?
At the moment I am looking for different ways to support the infrastructure of open source. If you want to take part, you can subscribe to notifications or follow me on Twitter .