

For example, MediaWiki ships with an excellent web-based installer, making the installation process much less painful than when everything had to be done via the command line, and the software contained hardcoded paths for Wikipedia. MediaWiki used to be really focused on Wikimedia sites, but efforts have been made to make it more generic and better accommodate the needs of these third-party users. Third-party reusers know that as long as such a high-profile website as Wikipedia uses MediaWiki, the software will be maintained and improved. MediaWiki has also gained a solid external user base by being open-source software from the beginning. Developers made major architectural changes, like MediaWiki 1.12's preprocessor, because the way that MediaWiki was used by Wikipedians made it necessary. The architecture of MediaWiki has been driven many times by initiatives started or requested by the community, such as the creation of Wikimedia Commons, or the Flagged Revisions feature. So, from the start, the needs and actions of a constantly evolving community of Wikipedia participants have affected MediaWiki's development, and vice versa. This means, for example, that MediaWiki doesn't include regular features found in corporate CMSes (like easy publication workflow or ACLs), but does offer a variety of tools to handle spam and vandalism. Unlike generic CMSes, MediaWiki was originally written for a very specific purpose: supporting a community that creates and curates freely-reusable knowledge on an open platform. The influence of Wikipedia on MediaWiki's architecture isn't limited to performance. The book chapter has a historical overview section that corresponds to MediaWiki history, and this wiki page has had numerous edits since the chapter was published in 2012.įrom the start, MediaWiki was developed specifically to be Wikipedia's software.ĭevelopers have worked to facilitate reuse by third-party users, but Wikipedia's influence and bias have shaped MediaWiki's architecture throughout its history. This document is the result of the MediaWiki architecture document project, whose content was developed for inclusion in the Architecture of Open Source Applications book.
