Project of the Month Questionnaire

Jump to navigation Jump to search

Working on filling this out...

Project of the Month Questionnaire[edit]

(For a look at what we do with your answers, see writeups of previous winners at

Description of project[edit]

MediaWiki is a wiki software package primarily developed to run Wikipedia, the free encyclopedia, and other Wikimedia projects. It's designed to handle a large number of users and pages without imposing too rigid a structure or workflow.

Trove info[edit]

  • Development Status: 4 - Beta, 5 - Production/Stable
  • Intended Audience: End Users/Desktop, Education
  • License: GNU General Public License (GPL)
  • Operating System: All POSIX (Linux/BSD/UNIX-like OSes), Linux
  • Programming Language: PHP
  • Topic: Front-Ends, Education, Message Boards, Other/Nonlisted Topic
  • Translations: English, Esperanto, French, German, Spanish
  • User Interface: Web-based

Why and how did you get started?[edit]

The wiki-based online encyclopedia project Wikipedia ( started in January 2001 as a side project of the now-defunct Nupedia. Originally the site ran on UseMod, a one-file Perl script that's pretty easy to get up and running, but the project grew so quickly that it became clear a database backend was going to be necessary to manage and sort through data. Wikipedian Magnus Manske started writing new software in PHP with a MySQL backend, which Wikipedia switched to in 2002. After much further development, cleanup, and a little packaging, this in-house wiki has become MediaWiki.

What is the software's intended audience?[edit]

MediaWiki is primarily aimed at open, transparent community-built information resources like Wikipedia and its sister projects, and similar projects run by other people.

We try to keep the software flexible and extensible, and there are plenty of people using it for sotware documentation, personal sites, and internal company reference use as well.

How many people do you believe are using your software?[edit]

A little Googling hints at several thousand MediaWikis out on the web. Yikes!

What are a couple of notable examples of how people are using your software?[edit]

Aside from Wikipedia and its cousins, of course, a number of high-profile FOSS projects are using MediaWiki for developer documentation or community sites: Mozilla (, Mono (, OpenSuSE (, etc.

What gave you an indication that your project was becoming successful?[edit]

We keep getting bug reports — somebody must be using it!

What has been your biggest surprise?[edit]

People keep trying to use MediaWiki for types of sites it wasn't designed for; on the one hand this is annoying as it doesn't always work well for them ;) but on the other hand it's rather exciting to see something different.

What has been your biggest challenge?[edit]

Keeping up with Wikipedia's growth in popularity has certainly been a major driving force in development of the MediaWiki software. We've sometimes had to abandon features that couldn't scale

Why do you think your project has been so well received?[edit]

Certainly part of it is being the engine that runs a high-profile project like Wikipedia. When people get introduced to the concept of a wiki web site through Wikipedia, they'll probably check us out first. :)

Where do you see your project going?[edit]

We hope to continue to make the software more modular and extensible while keeping (or improving) scalability.

Wikimedia is branching out from Wikipedia into other projects with somewhat different needs, and lots of third-party users would love more extensions and customizability too.

What's on your project wish list?[edit]

Our main concentration tends to be on performance and bugsquishing, but there's hidden main goal to build the ultimate productivity platform.

We also have a partial test suite for the wiki parser, but more thorough unit testing or regression testing would be a welcome addition.

What are you most proud of?[edit]

Mostly working!

While there are a lot of performance improvements we can still make, the system scales well enough to run a top-40 web site in a highly dynamic fashion where visitors can change anything at any time: Wikipedia is running MediaWiki distributed over several dozen web servers, a half dozen database boxen, and coordinated cache clusters on three continents.

If you could change something about the project, what would it be?[edit]

To be able to use Subversion instead of CVS ;)

How do you coordinate the project?[edit]

(Make assignments? Assign bugs? Perform regression testing?)

Discussion on the code and what should be done mainly happens on IRC, the mailing list (wikitech-l) and on our bugtracker, people mostly just work on what they feel like working on, aside from brion maybe;)

Do you work on the project full-time, or do you have another job?[edit]

I (Brion) am now working for Wikimedia full-time; MediaWiki is my main responsibility as the software powering our big wiki projects.

Other volunteers still go to the university or have a full-time job in the IT industry.

If you work on the project part-time, how much time would you say you spend, per week, on it?[edit]


What is your development environment like?[edit]

(Machines), operating system(s), compilers, debuggers, etc.)

brion: I use a PowerBook running Mac OS X and a homebuilt Athlon box running Ubuntu Linux. Most of my PHP work gets done in BBEdit.

ævar: iBook G4 running GNU/Linux, I write code in vim

And of course we have the biggest wiki as performance testbed.


(Bullet points with past release dates, future plans)

  • 2002-01-25: Wikipedia switches from UseMod to the precursor of MediaWiki
  • 2002-07-??: Partial rewrite; this code base becomes MediaWiki
  • 2003-08-29: first "stable" public snapshots of MediaWiki
  • 2003-12-08: 1.1.0 - first version number applied so we can tell what third-party users are talking about ;)
  • 2004-03-24: 1.2.0 - Web-based installer script vastly simplifies installation and upgrades
  • 2004-08-12: 1.3.0 - New theming abilities, template transclusion
  • 2005-03-20: 1.4.0 - Major performance enhancements, improved data caching, history data compression
  • 2005-10-05: 1.5.0 - Database backend redone for scalability, data integrity
  •  ????-??-??: 1.6.0 - Improved portability: PostgreSQL and Oracle support out-of-the-box, etc

How can others contribute?[edit]

(What tasks can they help with? Is there a talent or resource wish list? How can they to sign up?)

Bug reports and patches:

Organizing a repository of extension plug-ins and skins would be a really cool thing to do...

  • Project leader(s)
  • Name: Brion Vibber
  • Age: 26
  • Occupation or experience: Web application developer
  • Education: USC film school dropout :)
  • Location: Southern California

  • Name:
  • Age:
  • Occupation or experience:
  • Education:
  • Location:

(repeat above info for each project leader)

  • Key developer(s)
  • Name: Domas Mituzas
  • Age: 23
  • Occupation or experience: database guy
  • Education: Vilnius University dropout ;-)
  • Location: Vilnius, Lithuania

  • Key developer(s)
  • Name: Ævar Arnfjörð Bjarmason
  • Age: 19
  • Occupation or experiance: none
  • Education: High-school dropout
  • Location: Akureyri, Iceland

  • Name: Tim Starling
  • Age: 24
  • Occupation or experience: PhD student (physics)
  • Education: BSc, University of New South Wales
  • Location: Melbourne, Australia

[Photo of developers and/or project logo - please attach GIF, JPG, or PNG file(s)]

Quote about[edit]

"<insert witty quote here>"

Why did you place the project on[edit]

It was like that when we found it!

How has helped you?[edit]

Providing a multiuser source control repository and mirrors for file distribution is a great convenience for a project that's just starting out. Having those things still available when your own site is broken -- priceless. :)

The number one benefit of using is:[edit]

It's neat!