
Democracy in Open Source: Yes or No? (+ Our Research Proposal) - softmodeling
http://modeling-languages.com/democracy-in-open-source-our-research-proposal-pls-help/
======
Mikeb85
No. Open source should be more like Darwinism. If you want to make a change,
you fork the code. If the creator(s) likes your changes, they incorporate it.
If a code base is good, it survives, if it isn't it dies.

The key point is freedom - your freedom to do whatever you like with the code,
and the creators freedom to do what they like.

~~~
simonh
Or the freedom to come to the conclusion that someone else's vision is worth
supporting, and choosing to devote time and effort to helping them realise it.

"Seek freedom and become captive of your desires. Seek discipline and find
your liberty." ― Frank Herbert, Chapterhouse: Dune

~~~
Mikeb85
Yeah I have no issue with project managers/creators choosing a democratic
process.

Just issues with users who demand it...

------
dingo_bat
I think democracy is almost the worst way to take decisions when it comes to
scientific/engineering things. In an open source project, a single expert
should be able to overrule the mass of users/contributors if his point is
technically more correct. This is very difficult to consistently achieve in a
democracy.

I would love to see the results/conclusion of this research. We would finally
get some data-backed insight into why/why not democracy is good for a software
project.

~~~
oneJob
This sort of sh*t scares me. Thinking that software is a purely technical
endeavor where an expert can always be "right" and thus ignore non experts.

~~~
dingo_bat
Note that I do not think non-experts should be ignored. I think everyone
should be able to voice their opinion, expert or non-expert. But there should
be a final authority where the buck stops, and their word should be final, no
matter how _many_ people wanted something else.

Also, I agree that experts are not always right, but they are right in
overwhelmingly more cases. Which is practically "always". The small number of
times an expert is outright wrong, is a risk I'm willing to take.

~~~
oneJob
You realize your first sentence is practically the definition for a democratic
republic?

I wasn't taking issue with the proposed decision making mechanism. I was
taking issue with the idea that there are purely "technical solutions". In
math, the most intangible of disciplines, I was taught that when working
solving an open problem, the most important question to answer will always be,
"So what?" It's easy to come up with novel but trivial proofs all day long. If
you can't explain why the new proof is important, then, so what? Go play with
Legos.

If such an intangible discipline requires some justification part of its most
foundational task, then surely there must be some broader justification in
software development. And I'm being specific when I use the term 'software
development'. It's not like we're talking about computer science or applied
mathematics.

Software development builds things that are to be used by end users for a
purpose. There is plenty of room in software development for non-technical
perspectives, and non-technical discussions will never be black-or-white.
Often a software development project with be built specifically for a non-
expert. In that case, to say that the end-user "should not necessarily be
ignored" is such a bad tenor to be set for the discussion.

Last, I'd like to mention the idea of a do-ocracy, which is what many OSS
projects have organically turned into. In these cases, the technical expert
and the novice alike can do whatever they want, because folks will either
choose to work with them or not. But in a do-ocracy it's not likely that
someone will be forced to do something they don't agree with or at least sign-
on-to.

If you want a "buck stops here" set-up, then go to a company that has a
hierarchy or pay people to do what you tell them to do. But otherwise, there
is no Utopia where programmers can go write whatever software they want and
that others will be required to use without getting to share in the decision
making process.

------
forgottenpass
_In fact, the one that says how decisions are taken follows a Benevolent
Dictator for life model. Cleary, not something we would accept in any other
community aspect of our society._

There are a handful of counter examples floating through my head. The BDFL
model can be described generically as willing collaboration among peers where
one ultimately has the power to control the project. The strongest example
that comes to mind is bands. A band can have a very similar model, they - like
open source - can also have a project structure nothing like a BDFL.

 _Cleary, not something we would accept in any other community aspect of our
society._

This is also kinda funny to me because if we make a theoretical BDFL more
controlling than we expect from an average Open Source BDFL, we accept this
model for collaboration _all the time_. It's called "management." What's not
funny is that this is the premise is treated as axiomatic by the researcher.

~~~
TeMPOraL
Moreover, BDFL has clear upsides over a more democratic model. Not considering
that "in any other community aspect of our society" is just stupid.

------
kardashev
Imagine a building whose design and construction was governed by democracy.
The architecture would be a horrible mish-mash of whatever happened to be
popular, and likely architecturally unsound and unsafe. The actual
construction would be a nightmare too, since someone would have the
"brilliant" idea of painting drywall before laying it so people don't have to
use unsafe ladders, ect.

Software can be millions of times more complicated than building blueprints.
Why in the hell do you think democracy will work for software when it doesn't
work for office buildings?

Contrast this with the way open source development generally proceeds. A
single developer (or maybe a few) create a software project as the core team.
They are the experts for that project. Other people can make suggestions and
contribute, but it's up to the core team to decide if something meshes with
the vision they have for the project.

What if someone disagrees? They can simply fork the project and try out their
own vision. They are the expert of their own project.

This has some amazing consequences. First of all there can be _multiple_
winners. Project A can be very popular, yet project B, which caters to a
minority, can also exist and serve people with different needs and tastes.
Second, it allows parallel experiments of multiple ideas, which encourages
rapid innovation to take place. Finally, it helps minimize conflict between
people, since you can join or start a project that meets your fancy without
penalty.

Contrast this with democracy. In a democracy it's winner take all. Majority
vote determines what everyone has to live with. This creates conflict and
intense competition (including bribes and corruption) to get majority vote. It
slows innovation because things can only be done one way at a time, whichever
way was popular. There can be no single vision, everything becomes a huge
contorted mess. It's hard enough to architect software with a single vision.

You should be doing research on how to make politics more like the
(multi)governance of open source development, not the other way around!

~~~
js8
> Imagine a building whose design and construction was governed by democracy

I haven't seen that, so it's hard to imagine (and I would thus reserve my
judgement on that). But I have seen comedy governed by democracy, and it's not
as bad as you suggest:
[https://en.wikipedia.org/wiki/Monty_Python](https://en.wikipedia.org/wiki/Monty_Python)
But I do agree it's a mish-mash. :-)

Anyway, I think it's hard to make the OSS model work in politics. In politics
(and other fields), you are severely resource constrained. However, in OSS
model, anybody can fork the code on their own system.

~~~
kardashev
It is precisely because of resource constraints that the open source model
would work better. Take education for example. What if anyone could start a
school with any standard for curriculum? It would instantly solve the
arguments that happen over the democracy of curriculum we have today. It would
also allow experimentation into redefining how education is done. We could
easily see what works and what doesn't without having to change education for
an entire state or the country. How many resources have we wasted following
fads? How many good ideas have been skipped because they were too risky to
implement universally?

There are obvious downsides as well, but history seems to show that the
benefits outweigh the downsides for this type of model.

------
softmodeling
We're researchers trying to get funding to study how existing knowledge in
political science, social science and economy can be adapted to improve open
source software development. We need the input of OSS developers !

------
Vorcin84
It sounds vaguely interesting what existing knowledge there is on people
working for free for a common cause out of their own volition, and where
democracy comes into play.

"Democracy is two wolves and a lamb voting on what to have for lunch"

~~~
js8
> Democracy is two wolves and a lamb voting on what to have for lunch

No, it isn't. You cannot put democracy itself to a "democratic" vote, that's a
version of Russell's paradox.

In particular, deciding who gets to vote, even by voting, isn't democratic.
The democratic decision must be potentially reversible.

~~~
nairboon
Of course you can. Democracy is just the ruling of a majority of a specific
group. It doesn't have any inherent "higher ideals", human rights, or
whatever.

~~~
js8
I disagree. The above condition is unorthodox, I admit, but is needed to make
the definition logically consistent.

The idea of democracy is to give everybody the same voice in decision making.
There are different mechanisms to achieve that, direct voting is only one of
them. Other mechanisms are consensus, random selection and representation.
Each of the mechanisms has different strengths and weaknesses and should be
used to decide different things. You can also combine them to an extent, for
instance you can randomly select members of a jury who then decide by
consensus.

~~~
nairboon
I do like your idealism. But what means "to give everybody the same voice"? Is
this about having your voice heard? Or about actually participating in a
decision? Either way, only the pure direct democracy guarantees both. In the
end you still have the rule of the majority. What you might be looking for is
some sort of equal representation of "minority groups"? We're somewhat doing
this in Switzerland on the executive level and this only partially works
because the executive is explicitly chosen to be very "consensus friendly" in
other words no extreme (left/right) positions.

But this won't really work with the legislature, because there we have all
kind of incompatible ideologies. There is simply no consensus possible with
the contemporary ideologies (socialism, liberalism, conservatism, etc.) by
their very definition. If you insist on consensus, your decision making
process will simply deadlock forever. How can you ever unlock it? By shifting
to a almost-consensus aka direct democracy.

~~~
js8
It is about actually equally participating in the decision. I agree with you
on direct democracy, I am big fan of it (since about 2000).

Consensus can work but only in a very small groups. That's why I explained
that there are different methods to achieve democratic participation and have
different trade-offs.

I don't think ideologies are big a problem for direct democracy. I think they
are artifacts of representative system, where you have to choose a package of
things, rather than when you can decide each issue in isolation. From what I
heard, that actually happens in Switzerland - since everybody is sometimes in
a minority in referendum, people don't take losing as a big deal.

------
forgottenpass
I find myself harumphing at much of the proposal. It's not the topic itself;
democracy can work in open source, and I think Debian is well served by that
model. There are interesting things to be researched about open source project
management, but the approach doesn't seem to face them head on, and is full of
assumptions that could be detrimental to the usefulness or quality of
findings.

I'd have to really dig into the proposal but I don't even have time to fully
absorb that blog post. I'll try to expand on this after work if I still give
half a damn.

------
zekevermillion
Name any software you use that is produced by a democratic process... anyone?

~~~
softmodeling
A few centuries ago were no democratic societies either (and some of us still
have kings :-) ). Does this mean we should have stayed like that?

~~~
zekevermillion
No, it doesn't mean that monarchy is better. But if you want to argue for
democracy in open source projects, the lack of positive examples does merit
some consideration.

------
XghTk
Let's vote for it!
[https://docs.google.com/forms/d/1aN7VRwyEmHP7Y4DTF4tkWz_VSea...](https://docs.google.com/forms/d/1aN7VRwyEmHP7Y4DTF4tkWz_VSea6VdTXQhlbClwgllk/viewform?usp=send_form)

