Models of FOSS Collaboration

In these notes we exam different models of collaboration in open source projects.

We are particularly interested in how the content that is shared -- be it encyclopedia knowledge (Wikipedia) or source code (Linux) -- is controlled.

There are many different models possible, ranging from very democratic models (Wikipedia) to what are called benevolent dictatorships (Linux) and many forms of hybrid models in between (Drupal, Sahana).


Wikipedia: Direct Democracy

  • Anonymous users can edit Wikipedia entries.
  • Traditional Encyclopedia: Hierarchy of publisher, editors, authors.
  • Wikipedia: Anyone can write, edit, publish.
  • Neutral point-of-view and good faith guide user's contributions.
  • Jimmy Wales, as a kind of constitutional monarch, has final say.
  • Bureaucrats, stewards, developers, administrators have responsibilities (rather than rights) and help manage the site.
  • Wales and the Wikipedia board of directors have authority to mediate editorial disputes, remove abusive and uncooperative users.

Linux: Benevolent Dictatorship

  • A single individual decides what code goes into the Linux codebase.
  • Traditional Software Development: a) Plan, b) Analyze, c) Design, d) Implement.
  • FOSS Development: a) Code; b) Review; c) Pre-commit test; d) Development release; e) Parallel debugging; f) Production release.
  • Originally, only Linus Torvald, the project's founder, had authority to commit code to the main Linux repository.
  • The Linux Development Team:

Sahana: Core Development Team

Drupal, Content Management System: A Team of Maintainers

  • Drupal is code that enables a non-programmer to create and maintain various kinds of Web sites.
  • What is a content management system:
  • Drupal's Development Model:
  • Distinguish between: Drupal Software vs. Content on a Drupal-supported Website
  • Example: is a Drupal-managed web site.