Вы находитесь на странице: 1из 28

Anarchy and Order

Benevolent Dictatorship
Summary

Benevolent Dictatorship
in Open Source Software Projects

Jeremy Malcolm

Project Coordinator for IP and Communications


Consumers International

MSC Malaysia Open Source Conference 2010

Jeremy Malcolm Benevolent Dictatorship


Anarchy and Order
Benevolent Dictatorship
Summary

Outline

1 Anarchy and Order


A Bit of Theory
Application to Software Development

2 Benevolent Dictatorship
Questioning the Bazaar
An Explanation

Jeremy Malcolm Benevolent Dictatorship


Anarchy and Order
A Bit of Theory
Benevolent Dictatorship
Application to Software Development
Summary

Network design 101


Compare the institutional structure of a software development
project to the design of a computer network such as the Internet.

Jeremy Malcolm Benevolent Dictatorship


Anarchy and Order
A Bit of Theory
Benevolent Dictatorship
Application to Software Development
Summary

Network design 101


Compare the institutional structure of a software development
project to the design of a computer network such as the Internet.

NFSNET
Hierarchical
structure
(top-down)
All hosts connected
to the NSFNET
backbone
Packets routed
between hosts by
the backbone

Jeremy Malcolm Benevolent Dictatorship


Anarchy and Order
A Bit of Theory
Benevolent Dictatorship
Application to Software Development
Summary

Network design 101


Compare the institutional structure of a software development
project to the design of a computer network such as the Internet.

The modern Internet


Distributed mesh
network (peer to
peer)
Routing function
decentralised using
BGP
Multiple redundant
paths between hosts

Jeremy Malcolm Benevolent Dictatorship


Anarchy and Order
A Bit of Theory
Benevolent Dictatorship
Application to Software Development
Summary

The Cathedral and the Bazaar

Jeremy Malcolm Benevolent Dictatorship


Anarchy and Order
A Bit of Theory
Benevolent Dictatorship
Application to Software Development
Summary

Bureaucratic Software Development

Traditionally:
Software development was hierarchical
Described by Eric Raymond as the cathedral model
Bureaucracy considered the most efficient by Weber
Hierarchical division of labour and written records

But then...
Bureaucracy becomes an “iron cage”
Particularly unsuitable for (good) programmers!
Hackers should be judged by their hacking, not
bogus criteria such as degrees, age, race, or position.
– Stephen Levy, Hackers

Jeremy Malcolm Benevolent Dictatorship


Anarchy and Order
A Bit of Theory
Benevolent Dictatorship
Application to Software Development
Summary

Bureaucratic Software Development

Traditionally:
Software development was hierarchical
Described by Eric Raymond as the cathedral model
Bureaucracy considered the most efficient by Weber
Hierarchical division of labour and written records

But then...
Bureaucracy becomes an “iron cage”
Particularly unsuitable for (good) programmers!
Hackers should be judged by their hacking, not
bogus criteria such as degrees, age, race, or position.
– Stephen Levy, Hackers

Jeremy Malcolm Benevolent Dictatorship


Anarchy and Order
A Bit of Theory
Benevolent Dictatorship
Application to Software Development
Summary

Decentralised Software Development

The Bazaar model


“A great babbling bazaar of differing agendas and approaches”
produces a “stable system”
Now also seen in Wikipedia, Creative Commons

Why do hackers work voluntarily?


Economic explanations
A barter system, a way to further your career

We know the real reason... it is fun!


And it is fun because it is creative
And creative pursuit is fun because it is empowering

Can’t proprietary models also be empowering?


Agile software development methodologies

Jeremy Malcolm Benevolent Dictatorship


Anarchy and Order
A Bit of Theory
Benevolent Dictatorship
Application to Software Development
Summary

Decentralised Software Development

The Bazaar model


“A great babbling bazaar of differing agendas and approaches”
produces a “stable system”
Now also seen in Wikipedia, Creative Commons

Why do hackers work voluntarily?


Economic explanations
A barter system, a way to further your career

We know the real reason... it is fun!


And it is fun because it is creative
And creative pursuit is fun because it is empowering

Can’t proprietary models also be empowering?


Agile software development methodologies

Jeremy Malcolm Benevolent Dictatorship


Anarchy and Order
A Bit of Theory
Benevolent Dictatorship
Application to Software Development
Summary

Decentralised Software Development

The Bazaar model


“A great babbling bazaar of differing agendas and approaches”
produces a “stable system”
Now also seen in Wikipedia, Creative Commons

Why do hackers work voluntarily?


Economic explanations
A barter system, a way to further your career

We know the real reason... it is fun!


And it is fun because it is creative
And creative pursuit is fun because it is empowering

Can’t proprietary models also be empowering?


Agile software development methodologies

Jeremy Malcolm Benevolent Dictatorship


Anarchy and Order
A Bit of Theory
Benevolent Dictatorship
Application to Software Development
Summary

Decentralised Software Development

The Bazaar model


“A great babbling bazaar of differing agendas and approaches”
produces a “stable system”
Now also seen in Wikipedia, Creative Commons

Why do hackers work voluntarily?


Economic explanations
A barter system, a way to further your career

We know the real reason... it is fun!


And it is fun because it is creative
And creative pursuit is fun because it is empowering

Can’t proprietary models also be empowering?


Agile software development methodologies

Jeremy Malcolm Benevolent Dictatorship


Anarchy and Order
Questioning the Bazaar
Benevolent Dictatorship
An Explanation
Summary

Hierarchy and Open Source

OSS projects are actually pretty hierarchical


The Benevolent Dictator for Life (BDFL)
Linus “If you still don’t like it, that’s ok: that’s why I’m boss.
I simply know better than you do” Torvalds
Larry “Perl” Wall, Andrew “Samba” Tridgell, etc
Mark Shuttleworth as SABDFL
Also hierarchical institutions
Mozilla Foundation, Sun Microsystems, ASF
But what happened to “we don’t like hierarchy?”
Does hierarchy actually help?
Success of Linux, Mozilla, Apache, OpenOffice.org
Not bureaucracies but meritocracies

Jeremy Malcolm Benevolent Dictatorship


Anarchy and Order
Questioning the Bazaar
Benevolent Dictatorship
An Explanation
Summary

Hierarchy and Open Source

OSS projects are actually pretty hierarchical


The Benevolent Dictator for Life (BDFL)
Linus “If you still don’t like it, that’s ok: that’s why I’m boss.
I simply know better than you do” Torvalds
Larry “Perl” Wall, Andrew “Samba” Tridgell, etc
Mark Shuttleworth as SABDFL
Also hierarchical institutions
Mozilla Foundation, Sun Microsystems, ASF
But what happened to “we don’t like hierarchy?”
Does hierarchy actually help?
Success of Linux, Mozilla, Apache, OpenOffice.org
Not bureaucracies but meritocracies

Jeremy Malcolm Benevolent Dictatorship


Anarchy and Order
Questioning the Bazaar
Benevolent Dictatorship
An Explanation
Summary

Hierarchy and Open Source

OSS projects are actually pretty hierarchical


The Benevolent Dictator for Life (BDFL)
Linus “If you still don’t like it, that’s ok: that’s why I’m boss.
I simply know better than you do” Torvalds
Larry “Perl” Wall, Andrew “Samba” Tridgell, etc
Mark Shuttleworth as SABDFL
Also hierarchical institutions
Mozilla Foundation, Sun Microsystems, ASF
But what happened to “we don’t like hierarchy?”
Does hierarchy actually help?
Success of Linux, Mozilla, Apache, OpenOffice.org
Not bureaucracies but meritocracies

Jeremy Malcolm Benevolent Dictatorship


Anarchy and Order
Questioning the Bazaar
Benevolent Dictatorship
An Explanation
Summary

Debian and Ubuntu: A Case Study

The Debian project is very consensus-focussed


Project Leader is elected by developers and is required
to make decisions which are consistent with the
consensus of the opinions of the Developers
Any decision of the Project Leader can be overruled by an
ordinary resolution of developers

Ubuntu is much more hierarchical


Launched in 2004 due to three-year gap between Debian
woody and sarge
SABDFL appoints and has a casting vote on its Technical
Board and Community Council
Hierarchy between MOTU, Core Developers and Members

Jeremy Malcolm Benevolent Dictatorship


Anarchy and Order
Questioning the Bazaar
Benevolent Dictatorship
An Explanation
Summary

Debian and Ubuntu: A Case Study

The Debian project is very consensus-focussed


Project Leader is elected by developers and is required
to make decisions which are consistent with the
consensus of the opinions of the Developers
Any decision of the Project Leader can be overruled by an
ordinary resolution of developers

Ubuntu is much more hierarchical


Launched in 2004 due to three-year gap between Debian
woody and sarge
SABDFL appoints and has a casting vote on its Technical
Board and Community Council
Hierarchy between MOTU, Core Developers and Members

Jeremy Malcolm Benevolent Dictatorship


Anarchy and Order
Questioning the Bazaar
Benevolent Dictatorship
An Explanation
Summary

The Open Source Licence

Open source licence enforces benevolence

Four freedoms of GNU free software:


To use, adapt, distribute, release adaptations

Exit-based empowerment for developers


When hierarchy isn’t working, projects fork
Onerous trade mark conditions (Iceweasel)
Lead development not meritocratic (PHP-Nuke)
Alternative feature focus (NeoOffice)

Transaction costs prevent projects forking


Development of a community of developers and users
(Samba-TNG)

Jeremy Malcolm Benevolent Dictatorship


Anarchy and Order
Questioning the Bazaar
Benevolent Dictatorship
An Explanation
Summary

The Open Source Licence

Open source licence enforces benevolence

Four freedoms of GNU free software:


To use, adapt, distribute, release adaptations

Exit-based empowerment for developers


When hierarchy isn’t working, projects fork
Onerous trade mark conditions (Iceweasel)
Lead development not meritocratic (PHP-Nuke)
Alternative feature focus (NeoOffice)

Transaction costs prevent projects forking


Development of a community of developers and users
(Samba-TNG)

Jeremy Malcolm Benevolent Dictatorship


Anarchy and Order
Questioning the Bazaar
Benevolent Dictatorship
An Explanation
Summary

The Open Source Licence

Open source licence enforces benevolence

Four freedoms of GNU free software:


To use, adapt, distribute, release adaptations

Exit-based empowerment for developers


When hierarchy isn’t working, projects fork
Onerous trade mark conditions (Iceweasel)
Lead development not meritocratic (PHP-Nuke)
Alternative feature focus (NeoOffice)

Transaction costs prevent projects forking


Development of a community of developers and users
(Samba-TNG)

Jeremy Malcolm Benevolent Dictatorship


Anarchy and Order
Questioning the Bazaar
Benevolent Dictatorship
An Explanation
Summary

The Open Source Licence

Open source licence enforces benevolence

Four freedoms of GNU free software:


To use, adapt, distribute, release adaptations

Exit-based empowerment for developers


When hierarchy isn’t working, projects fork
Onerous trade mark conditions (Iceweasel)
Lead development not meritocratic (PHP-Nuke)
Alternative feature focus (NeoOffice)

Transaction costs prevent projects forking


Development of a community of developers and users
(Samba-TNG)

Jeremy Malcolm Benevolent Dictatorship


Anarchy and Order
Questioning the Bazaar
Benevolent Dictatorship
An Explanation
Summary

Balancing Order and Anarchy

Software development should be fun


But some hierarchy is necessary

Software projects run on social capital


Financial capital produces income
Social capital produces MBCA
Mutually Beneficial Collective Action

Social capital can be increased by fostering


An empowering, consensual process
Norms of reciprocal voluntary participation
Debian tried paying some of its developers: bad move
Product differentiation

Jeremy Malcolm Benevolent Dictatorship


Anarchy and Order
Questioning the Bazaar
Benevolent Dictatorship
An Explanation
Summary

Balancing Order and Anarchy

Software development should be fun


But some hierarchy is necessary

Software projects run on social capital


Financial capital produces income
Social capital produces MBCA
Mutually Beneficial Collective Action

Social capital can be increased by fostering


An empowering, consensual process
Norms of reciprocal voluntary participation
Debian tried paying some of its developers: bad move
Product differentiation

Jeremy Malcolm Benevolent Dictatorship


Anarchy and Order
Questioning the Bazaar
Benevolent Dictatorship
An Explanation
Summary

Balancing Order and Anarchy

Software development should be fun


But some hierarchy is necessary

Software projects run on social capital


Financial capital produces income
Social capital produces MBCA
Mutually Beneficial Collective Action

Social capital can be increased by fostering


An empowering, consensual process
Norms of reciprocal voluntary participation
Debian tried paying some of its developers: bad move
Product differentiation

Jeremy Malcolm Benevolent Dictatorship


Anarchy and Order
Benevolent Dictatorship
Summary

Conclusion

Hierarchy implies power, and power corrupts


But is more orderly, predictable and accountable
Decentralisation is more empowering (ie fun)
But it relies on its participants’ good faith

OSS can offers the best of both worlds due to


Exit-based empowerment created by its licence
Creating social capital, raising transaction costs

Rules for a good benevolent dictator


Make sure developers are empowered
Make sure everybody has fun
Realise developers can fork the project if unsatisfied

Jeremy Malcolm Benevolent Dictatorship


Anarchy and Order
Benevolent Dictatorship
Summary

Conclusion

Hierarchy implies power, and power corrupts


But is more orderly, predictable and accountable
Decentralisation is more empowering (ie fun)
But it relies on its participants’ good faith

OSS can offers the best of both worlds due to


Exit-based empowerment created by its licence
Creating social capital, raising transaction costs

Rules for a good benevolent dictator


Make sure developers are empowered
Make sure everybody has fun
Realise developers can fork the project if unsatisfied

Jeremy Malcolm Benevolent Dictatorship


Anarchy and Order
Benevolent Dictatorship
Summary

Conclusion

Hierarchy implies power, and power corrupts


But is more orderly, predictable and accountable
Decentralisation is more empowering (ie fun)
But it relies on its participants’ good faith

OSS can offers the best of both worlds due to


Exit-based empowerment created by its licence
Creating social capital, raising transaction costs

Rules for a good benevolent dictator


Make sure developers are empowered
Make sure everybody has fun
Realise developers can fork the project if unsatisfied

Jeremy Malcolm Benevolent Dictatorship


Appendix For Further Reading

For Further Reading I

Stephen Levy.
Hackers: Heroes of the Computer Revolution.
Penguin Books, 2001.
Linus Torvalds and David Diamond.
Just For Fun: the Story of an Accidental Revolutionary.
HarperCollins, 2001.
Eric Raymonds.
The Cathedral and the Bazaar.
http://www.catb.org/.

Jeremy Malcolm Benevolent Dictatorship

Вам также может понравиться