Developer Relations

The Way of Free Open Source Community Governance—Inspiration and Reflection from Zhuangzi's Fables

2018-10-03
Developer Relations
en

This is my speech from COSCUP 2015 last year, originally titled “Zhuangzi Philosophy and Open Source Community Governance,” and later presented again at the SFD (Software Freedom Day) event held at Tsinghua University. Friends have been wanting me to organize this speech, or find the speech video (it seems the COSCUP session wasn’t recorded, nor was there audio). I originally planned to spend time organizing it myself, but due to various personal matters, I kept postponing it, and ended up delaying for nearly a year…

Actually, community governance, whether open source communities or other communities, has long had various books introducing governance methods, considerations, and success cases. Even for open source community governance, there are many classic books. Two years ago, I compiled “Must-Read ‘Four Books and Five Classics’ for Understanding Open Source”, all classics written by predecessors. However, I’m writing this article not to simply extract or overturn previous classics, but to use Zhuangzi’s philosophy to elaborate my own understanding of the Way of free open source community governance.

Some of Zhuangzi’s philosophical concepts are quite “metaphysical.” This article strives not to introduce the “metaphysical” parts, but focus more on practical effects on open source community governance. I hope this article can point out a little direction for friends who are lost in open source communities, can’t find their positioning, don’t know how to contribute, or don’t know how to govern.

Note: This article has been modified and added based on the speech.

Origin

In high school, as required reading for Chinese class, I studied excerpts from “Zhuangzi: Free and Easy Wandering.” At that time, I really liked Zhuangzi’s way of thinking and that grand literary style. Later, I flipped through some Zhuangzi interpretations and fable stories aimed at middle school students. I gradually learned that many idioms and allusions that often appear in our daily lives come from Zhuangzi, such as “mantis stalking the cicada,” “handling with ease,” “frog in the well,” “mantis trying to stop a chariot,” and so on. Its writing style and dialectical way of thinking also had some influence on me. However, I didn’t study it further later—after all, three minutes of enthusiasm.

Later, in recent years, I read some articles citing Zhuangzi’s fables, explaining Zhuangzi’s interpretation of liberalism (the philosophy I believe in). It occurred to me: could Zhuangzi’s philosophy and his concepts about the world be applied to open source community governance? As a philosophical and literary work, Zhuangzi is undoubtedly a huge wealth for life. Applying Zhuangzi’s philosophy to open source community governance is clearly not inappropriate. More importantly, it’s about using some of Zhuangzi’s fables, integrating my own understanding and insights about open source community governance, to explain the Way of open source community governance.

Philosophy of Operating Open Source Communities

Let’s start with the operating methods we’re familiar with. Many people think that to make open source communities grow and develop, they need to call for more people to contribute and participate, more people of insight to co-govern together, and finally achieve a co-prosperous open source golden age. Simply put, three words: “Contribution · Co-governance · Co-prosperity.” It looks like a bright future, everything seems inevitable and accessible. To be honest, a few years ago I also held the same philosophy, whether participating in or governing open source communities. However, as I observed more contradictory situations and more problems were exposed in communities, I couldn’t help but question this philosophy. Where exactly is this philosophy wrong? What is it lacking?

Obviously, this only focuses on macro concepts while ignoring actual difficulties, ignoring every open source participant’s individual demands, just drawing a big pie out of thin air. Many times, to make “co-prosperity” happen, various methods have to be used, causing many participants’ enthusiasm to drop sharply, and projects or communities quickly lose vitality and die. Various problems encountered in practice cannot be solved by “contribution · co-governance,” so the final “co-prosperity” can only be empty talk.

So finally I propose three words: “Selfishness · Self-governance · Freedom,” not saying the previous formulation is wrong, but these three words are precisely the prerequisites for the previous three words: Only with “selfishness” (not used pejoratively here, keeping it neutral), that is, satisfying one’s own needs as a prerequisite, can one contribute more. As Eric Raymond said in “The Cathedral and the Bazaar,” behavior like Linus Torvalds developing the Linux kernel is “scratching personal itch”scratching personal itch, satisfying one’s own needs while also satisfying more people. Many open source contributors’ behavior follows this pattern; on the other hand, the prerequisite for co-governance is self-governance. Only when every community and every person governs their own community well, doesn’t depend on others, and doesn’t act as a “handout-taker,” can they have spare capacity to co-govern together. Otherwise, if you can’t even handle your own affairs well, how can you participate in collaboration? And over-dependence on others not only increases others’ workload but also increases the possibility of interpersonal conflicts; similarly, only with freedom can there be co-prosperity. Everyone in the community can enjoy the right to freedom, not be suppressed or closed off, and also respect everyone’s right to free expression and free participation. Only in this way can communities make more people willing to contribute, more people willing to co-govern together, and the co-prosperous situation will finally arrive.

This is the Way of open source community operation and governance. How did I come up with the above? It was from rereading Zhuangzi in the past two years. Let me explain slowly below.

The Concept of the Way

Before understanding the Way, I would very much agree with “contribution · co-governance · co-prosperity” and even wave the flag for it. But when I participated in more open source communities, especially after being an organizer in communities, I found how limited my previous thinking was. As the saying goes, “you don’t know the cost of firewood and rice until you manage a household.” The concept of “Way” is very important. Whether for organizers or participants, once following the “Way,” everything becomes easy.

So, what is the “Way”? Let’s first look at an example everyone is familiar with—Cook Ding carving an ox. This story is well known to everyone, so I won’t repeat it. There’s a sentence in it:

What I love is the Way, which goes beyond technique.—Zhuangzi: The Lord of Health

Actually, this sentence already explains the Way in open source communities—it’s a pattern revolving around open source technology (perhaps a specific project). When explaining the Way, Zhuangzi also said “Don’t ask its name, don’t peek at its circumstances, things naturally grow,” meaning the Way doesn’t shift according to human will. Humans can hardly change inherent patterns and can only comply with them. During the speech, I told two of Zhuangzi’s fables: The Marquis of Lu Raising a Bird and Patting the Horse at the Wrong Time.

The story of “The Marquis of Lu Raising a Bird” is simple. The general idea is that the Marquis of Lu obtained a precious bird. He played music for the bird and fed it human delicacies called “Tai Lao” (various pork, beef, mutton), but this made the bird dizzy and restless every day, not eating or drinking, and it soon died. Zhuangzi sighed:

This is raising the bird with one’s own way, not raising the bird with the bird’s way.—Zhuangzi: Perfect Happiness

“Patting the Horse at the Wrong Time” is also simple. It tells of a person who loved horses very much, using the best bamboo baskets to hold horse manure, and containers decorated with various beautiful shells to hold horse urine. Suddenly a fly harassed the horse, startling it. Not only did it kick and injure the owner, but it also broke free from the reins and ran away. Zhuangzi said again:

When intention reaches its limit, love may be lost. Should one not be cautious!—Zhuangzi: In the World of Men

Both stories above show that operating open source communities cannot be like the Marquis of Lu raising a bird, imposing one’s own will on it, but must respect the community’s own characteristics; at the same time, one cannot over-manage the community like the horse owner in “Patting the Horse at the Wrong Time.” Therefore, this leads to the following two topics.

Characteristics of Free Open Source Communities

First, let’s look at what characteristics free open source communities have, and we must respect these characteristics.

Perfect Combination of Way and Technique

From the story of Cook Ding carving an ox, it’s actually very easy to discover. Cook Ding actually fits the modern definition and understanding of a Hacker very well, except our current Hackers have computer architecture, processor architecture, etc., in mind, and are skilled at writing code. So in a sense, Cook Ding could be considered the earliest Hacker.

And free open source communities composed of Hackers are the same, combining many personal demands and internal operational patterns. Especially communities that maintain specific open source projects or promote specific open source technologies are even more a combination of Way and technology. This requires thorough knowledge of technology when operating, prediction of potential development of corresponding technical points, and sufficient understanding of market feedback on corresponding technologies.

Open Source Communities Have Grassroots Nature

Many big shots who contribute a lot to open source projects, or famous people who developed famous software, are often not important figures in famous enterprises or people with high social status. Many open source developers are quite struggling. For example, Werner Koch, author of GnuPG (a famous free implementation of the asymmetric encryption PGP protocol), is very poor; another example is Eric Raymond, who first proposed the “open source” concept and wrote the famous “The Cathedral and the Bazaar,” who last year launched crowdfunding to raise living expenses for himself. There are many such examples, including Richard Stallman, who initiated the free software movement and GNU. Similar examples are also very many in China, everywhere you look. Don’t they want to improve their personal social status? Perhaps “Zhuangzi Fishing in the Pu River” can provide some reference.

Zhuangzi compared himself to a turtle dragging its tail in a mud pond. In his eyes, rather than being a divine turtle worshipped in a shrine after death, it’s better to drag one’s tail in the mud pond and play well while alive.

I will drag my tail in the mud.—Zhuangzi: Autumn Floods

Alright, let’s pay tribute to those open source big shots who are not moved by fame and profit and “drag their tails in the mud,” and please also respect their personal choices!

Open Source Communities Are Self-Organizing

This point was discovered after participating in the activity organization work of the Beijing GNU/Linux User Group. A mature community with its own culture and capabilities can still operate very well without strong organizers. Later, in my spare time communicating with other free open source communities in China, I also found many similar situations. For example, the maintainers of the Shanghai Linux User Group also agree that open source communities can still operate very well without strong leadership. Perhaps this explains what Zhuangzi said: “things naturally grow.”

Therefore, when operating, how to better stimulate the community’s internal self-governance power, cater to and comply with the community’s own direction, and prepare to improve community members’ self-governance abilities. And participating in open source communities can also use whether there is good self-organization ability to examine the maturity of open source communities. This will be discussed in detail below.

In summary, the characteristics of open source communities are:

  1. Self-perfecting combination of Way and technique
  2. Self-loving grassroots psychology
  3. Self-organizing community form

So firmly grasping the characteristics of open source communities—“Self-perfecting · Self-loving · Self-organizing”—this can let us better understand how to join when operating and participating in open source communities, and more easily grasp the Way of open source communities.

How to Operate and Participate?

Now that we’re familiar with the characteristics of open source communities, we can explore how to operate open source communities.

Don’t Be Greedy for Large Community Scale

In Chapter 6 of “Dream of the Red Chamber,” Wang Xifeng said that the Jia household has many people, many things, and various consumptions for people eating and horses feeding. So she sighed: “Big has big difficulties.” Zhuangzi also said in the opening chapter “Free and Easy Wandering”:

If you pour a cup of water into a hollow in the floor, a mustard seed can serve as a boat, but if you place the cup there, it will stick. The water is shallow and the boat is large. If the accumulation of wind is not thick, it cannot support large wings. Therefore, at ninety thousand li, the wind is below it, and only then can it cultivate the wind…—Zhuangzi: Free and Easy Wandering

The principle is actually very simple. After the scale becomes larger, the resources and capabilities needed increase significantly. In this regard, one must act according to one’s ability. Perhaps operating a community of less than 100 people only requires university club management capabilities and small team collaboration of two or three people; but once the community scale reaches thousands, perhaps a foundation needs to be established, more sponsors are needed, and hierarchical management or deeper governance models are required. On the other hand, communities of different scales should also choose appropriate management methods according to their own scale. A small community of only a few dozen people doesn’t need to specifically set up a foundation (unless really necessary for funds) or use complex hierarchical management methods. Obviously, flat management is more beneficial.

However, many small communities always dream of becoming big, or some already large communities, under the temptation of fame and profit, hope to become even bigger. Greed for overly large community scale will make management miserable. A scale that exceeds operational capacity will inevitably become a burden, consuming operators’ energy on futile interpersonal handling rather than handling project-related issues.

At the same time, one should also focus on the “conversion” of community members. For example, perhaps many newcomers came to an event, and whether these newcomers can be converted into community contributors, how many can be converted, that is, the “conversion rate” issue. The “conversion” mentioned here is a concept borrowed from the operation of commercial technology communities. I won’t go into detail here. If possible, I’ll write another article to explain in detail.

Self-Governance and Non-Action, Self-Responsibility, Stimulating Community Self-Organization Vitality

Even if the cook doesn’t manage the kitchen, the priest doesn’t cross over the sacrificial vessels to take his place.—Zhuangzi: Free and Easy Wandering

As mentioned earlier, mature open source communities have strong self-organization abilities. Stimulating the community’s self-organization ability is key. And an immature community that can still operate often has a strong leader, perhaps with strong technology or strong ability, while community members are often weak, needing this leader’s orders for everything. This strong leader, while centralizing power, also deprives community members of the ability to self-govern and the freedom to develop themselves. This kind of overstepping governance method will directly lead to the community easily “concentrating strength to do big things,” such as holding a large seminar, sharing session, etc., but cannot handle regular community operations well and cannot truly promote the release of community value. Such a community will definitely lose vitality quickly in the long run and slowly become marginalized in the entire open source ecosystem.

So how to stimulate the community’s self-organization vitality? This starts with cultivating each member’s self-governance ability, calling on everyone to do their own things well, not depend on others, and not be handout-takers. Only when everyone self-governs and every person fulfills the responsibilities of open source community members can the community’s overall self-organization ability be better promoted. That’s why self-governance must come before co-governance. When we’ve done our own things well, we won’t have time to manage others.

The perfect people of ancient times first established themselves, then established others. What is not firmly established in oneself, how can there be time to attend to the behavior of violent people!—Zhuangzi: In the World of Men

At the same time, when planning community operations and development, one should also consider satisfying members’ personal needs. Whether the community’s future planning can “scratch the itch” of community members, whether community members can form strong bonds with the community. So-called “stickiness” is just this. “Stickiness” is also a word often heard in the era of community economy, also a borrowed concept. Managers of mature communities often feel involuntary, often have the illusion of being pushed by the community’s inherent patterns. So “non-action” doesn’t mean doing nothing—that’s “inaction”—but not deliberately doing things, letting go and letting the community’s self-organization vitality push the community’s natural development.

Don’t Forget Original Intention When Seeing Benefits

The story of “mantis stalking the cicada, oriole behind” is already well known to every household. At the end, Zhuangzi said this:

(The mantis) sees gain and forgets its form, (the oriole) sees benefit and forgets its true nature.—Zhuangzi: Mountain Trees

In the face of benefits, who can remain unmoved? But if one keeps pursuing benefits and gets bound by benefits, actions in open source communities will definitely become distorted, definitely deviate from the previous direction, deviate from the original intention of founding the community. Also because of being burdened by fame and profit, one will make mistakes, be guided by benefits, and even become cannon fodder in commercial wars. Related content can be found in the interview compilation from the end of 2014 “Thoughts on Commercial Participation in Open Source Communities—Answering Professor Fan Xiaoqing of Minzu University of China”.

Actually, if it’s the interests of large enterprises, that’s fine; the ability to tempt communities is relatively small. What has a relatively large effect and huge temptation is government policy. Especially in recent years, the rising tide of nationalism and domestic production, “independent intellectual property rights,” etc. In this regard, I can’t say those who pursue national software are bad, but in the process of pursuit, don’t forget your original intention. If your original intention was to make a certain software for Chinese people, such as a Chinese operating system, Chinese chips, etc., that’s no problem. But if the original intention was just to unite a group of enthusiastic people to develop a free operating system, then when tempted by nationalism, one will definitely abandon the original community foundation. And losing community support means losing the power to move forward. Such projects will only slowly die in the end.

Enhance Free Connections Between People

Many people say interpersonal relationships in open source communities are relatively close. Actually, yes and no. More often, they’re free connections based on common values. Relationships between people are flat, decentralized network connections, not centralized connections around leaders. Flat connections more easily stimulate vitality among community members and more easily create opportunities for interconnection and mutual cooperation.

Better to forget each other in the rivers and lakes than to moisten each other with foam.—Zhuangzi: The Great Ancestral Teacher

At the same time, relationships between people cannot be about moistening each other with foam. A free person, that is, a person who has the ability to choose and the ability to take responsibility, will not depend on and bind others, nor be satisfied with “moistening each other with foam” this minimum survival need. They will definitely have higher needs and greater development demands. This is what the community can satisfy them; otherwise, they will leave and abandon the existing community.

Therefore, for community operations, one should build as flat free connections as possible, while excavating and cultivating community members’ free spirit, self-governance ability, and autonomy, increasing opportunities for connections between free people, such as holding regular activities, which can attract more newcomers to join while enhancing stickiness among community members.

Enlarge the Pattern, Don’t Be a Frog in the Well

The story of the frog in the well is also a famous fable in Zhuangzi. When I was in elementary school, I even learned an adapted story based on this (changed to a dialogue between the frog in the well and a bird).

For open source communities, future development entirely depends on the pattern they’re in. If open source community operators and managers have sufficiently long-term vision and broad perspective, it will be very helpful for the future development of open source communities. In a sense, what pattern a community is in determines what kind of future it has.

So how to enlarge the community’s pattern? There are three methods. First, the positioning when founding the community should be higher, such as positioning as an international community or an open source project with commercial transformation. If you want to modify it later, you need to get more members’ consent, consistent with their “itches.” A community positioned for self-amusement is harder to transform into a larger-pattern community, which is exactly the result of long-term internal self-organization; Second, participate in or invite other communities, through community exchange and cooperation, can absorb other communities’ advantages and learn other communities’ experiences; Third, participate in larger-pattern community activities. For example, participating in international open source conferences, participating in global activities like Google Summer of Code. Or merging into larger-pattern communities, or uniting more similar communities to form community alliances. But it can also be just participating as an individual, and then slowly changing one’s own community.

The Great Way is Simple

Alright, having said so much, let me summarize in one sentence what exactly the Way of operating and governing free open source communities is:

Non-action governance of free people in free connections

Free people represent that members in the community are all people who can self-govern; free connections have been explained above, that is, flat bonds that don’t depend on others; non-action governance means exerting the community’s self-organization vitality, complying with and catering to this vitality without deliberately doing things.

Therefore, as long as following this Way, operating and governing free open source communities is not a difficult matter, but a routine practice. I hope this article can provide some small reference for lost people, and also hope to watch out for and help each other with friends in the surging open source tide.

Finally, attached is the COSCUP 2015 presentation slides for reference: http://www.slideshare.net/tonghuix/ss-51729150

Reposted from: Developer Relations »


Similar Posts

Content icon
Content