Solltest du zum ersten Mal von der Unified Community Platform hören, liest du am besten erstmal den ausführlichen Informationsblog zur neuen Plattform.
Hallo zusammen!
Sicherlich habt ihr in einem unserer Beiträge schon davon gelesen, dass die Unified Community Platform uns ermöglichen wird, all unsere Wikis auf einer einzigen, modernen Version der MediaWiki-Software laufen zu lassen. Für Fandom-Communitys bedeutet das ein Upgrade auf MediaWiki 1.33.
Unseren langjährigen, erfahrenen Wiki-Benutzerinnen und -Benutzern ist wahrscheinlich sofort klar, wieso ein Upgrade Sinn macht, doch für viele neuere Benutzerinnen und Benutzer wird das Wort „MediaWiki“ eher fremd sein. Was ist MediaWiki und was hat es mit Fandom zu tun? Hat Fandom nicht seinen eigenen Code? Warum ist es so viel Arbeit, MediaWiki zu upgraden?
Das sind einige der Fragen, die wir heute beantworten werden. Es ist sehr wichtig, dass unsere Communitys verstehen, wie Fandom und MediaWiki zusammenhängen und warum eine moderne MediaWiki-Version zu einer modernen Plattform beitragen wird.
Was ist MediaWiki?
MediaWiki ist ein Content-Management-System (bzw. Inhaltsverwaltungssystem oder kurz CMS). Was ein Content-Management-System ist?
CMS sind Anwendungssoftwares, die es Personen mit unterschiedlichen technischen Fähigkeiten ermöglichen, Webseiten zu bauen. Es handelt sich um sehr umfangreiche Software, da sie im Grunde alles enthalten muss, was man für das Betreiben einer erfolgreichen Seite braucht. Zum Beispiel:
- Vorlagen, die es erlauben, Seiten einheitlich zu gestalten.
- Die Möglichkeit, das Seitendesign und angezeigte Elemente anzupassen.
- Eine benutzerfreundliche Schnittstelle zum Hinzufügen und Ändern der Inhalte.
- Moderationswerkzeuge.
- Eine gut organisierte Inhaltsstruktur.
- Die Möglichkeit, die Software ohne viel Aufwand zu erweitern (zum Beispiel durch unabhängige Entwickler) und für besondere Anforderungen anzupassen.
Ein CMS ist im Grunde ein Standardbauteil jeder Plattform, auf der Inhalte erscheinen. Am populärsten ist dabei WordPress. Wenn du heute schon auf einigen Seiten im Internet unterwegs warst (und man den Fakt ignoriert, dass du das hier gerade auf einer CMS-basierten Seite liest), sind die Chancen sehr hoch, dass du bereits auf einer Webseite warst, die mithilfe eines CMS gebaut wurde.
Die Entwicklung von MediaWiki begann 2001. Es wurde einzig für den Zweck entwickelt, Wikipedia zu hosten. Wikis als Konzept gab es schon seit etwa Mitte der 90er (EN). ‚Wiki’ kommt vom hawaiianischen Wort Wikiwiki, was ‚schnell’ bedeutet. Dieser Ausdruck wurde gewählt, weil das Konzept schnelle Bearbeitungen der sichtbaren Inhalte vorsah.
Was MediaWiki einzigartig macht – damals wie heute – ist eine Versionskontrolle (oder in Wiki-Sprache Versionsgeschichte) und das Speichern von Seiten in MySQL. Dadurch wird es für Wikis ermöglicht, in größerem Umfang zu operieren als es mit anderen System möglich wäre. Es ist der Grund, warum es für Fandom möglich ist, hunderttausende Wikis auf einer Plattform zu betreiben.
MediaWiki wurde im Januar 2002 erfolgreich auf Wikipedia gestartet. Das Interesse von Entwicklern führte zur Gründung der Wikimedia Foundation, welche die Software bis heute entwickelt und instand hält. Auch entstand dadurch die Möglichkeit, die Software für unabhängige Wikis zu nutzen.
Fandom und MediaWiki
Da Fandom im Jahr 2004 von Wikipedia-Veteranen Jimmy Wales und Angela Starling gegründet wurde, war MediaWiki der offensichtlichste Kandidat zum Betreiben der Plattform.
In den ersten Tagen der Plattform handelte es sich um eine reine Wiki-Farm – die betriebenen Wikis wiesen kaum Unterschiede zur Standardversion von MediaWiki auf. Fandom und die Wikimedia Foundation arbeiteten sogar bei mehreren Initiativen in den späten 2000ern und 2010ern direkt zusammen – die VisualEditors beider Plattformen entstanden beispielsweise so.
Mit der Zeit begannen sich die Anforderungen von Fandom und der Wikimedia Foundation aber immer mehr zu unterscheiden. Die Foundation hatte weiterhin vor allem den Fokus auf Wikipedia und die Anforderungen dieses speziellen Typs von Wissenssammlung. Fandoms Communitys entwickelten mit der Zeit aber ganz andere Anforderungen an die Plattform. Die riesige Menge unserer Wikis hatte zusätzlich zur Folge, dass der MediaWiki-Code angepasst werden musste, um die Performance der Plattform zu verbessern. Immer, wenn es eine neue MediaWiki-Version gab, musste unser Entwicklerteam Wochen an Arbeit investieren, um Unterschiede im Code zu vergleichen und unseren angepassten Code kompatibel zu machen, bevor ein Upgrade möglich war.
Mitte 2013 wurde daher entschieden, die MediaWiki-Software zwar weiter zu nutzen, aber nicht mehr als Gesamtpaket zu aktualisieren. Aus diesem Grund laufen alle Fandom-Wikis seit fast sieben Jahren auf MediaWiki-Version 1.19 – auch wenn die Version seitdem stark angepasst wurde.
Was MediaWiki besonders macht
Du und alle anderen können grundsätzlich Seiten hinzufügen und ändern! … Ernsthaft, das ist im Grunde die Basis von MediaWiki.
MediaWiki ist das einzig große CMS, das Crowdsource-Editing ermöglicht. Die meisten ähnlichen Softwares ermöglichen es standardmäßig nur dem Betreiber und einzeln freigeschalteten Personen, Änderungen an Inhalten vorzunehmen.
Weil MediaWiki im Grunde auf Basis dieses speziellen Zwecks entwickelt wird, macht es einige Dinge sehr gut:
- Bearbeiten
- Die Standard-Berechtigungen von MediaWiki machen es allen Endbenutzern möglich, Inhalte hinzuzufügen oder zu ändern.
- Dabei wird eine simple Anwendungssprache namens Wikitext genutzt, die es ermöglicht, Seiten zu verlinken, Bilder hinzuzufügen und viele weitere Möglichkeiten zu nutzen, ohne HTML oder PHP lernen zu müssen.
- Der Parser von MediaWiki – das Programm der Software, das den Inhalt der Seiten in richtiges HTML umwandelt, um es in Browsern anzeigen zu können – kommt auch mit sehr kompliziertem Markup klar, was die Erstellung komplexer Seiten ermöglicht, ohne viel Arbeit in die Darstellungsmöglichkeiten zu stecken.
- Struktur
- MediaWiki legt nicht automatisch fest, wie Inhalte strukturiert und organisiert werden. Das ist ein großer Vorteil, weil es Communitys möglich macht, die Seiten nach ihren Anforderungen zu organisieren und kategorisieren.
- Die meiste Organisation der Inhalte wird durch MediaWikis „Kategorien“-Werkzeug ermöglicht, welches es ermöglicht, ähnliche Seiten unkompliziert in eine Sammlung zu packen. Seiten können dabei in beliebig viele Kategorien einsortiert werden.
- Außerdem bietet MediaWiki einige Werkzeuge in Form von „Spezialseiten“, in denen auch Seiten mit bestimmten Eigenschaften gesammelt werden, zum Beispiel Spezial:Längste Seiten.
- Namensräume bieten die Möglichkeit, verschiedene Arten von Seiten klar voneinander zu trennen.
- Moderationswerkzeuge. Admins können:
- Benutzer im Front-End zu sperren.
- Bearbeitungen überprüfen – zum Beispiel mithilfe der Letzten Änderungen & Patrol.
- Bearbeitungen durch die Versionsgeschichte schnell zurücksetzen.
- Die Bearbeitungsmöglichkeiten auf bestimmten Seiten einschränken.
- E-Mail-Beobachtungsliste
- Anpassbarkeit
- Administratoren können Navigations-Elemente einfach anpassen.
- Benutzerinnen und Benutzer können eigene CSS- und JS-Schnipsel nutzen.
- Verschiedene Ebenen des Interface können durch Änderung an MediaWiki-Systemnachrichten angepasst werden.
- Vorlagen
- Um den Aufbau von konsistenten Seiten zu ermöglichen, kann Code einfach als Vorlage gespeichert und auf Artikelseiten aufgerufen werden.
- Die meistgenutzten Vorlagen nennen sich „Infoboxen“.
- Die Weiterentwicklung geschieht im Vergleich zu anderen CMS schneller, da es sich um ein Open-Source-Projekt handelt.
Warum richtet sich Fandom in Bezug auf MediaWiki neu aus?
Es gibt viele technische, soziale und geschäftliche Gründe, warum Fandom beschlossen hat, auf eine universelle Software-Plattform umzusteigen. Die Menge an Entwicklungsaufwand eines hochgradig angepassten Codes ist deutlich höher als wenn alles auf eine moderne MediaWiki-Version ausgerichtet ist. Fandom und Curse Media haben sich vereint und dadurch gehören auch Gamepedia-Wikis, die schon immer auf einer modernen MediaWiki-Version gehalten wurden, zum Unternehmen. Es macht also Sinn, alle Wikis zukünftig auf einer einzigen Plattform zu betreiben. Außerdem bekamen wir seit Jahren die Rückmeldung von Benutzerinnen und Benutzern, dass ein Update sehr gewünscht ist.
Sobald die Entscheidung gefällt war, musste festgelegt werden, wie man die Codebasis organisieren will. Gamepedia orientiert sich schon immer sehr nah am Standard-MediaWiki. Fandom müsste also einiges aufholen. Ein Upgrade der existierenden Fandom-Plattform wäre eine unglaublich komplizierte technische Herausforderung gewesen, also machte das Entwickeln einer neuen Plattform auf Basis von MediaWiki 1.33 am meisten Sinn.
Außerdem hielten viele Benutzerinnen und Benutzer die Abspaltung von MediaWiki für einen Fehler und eines der Hauptprobleme des Unternehmens. Eine Zeit lang haben wir uns zu sehr auf andere Dinge konzentriert, auf Kosten der eigentlichen Wiki-Plattform. Dies erweckte den Eindruck, wir würden uns nicht für unsere existierenden Wiki-Autorinnen und Autoren interessieren.
Das Upgrade auf eine aktuelle MediaWiki-Plattform bedeutet, dass bald neue Moderations- & Inhalts-Werkzeuge zur Verfügung stehen, die es seit 2013 in die MediaWiki-Software geschafft haben. Der Mobile Editor ist hier eines der wichtigsten Beispiele. Es wird deutlich werden, dass Fandom eine moderne Wiki-Plattform ist. Eine aufgeräumte Codebasis wird es außerdem einfacher machen, neue Funktionen zu entwickeln, die seit Jahren gewünscht werden.
Insgesamt ist es aber dennoch ein kompliziertes Unterfangen. Die Fandom-Plattform besteht aus über einer Million Codezeilen. Um die Kompatibilität mit aktuellen MediaWiki-Versionen sicherzustellen muss jede Zeile überprüft werden. Wir müssen sicherstellen, dass veraltete Funktionen – Software-Methoden, die nicht mehr aktuell sind und nicht unterstützt werden – ersetzt werden. Fandom hat außerdem eine Reihe von „Microservices“ wie die Diskussionen oder Benutzerberechtigungen, welche vernünftig mit MediaWiki „kommunizieren“ können müssen.
Unsere Entwickler gehen dabei Funktion für Funktion vor, kontrollieren Code und passen ihn dann für die neue Plattform an. Das ist auch der Grund dafür, warum es nicht praktikabel war, die Plattform vor der Veröffentlichung komplett fertigzustellen. Simple Codes können so live getestet werden, die Funktionalität der Plattform wird ausgetestet und wir können währenddessen weiter an komplizierten Funktionen und Erweiterungen im Back-End arbeiten.
Am Ende wird die Plattform zu großen Teilen aus dem bestehen, was ihr bereits kennt und liebt. Ein paar Funktionen müssen angepasst werden, andere müssen ersetzt werden, aber insgesamt wird die Plattform am Ende von Phase 1 stärker sein und für zukünftige Entwicklungen optimiert. Phase 2 wird dann die Entwicklung eben dieser Zukunft sein. Dabei wird euer Feedback sehr wichtig werden, denn es ist der Schlüssel zu einer guten Plattform für alle.
Willst du weitere Updates von Fandom erhalten? Klicke hier, um diesen Blog zu verfolgen.