Recently, I saw some misconceptions about open source on social media, which made me both laugh and cry. It's already 2024, and there are still many people, even in the IT industry, who don't understand what open source is.
Of course, how to explain the current situation is the key to distinguishing whether a person has the willingness to bring progress.
For example, in the open source field, the significant impact of vulnerabilities in projects like log4j shows that the current situation is "humans are greedier and more foolish than imagined." Many companies, big and small, that use these open source projects have made huge profits from them but are unwilling to donate even a penny to support these projects (before the log4j vulnerability incident, only three donations were received in total). This lack of support leads to a lack of maintenance and ultimately causes significant losses for these companies.
So:
-
Regarding this situation, explaining it as "that's just how humans are" is not helpful. The aforementioned companies probably think the same way - they know that no one is donating to the open source projects they use, but they think, "If I don't donate, someone else will, right?" or "Other people also use it without donating, so what's the problem with what I'm doing?" Excluding moral judgment and only considering the "input -> output" aspect, for a company of a certain scale, investing hundreds to thousands of dollars annually in a project they heavily rely on could greatly improve the stability of the components they use and save them from the effort of replacing components due to lack of updates.
(Side note: Of course, I believe that anyone who can completely exclude moral judgment from their heart is a scumbag. The stability of human society lies in the law, and positive development lies in morality. "If bandits always win, then we should still be living in the Stone Age" by @ksintmelody.) -
Regarding this situation, explaining it as "so we should pay more attention to public awareness, improve the law, and restrain greedy people" clearly shows a more attentive attitude towards open source and a willingness to improve the current situation. In fact, there have always been people in the open source field working to promote a healthy environment, and the birth of various licenses is one of the most important aspects. Licenses standardize various behaviors, not only specifying that users cannot do whatever they want with open source projects but also providing a solid foundation for open source software to generate profits. Of course, all of this is based on legal support and strict law enforcement. If you try to enforce open source rights in a country like North Korea, you won't get good results. (Side note 2: Knowledge and art sharing also have licenses, such as the well-known CC-BY series. Many people may think it only applies to images, not text, but it actually applies to both. So not all text-based knowledge and images on public platforms can be used freely.)
However, in the new era, the current situation of open source is very pessimistic.#
According to statistics (*2):
Since 2011, the growth of lines of code has been slowing down, and after 2015, the number of lines of code has completely stopped growing. At the same time, the number of commits has been decreasing as time goes on. After 2015, the number of commits entered a free fall state, falling back to the level of 2007. This is in stark contrast to the booming cloud and AI industries that started after 2015.
Some people may say that this mainly applies to open source projects, but many projects are no longer being updated because they are no longer needed, and the situation for new projects is much better. However, another statistic about popular open source projects at that time shows (*3):
"More than 50% of projects are in red: they cannot keep maintainers above the poverty line. 31% of projects are in orange, where developers are willing to work for low wages, which are unacceptable in our industry. 12% are in green, and only 3% are in blue: Webpack and Vue.js." - 50% of projects are literally unable to afford a decent living.
"For all maintainers, the total funding for open source is not enough. If we add up the annual income of these projects in the dataset, it is 2.5 million US dollars. The median salary is about $9k, which is below the poverty line. If this money is evenly distributed, it would be about $22k, still below the industry standard." - Even if evenly distributed, it would only be $22k per year. And this is not just looking at donations received on GitHub but also includes funds received on platforms like Patreon.
The overall trend of open source is alarming.
For individual open source contributors, there can be many suggestions, such as not starting open source projects and directly building products. But what about open source itself?
"The struggle for the sustainability of open source is a thousand-year struggle to liberate humanity from slavery, colonization, and exploitation. Hardworking and honest people have given everything they have, but in return, they receive unfair rewards, and this is not the first time." (*3)
This cycle of developers who can't even afford to eat but are being exploited by those who benefit from open source cannot be sustained in the long run, and ultimately, open source will wither away. Ironically, some people who make a living from open source don't even realize that open source is on the verge of starvation - of course, even if they do know, they probably don't care, as humans are greedier and more foolish than imagined.
There is no doubt that the challenges faced by open source are difficult and long-term, and solving these problems will take time and effort. The article "Software Below the Poverty Line" (*3) proposes some measures, such as:
Only accepting companies that donate a significant portion of their profits (at least 0.5%) to open source or companies that don't rely on open source at all.
If you have enough income, donate to open source.
Don't give up on joining unions (I am writing this article in Finland, where 65% of workers are unionized).
Don't give up on alternative licenses for new projects.
Put pressure on Microsoft to donate millions of dollars to open source projects.
Expose corporate behavior through the publication of such data research.
Personally, I would like to add some suggestions:
- Carefully consider the license for your project and don't mindlessly choose MIT.
- Brave the exposure and protection of copyright infringement, making good use of the power of social media and the law.
- When the law is not effective, don't rely on it. Learn some security-related knowledge and retain the ability to retaliate. Even if you are a true Bodhisattva, Buddhism also talks about the wrathful gaze of Vajra.
In conclusion, I pay tribute to the Chinese open source project authors I know (and those I don't know). Please support them.
Finally, let me advertise my project, https://github.com/cryptonerdcn/wasm-cairo: This is a development kit for building a WASM runtime for StarkWare's universal ZK language, Cairo.
You can participate or donate to this project through Onlydust. Onlydust is an open-source project collaboration platform:
https://app.onlydust.com/p/wasm-cairo
References:
- GitHub's explanation of open source licenses: https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/licensing-a-repository
- Open source is dead: https://www.oschina.net/news/118100/open-source-is-not-growing-anymore
- Software Below the Poverty Line: https://github.com/xitu/gold-miner/blob/master/TODO1/software-below-the-poverty-line.md