Open Source im professionellen Einsatz

OSQA

OSQA ist freie Software und steht unter der GPL. Die Abkürzung steht für Open Source Question and Answer; im Hintergrund steht die Firma Dzone [9]. Sie stellt die Entwickler, hostet die Plattform und unterstützt das Projekt finanziell. OSQA ist unter anderem beim Projekt Openstreetmap im Einsatz. Voraussetzung, um mit dieser Plattform zu arbeiten, ist ein eigener Webserver oder zumindest ein gemieteter Server mit Root- und Shellzugriff. Es handelt sich also nicht um einen Dienst in der Cloud, sondern um eine Lösung für alle, die sich nicht von einem fremden Unternehmen abhängig machen wollen.

Im Test trat die aktuelle Betaversion namens Fantasy Island (0.9.0) an, die als Tar.gz.-Archiv auf der Projektseite zum Download steht. Neugierige finden hier ebenfalls einen Link zum Subversion-Repository, um die aktuelle Entwicklungsversion zu testen.

OSQA benötigt neben Apache und MySQL eine Reihe von Python-Erweiterungen sowie das Django-Framework [10]. Außerdem setzt das System im Hintergrund auf Markdown, die Html5lib, South und das Web Server Standard Interface (WSGI). Ausführliche Installationsanleitungen für verschiedene Linux-Systeme bietet das Projekt-Wiki unter [11]. Leider sind viele der Dokumente inzwischen veraltet. Mit ein bisschen Transferleistung und Hintergrundwissen zu Apache ist die Plattform aber in zirka einer Stunde einsatzbereit. Wer Verknüpfungen zu Facebook und Twitter wünscht, der sollte ein bis zwei Stunden extra einplanen.

In der Regel beginnt die Arbeit damit, einen neuen System-User namens »osqa« anzulegen. Dessen Homeverzeichnis dient als Server-Root. Nachdem der Admin Apache, MySQL, WSGI und alle Python-Bestandteile installiert und WSGI via Copy  &  Paste konfiguriert hat, sollte er einen Blick in die Konfigurationsdatei »settings_local.py« werfen. Auf dem Testrechner (Ubuntu 11.10) wich die Schreibweise in der Datenbanksektion von der Anleitung ab; ein korrekter Eintrag sieht so aus:

DATABASES = {
 'default': {
 'ENGINE': 'django.db.backends.mysql',
 'NAME': 'osqa',
 'USER': 'osqa',
 'PASSWORD': 'passwort',
 'HOST': '',
 'PORT': '',
 }
}

In der Einrichtungsdatei muss der Admin ebenfalls die Werte für »APP_URL« eintragen und die »TIME_ZONE« auf »'Europe/Berlin'« setzen. Bevor er die Option »LANGUAGE_CODE = 'en'« auf »'de'« umstellen darf, steht aber noch einige Arbeit ins Haus. Eine deutsche Lokalisierung existiert derzeit nicht, sie ist mit Django im Verzeichnis »locale/de/LC_MESSAGES« aber technisch durchaus möglich [12]. Sind die Klippen der Installation umschifft, steht OSQA nach einem Apache-Neustart unter der bei »APP_URL« angegebenen Adresse bereit.

Lohn der Mühe

Danach legt der Admin einen neuen Benutzeraccount an. Das kann ein lokaler OSQA-User sein, zur Wahl stehen aber auch Zugänge via Open ID, Google, Yahoo oder – sofern aktiviert – Facebook und Twitter. Egal welchen Mechanismus der Administrator hier nutzt, der erste User ist automatisch auch der OSQA-Administrator.

Im Kundeninterface ist ein Wysiwyg-Editor vorhanden, der die Eingabe von Fragen und Wünschen erleichtert. Er versteht zudem einfache Wiki- und HTML-Syntax. Auch dieser Testkandidat durchsucht ausgehend vom Titel bereits eingetragene Themen und schlägt sie gegebenenfalls vor. Zusätzlich können Hilfesuchende einem Thema per RSS-Feed folgen und per Klick über Gefallen und Nichtgefallen abstimmen. Abgesehen von Tags gibt es keine Sortierfunktion für die eingereichten Fragen. Andere Foren als »Questions« sind ebenfalls nicht vorgesehen beziehungsweise nicht ohne Eingriffe in den Quelltext zu realisieren.

Die Administrationsoberfläche bietet einen recht unerfreulichen Anblick. Die rechte Menüleiste ist unsortiert und bei jedem Handgriff beginnt die Suche nach dem richtigen Link von Neuem. Um der Plattform den nötigen Feinschliff zu verpassen, gilt es, endlose Textfeld-Wüsten abzugrasen – hier fehlt eine übersichtlichere Gestaltung.

Unhandlich ist auch die Benutzerverwaltung. Um etwa nach einem nächtlichen Einfall von Spammern deren Hinterlassenschaft vom System zu putzen, müsste ein Admin ohne Datenbankkenntnisse oder -zugriff jede Benutzerseite einzeln aufrufen und dort aus einem Dropdown-Menü »suspend user« auswählen. Eine Funktion zur Massenverarbeitung existiert in der aktuellen OSQA-Version nur für Fragen und Kommentare.

Im Vergleich mit den anderen Kandidaten besitzt die Plattform aber ein herausragendes Alleinstellungsmerkmal: Das Voting-System haben die Entwickler um ein durchdachtes Reputationssystem ergänzt (Abbildung 7). Kunden, deren Beiträge andere Benutzer positiv bewerten, dürfen häufiger neue Vorschläge machen und öfter kommentieren als andere.

Abbildung 7: Als einziger Testkandidat bietet OSQA ein ausgefeiltes Bewertungssystem – nicht nur für Beiträge, sondern auch für Benutzer. Bewerten andere Teilnehmer einen Anwender oder seine schriftlichen Ergüsse positiv, darf er häufiger neue Themen beginnen und andere kommentieren.

Das Feature schränkt sogar die Befugnisse negativ bewerteter oder neuer Nutzer ein, wenn es darum geht, andere Teilnehmer zu beurteilen. Wie restriktiv das Reputationssystem arbeitet und ab wann Vorschläge einen besonderen Rang erreichen, passen Admins über die Konfigurationsschnittstelle den eigenen Bedürfnissen an. Spam und Sabotage verhindert OSQA somit fast von selbst.

OSQA bietet in der Administrationsoberfläche eine Backupfunktion und exportiert den Datenbankinhalt ins XML-Format. Per Mausklick wählt der Nutzer ein Kompressionsformat, die gewünschten Daten und ein Verzeichnis auf dem Server aus, wo die Sicherungskopien landen (siehe Abbildung 8).

Abbildung 8: Eine Backupfunktion ist in die Administrationsoberfläche integriert. OSQA exportiert ins XML-Format.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 8 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Als digitales Abo

Als PDF im Abo bestellen

comments powered by Disqus

Ausgabe 07/2013

Preis € 6,40

Insecurity Bulletin

Insecurity Bulletin

Im Insecurity Bulletin widmet sich Mark Vogelsberger aktuellen Sicherheitslücken sowie Hintergründen und Security-Grundlagen. mehr...

Linux-Magazin auf Facebook