Today Solomon asked an interesting question on Twitter:
He made it clear he is not advocating for this view, just a thought experiment. I had, well, a few thoughts on this.
I tend to think of open source projects in three broad buckets.
Firstly, we have the overall workflow in which the community works together to build things. This is your code review processes, issue management, translations workflow, event strategy, governance, and other pieces.
Secondly, there are the individual contributions. This is how we assess what we want to build, what quality looks like, how we build modularity, and other elements.
Thirdly, there is identity which covers the identity of the project and the individuals who contribute to it. Solomon taps into this third component.
Identity
While the first two components, workflow and contributions are clearly important in defining what you want to work on and how you build it, identity is more subtle.
I think identity plays a few different roles at the individual level.
Firstly, it helps to build reputation. Open source communities are at a core level meritocracies: contributions are assessed on their value, and the overall value of the contributor is based on their merits. Now, yes, I know some of you will balk at whether open source communities are actually meritocracies. The thing is, too many people treat “meritocracy” as a framework or model: it isn’t. It is more of a philosophy…a star that we move towards.
It is impossible to build a meritocracy without some form of identity attached to the contribution. We need to have a mapping between each contribution and the same identity that delivered it: this helps that individual build their reputation as they deliver more and more contributions. This also helps them flow from being a new contributor, to a regular, and then to a leader.
This leads to my second point. Identity is also critical for accountability. Now, when I say accountability we tend to think of someone being responsible for their actions. Sure, this is the case, but accountability also plays an important and healthy role in people receiving peer feedback on their work.
Open source communities are kinda weird places to be. It is easy to forget that (a) joining a community, (b) making a contribution, (c) asking for help, (d) having your contribution critically reviewed, and (e) solving problems, all happens out in the open, for all to see. This can be remarkably weird and stressful for people new to or unfamiliar with open source, and on a bed of the cornucopia of human insecurities about looking stupid, embarrassing yourself etc. While I have never been to one (honest), I imagine this is what it must be like going to a nudist colony: everything out on display, both good and bad.All of this rolls up to identity playing an important role for building the fabric of a community, for effective peer review, and the overall growth of individual participants (and thus the network effect of the community).
Real Names vs. Handles
If we therefore presume identity is important, do we require that identity to be a real name (e.g. “Jono Bacon”) or a handle (e.g. “MetalDude666”)? – not my actual handle, btw.
In terms of the areas I presented above such as building reputation, accountability, and peer review, this can all be accomplished if people use handles, under the prerequisite that there is some way of knowing that “MetalDude666” is the same person each time. Many gaming communities have players who build remarkable reputations and accountability and no one knows who they really are, just their handles.
Where things get trickier is assuring the same quality of community experience for those who use real names and those who use handles in the same community. On core infrastructure (such as code hosting, communication channels, websites, etc) this can typically be assured. It can get trickier with areas such as real-world events. For example, if the community has an in-person event, the folks with the handles may not feel comfortable attending so as to preserve their anonymity. Given how key these kinds of events can be to building relationships, it can therefore result in a social/collaborative delta between those with real names and those with handles.
So, in answer to Solomon’s question, I do think identity is critical, but it could be all handles if required. What is key is to either (a) require only handles/real names (which is tough), or (b) provide very careful community strategy and execution to reduce the delta of experience between those with real names and handles (tough, but easier).
So, what do you think, folks? Do you agree with me, or am I speaking nonsense? Can you share great examples of anonymous of open source communities? Are there elements I missed out in my assessment here? Share them in the comments below!
the only requirement, I guess, would be that your emails and handle can be cryptographically signed. Then a reputation can be built independent of name and/or personal markers (origin, gender, colour, etc). Copyright issues are fixable.
Good thinking. I agree that accountability plays vital role in people receiving peer feedback on their work. Using the actual name should be the way to get trusts.
Accountability Trust is a nice idea, just ask Julius Caesar. 🙂
Having said that I suppose it would be possible to build up an anonymous Nick that was trusted or at the very least appeared to be trusted on the surface, problem is human nature is such that it would probably never be fully trusted simply because the attitude would be that an anonymous persona potentially carries more power than a known individual and the reason for that is accountability. Throwing Jono Bacon in jail is more likely than for example throwing anonymous in jail. #twopenneth
I think that using real names can really establish trust or even make a good reputation especially in gaming.
Alright, I’ll give it a shot – I was on this one project working together with Open Source and Free Software minds. We had full disclosure who everyone was except one guy.
Who was he? We didn’t even know he existed until we discovered he was whispering in ears of the guy we elected as project manager. This anonymous interested party had never attended any meetings, got on IRC or Ventrillo with us. He didn’t contribute or even have access to our private cloud. He didn’t make any requests on github. Who was this person?
We didn’t know.
This caused some tension between us as we had someone influencing decisions of the PM and we didn’t know who this person was.
Ultimately, we dropped the PM and another dev because they thought this was alright. The anon person was telling the pm not to distribute the code… although it was GPL. What a mess!!!
The software lives on and code available, but the group disbanded. We tried recently to get the band back together, but the PM started acting out of sorts and we’re not a company but a group of coders just trying to give the community access to good abandonware…
In projects, contributors need to be accessible – able to answer questions, able to make revisions to their ideas or code. Our situation may have been unique, but sometimes a contract or even informal agreement prior to starting a project may be a good idea regarding contributions.
I do respect privacy. However, I do not appreciate maneuvers in the guise of privacy where decisions are made by anonymous people in a circle of trust that was established.
There are ways to keep PII or identity confidential while contributing good feedback or code to a project in a productive way.
I’ve been pondering the same question, and not only for open source code, but any form of open source discussion. Particularly social and politially charged subjects. And I have come to the conclussion that the only way to be totally free to interact as equals in any subject is when we do it anonymously. Reputation is very important, but I believe over time it can be built on top handles exactly in the same way that it is built on top of real names. With your actions, comments and the ideas you stand for. We want to value for what you think and what you contribute, not by where you are from, your size, the colour of your skin, your gender, your sexual orientation or any other label. The key to achieve this is usiging cryptography to sign and being able to verify we are dealing with the right person every time, which by now is pretty easy to achieve.