blog dds

2007.09.14

Cooperative Development at the Speed of Light

The agility and responsiveness of major open-source endeavors never ceases to amaze me.

Earlier today I realized that the, otherwise excellent, Greek localization of MediaWiki lacked a localized table of Magic Words; elements one can add to wiki pages to get specific behavior. This omission could confuse the users of a Greek wiki I maintain. It was very easy to find the file that had to be modified, and in less than an hour I had completed the translation of the corresponding PHP hash array. I tested the change on my setup, and it worked fine. Figuring that I would not want to have to reapply the fix in the next MediaWiki update, I set out to submit a patch to the MediaWiki developers. I read that the appropriate procedure was to file a bug report. I entered the patch into the MediaWiki Bugzilla fearing however that my patch would disappear into oblivion. However, less than four hours after I downloaded MediaWiki's repository for editing the patch had made it into the Subversion repository!

Here is a complete timetable of the events:
TimeEvent
14:49I download the MediaWiki source code through Subversion
16:07I finish editing the messages file
16:43I complete testing my changes
17:01I create a patch
17:20I have created an account on Bugzilla and submitted the patch
18:27Raimond Spekking applies the patch to the Subversion repository

This entry's title, Cooperative Development at the Speed of Light is of course an exaggeration. However, I've calculated that if we communicated by shouting, the trip

  • from my office in Athens to the WikiMedia Bugzilla server in Florida,
  • from the WikiMedia Bugzilla server in Florida to Raimond Spekking in Köln,
  • from Raimond Spekking in Köln to the WikiMedia Subversion server in the Netherlands,
  • from Raimond Spekking in Köln to the WikiMedia Bugzilla server in Florida,
  • from the WikiMedia Bugzilla server in Florida back to me, and
  • from the WikiMedia Subversion server in the Netherlands back to me
would take:
(8183km + 6633km + 173km + 6633km + 8183km + 1871km) / 340.29m/s = 93,085s = 25hours!

I have friends working at large IT companies who have to wait months to get a commit window to apply their fixes to code they maintain. No matter what problems one thinks that open-source processes have, agility is not one of them.

Read and post comments, or share through   


Creative Commons License Last modified: Friday, September 14, 2007 9:42 pm
Unless otherwise expressly stated, all original material on this page created by Diomidis Spinellis is licensed under a Creative Commons Attribution-Share Alike 3.0 Greece License.