Is there anyone out there who has considered
contributing to the
MediaWiki PHP script, but decided it against for reasons such as:
Or perhaps you've contributed on occasion but you're deterred from
contributing again for reasons such as those above?
If so, please speak up! What areas could we improve to make it easier to
Your list of objections seems to sort of miss the mark so I thought I'd
share some ideas.
* Don't know PHP/MySQL
PHP and MySQL, though
not particularly common, are simple enough that
anyone with a reasonably strong background in things like Perl, Java,
and other SQL database should have little difficulty with them.
* Poor documentation, can't understand the code
I don't get it. The code is simple. The Wikimedia server is not nearly
big enough, or complicated enough, to pose much of a challenge or
obstacle for people who have the background. By that I mean, that
people who know HTML, Apache, SQL, OOP, and the basics of data-driven
web site operation -- it's straightforward.
* Don't have a test server
Well, it has been
run with minimal changes now on Apple, Windows, and
Linux environments. For functional changes, that's a sufficient
environment for development and preliminary testing.
* Don't have CVS/server access, and you find
contributing otherwise to
be tedious and frustrating
Since the project is CVS readable to the world, I
don't think this is
* Wouldn't know where to start
that's part of it.
The first obstacle, for me, is motivation. After twenty years of
writing code the novelty has worn off (though I still enjoy what I do)
and I only write software for the best of reasons. In most cases these
reasons involve money. Now, I'm willing to volunteer my time and
talents, but it better be fun, or for some sort of just cause or greater
good, or have some sort of non-financial reward involved.
The Wikimedia software needs work like profiling, tuning, index
analysis, and careful analysis of performance issues. It needs
implementation of fiddly things like deletion management and automated
software installation, and some basic, boring maintenance and bugfixing.
These are not particularly fun tasks as development goes, which should
be unsurprising, because there are plenty of volunteers for the
high-level architecture, initial implementation of sexy features, and
Now, developers at Wikipedia, as a rule, don't get much in return for
their efforts. They don't get any greater input into policy discussions
than anyone else, they don't get any real special access or anything,
and they don't get particularly much in the way of credit, fame, or job
To some extent these motivational problems are present on any
open-source project, though they seem particularly acute at Wikimedia
since the software is not a good candidate for reuse for other projects,
given that UseModWiki is the most frequent choice.
So, what to do?
First, a greater recognition of the odious yet important nature of some
of the tasks.
Second of all, it would help to publicize software development credits
more prominently on the site.
Third, some sort of remuneration, even if token and noncash, would be
helpful. Maybe we could start with a gift registry, and people could
send boxes of fancy fruit, expensive scotch, and candy to their favorite
developer. Or raffle off a free winter vacation for two to some sunny
island villa. Or just pay a small hourly stipend for development work,
even if it is only a fraction of the market rate.