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
contribute?
Tim, Everyone,
Your list of objections seems to sort of miss the mark so I thought I'd
share some ideas.
[...]
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
the like.
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
leads.
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.
Not everyone has 20 years of programming experience. Many potential
Wikipedia developers don't have that kind of skill level. That doesn't mean
they don't have a useful contribution to make. And their skill will increase
over time, as they work with us.
A number of people have posted messages saying that my list of objections
were reasonably close to their own reasons for not contributing. I don't
intend to tell them all that they should go get a decade of experience and
come back later, I intend to do my best to address their concerns.
As for financial incentives: let's just say opinions are divided. Maybe if
Louis pushed it for long enough, and made a good enough case, it might
happen. But I think there's a fairly large potential labour pool who will
work for nothing (except for a bit of support).
Extra recognition sounds nice. It wouldn't be hard to increase the
prominence of software credits -- it is a wiki after all. I won't do it
myself though -- that would kind of defeat the purpose in emotional terms.
-- Tim Starling.