MediaWiki history/zh

MediaWiki是最初（自2001到2002年以来）由自己的社区为维基百科（后来的维基媒体项目）编写的自由软件.

Phase I: UseModWiki
维基百科于2001年1月推出. 当时，它主要是一项试验，试图推动Nupedia的内容制作，这是由吉米·威尔士创建的免费内容但同行评审的百科全书. 因为这是一个实验，维基百科最初由UseModWiki提供支持，这是一个用Perl编写的现有GPL wiki引擎，使用CamelCase并将所有页面存储在单个文本文件中，没有任何更改历史记录.

很快就出现了驼峰并不适合命名百科全书文章. 2001年1月下旬，UseModWiki开发人员和维基百科参与者Clifford Adams为UseModWiki添加了一项新功能：自由链接，例如能够使用特殊语法（双方括号）链接到页面，而不是自动驼峰链接. 几周后，维基百科升级到支持自由链接的新版UseModWiki，并启用了它们.

虽然这个初始阶段不是关于MediaWiki的“本身”，但它提供了一些上下文并表明，即使在MediaWiki创建之前，维基百科也开始塑造支持它的软件的功能. UseModWiki也影响了一些MediaWiki的功能，例如它的标记语言. Nostalgia Wikipedia包含2001年12月维基百科数据库的完整副本，当时维基百科仍在使用UseModWiki.

Phase II: the PHP script
In 2001, Wikipedia was not yet a top 10 website; it was an obscure project sitting in a dark corner of the Interwebs, unknown to most search engines, and hosted on a single server. Still, performance was already an issue, notably because UseModWiki stored its content in a flat file database. At the time, Wikipedians were worried about being "inundated with traffic" following articles in the New York Times, Slashdot or Wired.

因此，在2001年夏天，维基百科的参与者Magnus Manske（当时的大学生）在空闲时间开始使用专用的维基百科wiki引擎. 他的目标是使用数据库驱动的应用程序改善维基百科的性能，并能够开发“通用”维基引擎无法提供的维基百科特有的功能. 用PHP和MySQL支持编写的新引擎简称为PHP脚本、PHP维基、维基百科软件或第二阶段.

PHP脚本于2001年8月上市，9月在SourceForge上共享，并测试到2001年末. 由于维基百科由于流量增加而遭遇重复出现的性能问题，英语维基百科最终在1月从UseModWiki切换到PHP脚本2002年创建的其他语言版本也慢慢升级，尽管其中一些版本将由UseModWiki保留，直到2004年. 一个名为“User:Conversion script”的自动程序将现有文章的最后版本转换为阶段2格式，Brion Vibber于2002年9月在英语维基百科上部分恢复了之前对UseModWiki历史的修订.

作为使用MySQL数据库的PHP软件，PHP脚本是后来成为MediaWiki的第一次迭代. 它还介绍了当今仍在使用的许多关键功能，例如命名空间来组织内容（包括讨论页），皮肤和特殊页面（包括维护报告，贡献列表和用户监视列表）.

第二阶段分支的最后一个版本在SVN中提供.

第三阶段：MediaWiki
Despite the improvements from the PHP script and database back-end, the combination of increasing traffic, expensive features and limited hardware continued to cause performance issues on Wikipedia. In 2002, Lee Daniel Crocker rewrote the code again, calling the new software "Phase III". Because the site was experiencing frequent difficulties, Lee thought there "wasn't much time to sit down and properly architect and develop a solution", so he "just reorganized the existing architecture for better performance and hacked all the code". Profiling features were added to track down slow functions.

The Phase III software kept the same basic interface, and was designed to look and behave as much like the Phase II software as possible. A few new features were also added, like a new file upload system, side-by-side diffs of content changes, and interwiki links.

It was deployed to the English Wikipedia in July 2002, along with a hardware move to a new (but still single) server. Other features were added over 2002, like new maintenance special pages, or the "edit on double click" option. Performance issues quickly reappeared, though. For example, in November 2002, administrators had to temporarily disable the "view count" and "site" statistics, which were causing two database writes on every page view. They would also occasionally switch the site to read-only mode to maintain the service for readers, and disable expensive maintenance pages during high-access times because of table locking problems.

In early 2003, developers discussed whether they should properly re-engineer and re-architect the software from scratch, before the fire-fighting became unmanageable, or continue to tweak and improve the existing code base. They chose the latter solution, mostly because most developers were sufficiently happy with the code base, and confident enough that further iterative improvements would be enough to keep up with the growth of the site.

Around the same time, Brion Vibber effectively took over as lead developer and release manager of the software. The code is now maintained by a large and active group of developers.

In June 2003, administrators added a second server, the first database server separate from the web server. (The new machine was also the web server for non-English Wikipedia sites.) Load-balancing between the two servers would be set up later that year. Admins also enabled a new page caching system that used the filesystem to cache rendered, ready-to-output pages for anonymous users.

June 2003 is also when Jimmy Wales created the Wikimedia Foundation, a nonprofit to support Wikipedia and manage its infrastructure and day-to-day operations. The "Wikipedia software" was officially named "MediaWiki" in July, as wordplay by Daniel Mayer on the Wikimedia Foundation's name. What was thought at the time to be a clever pun would confuse generations of users and developers.

New features were added in July, like the automatically-generated table of contents, and the ability to edit page sections, both still in use today. The first release under the name "MediaWiki" happened in August 2003, concluding the long genesis of an application whose overall structure would remain fairly stable from there on.

There are no immediate plans for a Phase IV of the software. Instead, MediaWiki development now happens in smaller steps: see the Roadmap.

Once reached phase III, the growth of MediaWiki exploded, thanks to many volunteer developers, who are the reason that MediaWiki exists. Some notable examples of what's been done by volunteer devs follow (including those devs whose volunteer work was so helpful that they were later hired to work on MediaWiki professionally).

MediaWiki软件

 * Original MediaWiki software: Magnus Manske, Lee Daniel Crocker
 * Wiki tables: Magnus Manske
 * Namespaces: ?
 * Templates: Tim Starling (MW 1.2)
 * Template and MediaWiki namespace: Erik Möller and Tim Starling (MW 1.3)
 * MonoBook skin: Gabriel Wicke, with a design document and a mass of user comments (MW 1.3)
 * Categories: ? (MW 1.4)

阅读

 * The table of contents – Erik Möller

编辑

 * Section editing – Erik Möller
 * Watchlist: ?

參考資料

 * Cite – Ævar Arnfjörð Bjarmason


 * Regular/daily updates from translatewiki.net – Nikerabbit, Siebrand and since 2007 Raymond (including the LocalisationUpdate extension)
 * Committing or enabling all sorts of l10n – Nikerabbit, Brion Vibber, Rob Church, Ævar Arnfjörð Bjarmason, Rotem Liss, Hashar
 * Other l10n/i18n – Huji, Collinj, JeLuF, Reedy, Simetrical, IAlex

多媒體

 * MediaWiki core uploading infrastructure – Bryan
 * VipsScaler – Bryan


 * Original author 2005–2006 – Yurik
 * Maintainer 2008?–2013? – Catrope
 * Others – Bryan, IAlex, Reedy
 * Current maintainer – Anomie

维基文库工具

 * Wikisource:WSexport – Tpt
 * ProofreadPage - ThomasV (creator) and Tpt (current maintainer)

其他扩展
Some of the MediaWiki extensions used on WMF wikis originally created and/or currently maintained by volunteers:
 * CategoryTree
 * CheckUser
 * Global Usage
 * Interwiki
 * MassMessage
 * Nuke
 * Renameuser
 * SiteMatrix
 * Translate
 * Babel
 * CharInsert
 * EasyTimeline
 * InputBox
 * LabeledSectionTransclusion
 * Poem
 * RSS feed
 * WikiHiero
 * SpamBlacklist
 * ApiSandbox
 * cldr
 * Score – supporting musical scores by User:GrafZahl

And many widely used extensions for non-Wikimedia wikis, like:
 * Most of Semantic MediaWiki – many contributors
 * ConfirmEdit's most used and useful module, QuestyCaptcha – Emufarmers
 * ConfirmAccount

参见

 * Release notes and MediaWiki version history
 * Extremely short highlights of recent releases: Manual:Upgrading
 * History of MediaWiki version control
 * Principles and MediaWiki for context
 * Wikimedia history and MediaWiki timeline
 * Wikimedia Product/2016 Product Summary