Wednesday, September 08, 2010

Community vs planned software development

#MediaWiki development is of interest to many people. There are people who hack the functionality they need and there are people who work for an organisation. An organisation that may be the Wikimedia Foundation, but more people work for other organisations.

When Wikipedia was young, things were simpler. Everybody volunteered. There was less code, there were fewer systems and there was less traffic. MediaWiki is truly open source so you could still scratch your own itch and it was likely for the new or changed functionality to go live.

Hacking days in 2005

Then things started to scale. Wikipedia traffic grew exponentially, more servers were installed in multiple locations, down time became less acceptable, security became vitally important and the number of projects that needed support did not stop growing. To scale support, Brion and Tim were the first hired to do what they did best. After that they stopped scaling and that became really obvious because many issues refused to go away as the work left to do did not stop scaling.

Working with the community of developers was high on the list of priorities. As a result the ability to run "big projects" became complicated. As grants were accepted promising results in a set time frame and Brion left for StatusNet things reversed and it became more difficult for community developers to get their code assessed.

The office 2010

My own experience with extensions like the LocalisationUpdate may help to understand. The software worked fine but it was not optimal for the WMF as it updated one wiki at a time. Making it more efficient gobbled up time from several developers before it worked satisfactory. LocalisationUpdate proved itself because since its implementation the motivation of the localisers at led to improved language support. Other extensions like the Babel extension and the Translate extension are still waiting for a keen eye that may make them WMF ready, both are ready :)

As Brion was so crucial and did not scale and left for pastures green, a different, scalable approach had to be found. His job was split into pieces and first Danese was hired as a CTO. It is now her job to build an organisation that will do all the things Brion worked at and make it scale too. As the organisation did not stop growing and as there are plenty of projects making their way towards production it is not a sinecure.

At the same time people are clamouring for improved language support; this will enable people to edit Wikipedia and make it fun too; this will motivate them..

No comments: