📜 ⬆️ ⬇️

How to build a community. Translation of Social Architecture: Chapter 3. ZeroMQ Community

Can we purposefully build communities?

image People sometimes ask me what's so special about ZeroMQ. To this I always answer that ZeroMQ is perhaps the best answer that we have to the topical question "How to create distributed software tools that are required from us for the 21st century?" . But beyond that, ZeroMQ stands out thanks to its community. What distinguishes wolves from sheep.

There are three main open source patterns. First, when a large company throws out a code on the market in order to get rid of its competitors. This is the Apache Foundation model. Secondly, when tiny teams and small companies build their dream. This is the most common open source model that may be the most commercially successful. Finally, aggressive and diverse communities are wading through the jungle of problems. This is a Linux model, and here we are striving for it in ZeroMQ.

It's hard to overestimate the power and perseverance of the open source community. Perhaps there is no better way to create software in the long run. The community not only tackles the most relevant problems, but also does it optimally, carefully, observing the results for years, decades, until they retain their value, and then quietly leaves them.

To get the most out of ZeroMQ, you need to understand the community. At some point, you will want to offer a release, patch, or addon. You may want to ask someone for help. You may want to take a commercial part in ZeroMQ, and when I warn you that the community is much, much more important than the company supporting its products, although I am the executive director of the company, this should tell you a lot.
')
In this section, I will look at our community from different angles and at the end I will tell you in detail about our cooperation agreement, which we call “C4” . You will need this information for your own work. In addition, we have successfully adapted the ZeroMQ C4 method for closed-source projects.

ZeroMQ Community Architecture


You know that ZeroMQ is a project with a LGPL license (author's note: we lean towards the Mozilla Public License v2, which also works, but is simpler). In fact, it is a set of projects built around the root library libzmq. I present these projects as an expanding universe:


Libzmq, most binders and some of the external projects are present in the “organization” of the ZeroMQ community on GitHub. This organization is "managed" by a group of the youngest authors of bindings. There is little to manage, because it is almost self-governing and there is currently no conflict.

iMatix, my company, plays a specific role in the community. We own the trademarks and keep an eye on each, to be sure that if you download a package called “ZeroMQ”, you can be trusted with its content. There have been several attempts at unauthorized use of the name, apparently the pirates thought that “free software” means drawn and defenseless. After reading this chapter, you will see how seriously we take the work done on our software (and by “us” I mean the community, not the company). iMatix supports the community by monitoring the operation of everything called “ZeroMQ.” We also invest time and money in software and its deployment.

We do not do charity. ZeroMQ is a commercial project, and it is quite profitable. Profit is divided into a large number of people involved in its development. This is the case, plain: take the time to become an expert at ZeroMQ or add something useful on top of ZeroMQ, and you will benefit from growth as an individual, team or company. iMatix gets the same benefits as everyone else in the community. This is a mutually beneficial relationship for all but our competitors, who understand that they will not cope with this threat and will not escape it. ZeroMQ will dominate the future world of widely distributed software.

My company does not just protect the community - we also created a community. We did this purposefully: in the original technical description of ZeroMQ from 2007, it was stated that there were two projects. One was technical, aimed at creating a better message delivery system. The second was to build a community that could lead the software to success. The software dies, but the community lives on.

How to create really great architecture


There are two ways to make a truly large-scale software, as already mentioned (at least by those who read this sentence out loud).

The first way is to throw huge amounts of money and problems at the discretion of smart people and hope that the result will not be a cross on your career. If you are very lucky, and create a product based on a huge experience, and you were able to keep the teams assembled, and do not strive for technical excellence, and good luck will not turn away from you, it will work.

But gambling on hundreds of millions of others is not suitable for everyone. For all others who want to create large-scale software, there is

The second way is open source, more precisely, free software. And if you are asking what is the relationship between software license and its scope, then this is the right question.

The ingenious and insightful Eben Moglen (Eben Moglen) once said that a free software license is like a contract on which to build a community. When I first heard it, about ten years ago, I had an idea - can we purposefully build communities?

The answer received ten years later is “yes,” moreover, now it is almost a science. I say “almost” because we still do not have enough evidence that people do it purposefully, there is no documentation and confidence that this process can be accurately reproduced. This is what I’m trying to fix with Social Architecture . ZeroMQ appeared after Wikidot, after the Digital Standards Organization (Digistan) and after the Foundation for a Free Information Infrastructure (FFII, a non-governmental organization that fights against software patents). All of this came after a multitude of less successful communities, like Xitami and Libero. The conclusion I’ve made from a lot of work with various projects is this: if you want to create really large-scale and durable software, strive to build a free software community.

Translation of the book "Social Architecture":




about the author
“Unfortunately, we do not choose death for ourselves, but we can meet her with dignity so that we will be remembered as men.”
- the movie "Gladiator"



Pieter Hintjens - Belgian developer, writer. He held the position of CEO and chief software designer at iMatix , a company that produces free software , such as the ZeroMQ library (the library takes care of some of the data buffering, queuing, connection establishment and recovery, etc.), OpenAMQ, Libero , GSL code generator , and the Xitami web service.


Much detail here: Thirty five years I, as a necromancer, inhaled life in dead iron with the help code

It's time for my last article. I could write more, there is time, but then I will think about other things: how comfortable it is to sit in bed, when to take painkillers, and about people around me.

... I want to write one last model, the last protocol, which is dedicated to how to die, having some knowledge and time in store. This time I will not format the RFC. :)
Death report

Peter Hinchens website
Wikipedia article

Thoughts and ideas of Peter Hinchens on Habré:


About the book translation project
I, with the support of Filtech-accelerator , plan to publish on Habré (and, perhaps, in paper) the translation of the book “Social Architecture” . IMHO, this is the best (if not the only adequate) manual for managing / building / improving communities focused on product creation (and not on mutual grooming or “worship” to the leader, sports club, etc.).

Call to action
If you have projects / start-ups with a high share of technologies aimed at public benefit in the first place and to receive profit as an auxiliary function (for example, like Wikipedia), write in person or register for an accelerator program .

If you send links to articles, videos, courses on the Coursera on managing / building / improving communities, focused on creating a product , with me chocolate.

Source: https://habr.com/ru/post/346788/


All Articles