Downstream

Differences between revisions 9 and 10
Revision 9 as of 2008-08-06 16:33:10
Size: 2516
Editor: localhost
Comment: converted to 1.6 markup
Revision 10 as of 2008-08-06 17:00:59
Size: 2496
Editor: localhost
Comment:
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
||<tablestyle="float:right; font-size: 0.9em; width:30%; background:#F1F1ED; background-repeat: no-repeat; background-position: 98% 0.5ex; margin: 0 0 1em 1em; padding: 0.5em;">'''Contents'''<<BR>><<TableOfContents>>|| ||<tablestyle="float:right; font-size: 0.9em; width:30%; background:#F1F1ED; background-repeat: no-repeat; background-position: 98% 0.5ex; margin: 0 0 1em 1em; padding: 0.5em;"><<TableOfContents>>||

draftDavidFarning

Downstream

One of the great strength of open source is the ability for everyone to improve and modify their software as they see fit. Ubuntu can benefit from this by developing a healthy ecosystem of derivative distributions which contribute back to the Ubuntu project.

It is often quoted that 'the value of a network is equal to square of the number of nodes.' The value of a software distribution also grows at a rate that equal to the square of the number of installations.

There are a number of factors that contribute to this nonlinear growth.

  1. As the number of knowledgeable users of grows, so does the developer base.
  2. As the number of computers running the distribution growths, so does the hardware support.
  3. As the number of installed systems grow, so does the third party software support.

The freedom to take a piece of software and modify it is both an asset and a liability. Forks encourage experimentation and creativity. They can also result in fragmentation. One way to counter fragmentation, is to foster the growth of derivative distributions.

Derivatives distributions are different from forks in three ways.

  1. Derivatives have a common code base.
  2. Derivatives collaborate on patch management.
  3. Derivatives collaborate on issue tracking.

Common Code base

Currently, the single biggest source of friction in maintaining a derivative is merging changes with the base distribution. This friction can be reduced by sharing an easily extendable base of common code.

Additionally, establishing a common code base will allow hardware and outside software vendors to develop products knowing that they work across all distributions.

Patch Management

Collaborative patch management will help maintain the common code base.

The kernel development process has shown how well distributive version control systems such as git and brz can work.

Issue Trackers

Collaborative issue tracking will increase the number of knowledgeable developers available to fix reported Issues. Initial triaging should be done by the derivative and escalated to where they can be most effectively handled.


[CategoryMozillaTeam]

MozillaTeam/Downstream (last edited 2008-08-06 17:00:59 by localhost)