Open Source

Durch die Arbeit mit dem Computer und auch verbunden durch mein privates Interesse bin ich im Laufe meines Lebens mit verschiedenen Projekte in Kontakt gekommen. Diese kleine Aufstellung listet einige der wichtigsten Projekte.

C/C++-Welt

xf86-input-synaptics

Für den unter Linux verwendeten X11-Display-Server existierte bereits seit vielen Jahren ein Eingabetreiber für Touchpads. Dieser Treiber wurde über Jahre von verschiedenen Entwicklern vorangetrieben, hatte allerdings den Nachteil dass dieser nicht Bestandteil von XFree86 bzw. dem späteren X.Org war. Dies lag an der damals gewählten Lizenz, denn der Treiber selbst verwendete die GPL, während X.Org die MIT-Lizenz einsetzt. Leider führte diese Unstimmigkeit dazu, dass der Treiber unabhängig vom X.Org entwickelt wurde und somit nicht immer zu neueren Versionen kompatibel war. Die Lösung des Problems bestand darin, den Treiber zu relizensieren. Dazu ermittelte ich auf Grund des Quelltextes und der Versionskontrollsystems git die entsprechenden Entwickler des Treibers. Dies erwies sich als schwierig, weil über die Jahre viele Entwickler ihr Interesse am Treiber verloren oder ihre Emailadresse geändert hatten. Nach langen Recherchen konnte ich viele Entwickler im näheren Umfeld von Universitäten ermitteln. Andere Entwickler ließen sich mit einer Suche im Internet nach ihrem Namen zusammen mit dem Schlagwort „Linux“ ermitteln. Den letzten noch ausstehenden Entwickler fand ich letztendlich durch Zufall auf der Mailing-Liste des GPM-Projekts, einem Projekt dass sich mit einem Maustreiber für die Linux-Konsole beschäftigt.

Zum Zeitpunkt, als ich das Einverständnis alle Entwickler hatte (mit Ausnahme von Matthew Garrett, dessen Code entfernt wurde), hatte der Maintainer des Treibers ebenfalls das Interesse verloren. Daher übernahm ich die Aufgabe, den Code in die Versionsverwaltung von X.Org aufzunehmen und diesen zu pflegen. Ich integrierte Patches der größeren Distributionen und stellte den Treiber unter der neuen Lizenz zur Verfügung. Dies wurde sogar von heise.de berichtet. Mitlerweile betreue ich den Treiber zusammen mit Peter Hutterer, der unter anderem für MPX verantwortlich ist und ein sehr breites Wissen über Eingabegeräte unter Linux vorweisen kann.

Java

Quick-Reader

Mit dem Ende von Google Reader stellte sich mir die Frage: Wohin wechseln? Da ich zu diesem Zeitpunkt mit Google App Engine experimentieren wollte, nahm ich dies als Gelegenheit, mir selbst einen Ersatz zu schreiben. Den Code habe ich auf GitHub zur Verfügung gestellt und betrieb bis Oktober 2014 eine App Engine Instanz. Für meine Zwecke funktionierte Quick-Reader sehr gut und ich nutzte ihn täglich. Mittlerweile bin ich auf The Old Reader gewechselt.

Android DRI IRC log viewer

Für den IRC log des Mesa/DRI-Projektes (siehe DRI IRC Logger) habe ich einen Android Client geschrieben, um den Chat auf mobilen Endgeräten verfolgen zu können. Diese App diente für mich als Spielwiese, um Android und die Kompatibilitätsbibliothek „appcompat“ kennen zu lernen. Den Code gibt es auf GitHub, die App im Play Store.

PHP-Anwendungen

DRI IRC logger

Das Mesa/DRI-Projekt für die Erstellung von freien Grafikkarten-Treibern unter Linux verwendet neben Mailinglisten hauptsächlich IRC zur Kommunikation. Diese live mit zu verfolgen ist schwierig, da es ein Echtzeitchat ist. Aus diesem Grund habe ich einen Service etabliert, der den Chat mitschneidet und auf einer Webseite veröffentlicht. Den Code findet man auf freedesktop.org.

BBClone

Ich war einige Jahre der Verwalter der Projekts BBClone, einem statistischen Auswertungswerkzeug für Webseitenzugriffe von PHP-basierte Webseiten. Meine Haupttätigkeit bestand darin, neueste Suchmaschinen, Betriebssysteme und Browser anhand des User-Agents zu erkennen. Im Zuge dessen entwickelte ich eine Regression-Test-Suite um sicherzustellen, dass durch meine Änderungen keine Fehler in der Erkennung eingeschleust wurden. Mittlerweile wurde diese Aufgabe von anderen Entwicklern übernommen und ich habe mich aus der aktiven Entwicklung zurückgezogen und stehe nur noch beratend zur Verfügung. Für meine Projekte verwende ich entweder Google Analytics oder Piwik.

Enticore

Enticore war mein Ansatz eines minimalistischen CMS. Primär stellte es eine einfache Möglichkeit zur Verfügung, HTML-Inhalte im Browser zu erstellen, diese in einer Datenbank zu speichern und auszuliefern. Begonnen wurde das Projekt als Lernhilfe für die Unterschiede von PHP 4 zu PHP 5, insbesondere was die Klassenunterstützung anging. Ich benutze Enticore immer noch für einige sehr einfache Seiten, da es bedeutend schlanker ist als Drupal, WordPress, Joomla, Typo3 und Co. Allerdings habe ich die Entwicklung vollständig eingestellt, da extrem viele andere vergleichbare Systeme auf dem Markt existieren. Auch diese Seite verwendete Drupal und jetzt WordPress, welche eine ähnliche Flexibilität und weit höhere Erweiterbarkeit besitzten (auch wenn sie etwas schwergewichtiger sind).

Copyright © christophbrill.de, 2002-2017.