Protokoll des Lugrav-Treffens vom 22.3.2007
Hallo Tuxe , im Folgenden in Kürze zusammengefasst das Wichtigste vom Treffen der Lugrav am 22.3.2007 in der Schule am Möllerstift : 1)Nach der traditionellen Vorstellungsrunde , die insbesondere unserem Referenten und Gast Jan Schneider die Anwesenden kurz nahebringen sollte, folgte zunächst ein Rückblick auf den nun schon fast traditionellen Linuxtag am ersten Märzwochenende in Chemnitz. Unter denen, die dort waren, bestand Einigkeit darüber, dass es sich auch in diesem Jahr wieder um eine hervorragend organisierte, überschaubare, in ihrer Atmosphäre fast familiäre Veranstaltung mit interessanten Vorträgen handelte, die in mehreren Hörsälen der TU Chemnitz parallele Veranstaltungsreihen zu verschiedenen Themen und qualitativ hochstehende Workshops anbot. Darüber hinaus waren, wie üblich , verschiedene Gruppen wie Vertreter der Distrubutionen( Debian, Ubuntu u . a. ) , Projekte wie Skolelinux, grml, LiMux, OpenWRT und viele mehr in der Gebäudehalle präsent und ermöglichten einen ungezwungenen Austausch untereinander. Am Donnerstag wurde auch noch kurz über einige Vorträge des Linuxtages gesprochen, wie etwa den von Jörg Schilling über libfind. Aus seiner langen Erfahrung hatte Jörg an die Einführung von uns heute so elementar und unverzichtbar erscheinenden Dingen wie die Einführung von Pipes zwischen verschiedenen Unix-Dienstprogrammen erinnert. Er selbst hat mit libfind eine Möglichkeit entwickelt, find reentrant auszuführen und sich die Möglichkeit zu verschaffen, durch entsprechenden Einbau in Pipes auch während einer Archivierung Attribute von Dateien zu verändern und die Aufruf- und Kommandozeilensemantik dafür im Vergleich zu dem heute zur Verfügung stehenden Instrumentarium wesentlich zu vereinfachen. Erinnert wurde ferner am Donnerstag an den Vortrag über Ruby on Rails, der in Chemnitz im Themenstrang www von Peter Dickten aus Fürth gehalten wurde. Da es sich offensichtlich in der Webentwicklerszene derzeit um ein Modethema handelt, war der Hörsaal bei dieser Veranstaltung gut gefüllt. Die Sprache Ruby kommt aus Japan , wurde 1995 von Matsumoto kreiert und ist eine objektorientierte Skriptsprache. Weiterentwickelt von dem Amerikaner David Hansson, der auf der Webseite 37signals.com eine mit vielen Karikaturen durchsetzte Einführung gibt, erlaubt die Sprache die rasche Entwicklung von Webseiten und -anwendungen. Dabei wird das auch aus anderen Sprachumgebungen ( Java ) bekannte Model-View-Controller-Konzept eingesetzt. Im Vortrag wurde auf einige fertige Pakete zur Installation von Ruby verwiesen, wie ruby, irb oder rdoc , sowie gezeigt, wie einfach es ist, etwa eine Datenbank anzulegen. In 3 verschiedenen Konfigurationen kann zwischen der Entwicklung , dem Test und der Produktion unterschieden werden. Beim Aufruf vom Webanwendungen folgt die URL dem Schema http://<server>:<portnummer>/<controller als Klasse>/<aktion als Methode>/<id als Parameter>. In dem Vortrag wurde auch erwähnt , dass es in Ruby on Rails leicht sei, neue Projekte aufzusetzen, aber deutlich schwerer, vorhandene zu überarbeiten. Der Referent wies auf die Webseite http://poignantguide.net zur Einführung in das Thema hin. Ein weiterer Vortrag in Chemnitz beschäftigte sich mit dem barrierefreien Web aus der Sicht eines Sehbehinderten, der selbst aus eigener Erfahrung mit den Schwierigkeiten zu kämpfen hat, die er mit vielen Seiten hat. Er selbst nutzt vielfach Textbrowser , die aber in der mangelnden Textorientierung vieler Webauftritte ihre Grenze finden. Vorgestellt wurden in Chemnitz ferner Alternativen zu Präsentationsprogrammen, die als Powerpointclones bezeichnet werden könnten. Hierzu stellte der Entwickler Martin Fiedler keyJnote vor, das u. a. Lupenfunktionen für Folien, vereinfachte Gesamtansichten über einen Vortrag und besondere Überblendtechniken bietet. Das Programm beruht auf Python und kann bei http://keyjnote.sourceforge.net heruntergeladen werden. Eine weitere alternative Präsentationsmöglichkeit besteht mit Latex-Beamer, vorgestellt von Andreas Tille. In einem weiteren Vortrag wurde in Chemnitz von Erkin Yanar R als eine objektorientierte Sprache für die Erhebung von Statistiken vorgestellt, die neben den üblichen, in diesem Bereich obligaten Berechnungen auch entsprechende erleichterte Visualisierungsmöglichkeiten bietet, die durch den Aufruf von ( selbsterklärenden ) Funktionen wie pie( ) , curve( ) , plot( ) oder barplot() nach entsprechender Aufbereitung der Primärdaten genutzt werden können. Weiterhin wurde am Donnerstag noch ein Vortrag zur Automatisierung von Bildverarbeitung erwähnt , der in Chemnitz gehalten wurde. Ausgangspunkt war dabei die Verarbeitung von digitalen Urlaubsfotos zu einem Kalender. Die Möglichkeiten des Paketes imagemagick und dabei insbesondere von convert wurden den Skriptmöglichkeiten von Gimp gegenübergestellt. Diese ( mit dem an Lisp erinnernden Skript-Fu ) erwiesen sich für die genannte Aufgabe als geeignet, es wurde Skript-Fu-Code vorgestellt, mit dem die Bilder verarbeitet werden und in Shellskripte integriert werden können. 2)Nach diesem Rückblick auf die Linuxtage in Chemnitz kamen wir zum eigentlichen Hauptthema des Abends, einem Vortrag von Jan Schneider aus Bielefeld zum Projekt Horde. Er selbst kam zunächst als Übersetzer dazu, wurde dann aber immer stärker auch in die Entwicklung einbezogen und ist jetzt selbst einer der Hauptentwickler. Einige wenige Programmierer( auch Jan ) verdienen in und mit Horde ihren Lebensunterhalt, dazu gibt es eine Reihe von freiwilligen, i.e. unbezahlten Programmierern . Es handelt sich bei dem Projekt um ein Webanwendungs-Framework auf der Basis von PHP. Dabei verwendet Horde eine Fülle von selbstentwickelten Bibliotheken, die nach den Kriterien der PHP-typischen PEAR-Bibliotheken( PHP Extension Application Repository , also etwa das, was CPAN für Perl ist ) aufgebaut und abgelegt sind. Ursprünglich ist Horde aus Webmail hervorgegangen . Die Software ist frei und steht unter LGPL-, in Teilen auch anderen Lizenzen wie LGL u. a. Sie ist unter Browsern für Einzelbenutzer und Gruppen nutzbar. Jan Schneider selbst hatte eine erste Berührung mit dem Projekt bei der Installation eines Servers für seine eigene WG, als Horde half, webbasiert bestimmte Aufgaben zu erledigen. Horde besteht aus Kronolith, einem Kalendermodul, Turba, einem Adressbuch, Nag, einem Aufgabenlistensystem und Mnemo, einem Notizbuch. Dazu gibt es eine Webmail-Edition IMP sowie Ingo, einem Emailfilter, die auf Servern eingesetzt werden können und dort die Mailbearbeitung ermöglichen. Das Projekt selbst wurde von dem Amerikaner Chuck Hagenbuch 1998 begründet, der immer noch mit von der Partie ist und auch in strittigen Fragen das letzte Wort hat. Die in den vergangenen Jahren entstandene Codebasis ist riesig und umfasst Millionen von Programmcodezeilen, auf die die Entwickler in einem CVS zugreifen, in dem allerdings auch ACL's greifen. Die Entwicklerbasis besteht aus 3 Hauptentwicklern, darunter Jan, und etwa 6 weiteren Programmierern. Regional besteht ein Schwerpunkt in den USA, weitere Entwickler kommen aus Deutschland, Slowenien , Großbritannien und Neuseeland. Zu den Anwendern von Horde zählen kleinere Firmen , aber auch größere Kunden wie ISP's , Debeka, NetCologne oder als wohl größter die Telekom in Portugal. Im Projekt gelten Kodierstandards, bei der Arbeit an den Webanwendungen richtet man sich an Standards wie XHTML , CSS und MIME aus. Darüber hinaus unterstützen die Groupware-Anwendungen Formate wie iCalendar und vCard. Auf alle API's ist ein XML-RPC-Zugriff möglich. Im Projekt selbst arbeitet man derzeit noch an einem SynML-Server. Dabei geht es darum, eine Möglichkeit zu schaffen, die Dateninhalte verschiedener Peripheriegeräte wie etwa von Mobiltelefonen mit Servern zu synchronisieren, ein wegen der apparativen Heterogenität in der Peripherie wohl offensichtlich komplexes Unterfangen. Auch WebDAV-Server sollen ermöglicht werden. Bei der Arbeit mit Datenbanken bemüht sich das Hordeprojekt um eine Unabhängigkeit von bestimmten Formaten ; es wird eine Fülle von Datenbanken wie MySQL, PostgreSQL, MSSQL, Oracle, Informix u. a. m. angesprochen. Auch eine LDAP-Unterstützung , etwa für Adressbücher, Verwaltung von Benutzern und zur Administration ist vorhanden. Es gibt in Horde 2 Groupware-Suites mit darauf basierenden weiteren Anwendungen , die Zahl der Benutzer geht in den Gruppen von 10 bis zu 3 Millionen. Die Groupwareanwendungen liegen derzeit in der 2. Major-Version vor, sie haben alle die jeweils gleiche Benutzer- und Datenbasis. Für Entwickler gibt es als Werkzeuge Chora und Whups( letzteres vor allem zum Debugging ). Die Anwendungen sind internationalisiert, in IMP etwa wird Unicode konsequent unterstützt. Daran hatte Jan selbst entscheidenden Anteil. Derzeit werden zur Dokumentation 39 verschiedene Übersetzungen unterschiedlicher Aktualität angeboten. Als besondere Schwierigkeit erwies sich für einen Entwickler wie Jan die Unterstützung von Rechts-nach-Links-Schriften wie etwa Hebräisch. Horde selbst bietet eine enorme, hoch konfigurierbare Funktionsvielfalt in allen seinen Anwendungen, es gibt die Möglichkeit, sich über sogenannte "Hooks" in den Code einzuklinken, das Projekt ist modular aufgebaut. Wie bei allen großen Softwareprojekten, so betonte Jan weiter am Donnerstag, werden bestimmte Probleme erst bei massenhaft paralleler Nutzung sichtbar. Dies gilt insbesondere für Zugriffe zu hierarchischen Datenbankstrukturen. Um einen Eindruck von einer Anwendung selbst zu verschaffen, installierte Jan dann auf seinem Notebook die Webmail Edition. Er verwies darauf, dass durch besondere Skripten der Installationsvorgang erheblich vereinfacht wurde. Zunächst wird ein tar-Archiv ausgepackt, dann in das Installationsverzeichnis gewechselt und dann ein Konfigurationsmenu durchlaufen, das in einer Abfolge von etwa 5 sukzessiven Einfachauswahlfragen die Einstellungen für die Installation vornahm. Wir alle konnten auf der Leinwand mitverfolgen, wie problemlos und rasch so die Installation und Konfiguration klappen kann. Auf Nachfrage bestätigte Jan, dass die Übernahme von älteren Datenbeständen und auch die Anbindung an MS-Exchange möglich sei. Beim Zugriff auf die Webmail erfolgt über den Browser eine Authentifizierung. Die Oberfläche ist in ihrem Aussehen durch den Benutzer konfigurierbar. Jan rief dann die Administrationsoberfläche auf und zeigte, wie die Webmailanmeldung aussieht. Hier war auch recht eindrucksvoll zu sehen , was Internationalisierung bedeutet: da sah man "problemlos" im Maileingangsfeld lateinische, chinesische und russische Schriftzeichen unter- und nebeneinander stehen, wir konnten auch in eine chinesische Mail hineinsehen. Die Webmailanwendung unterstützt auch die Integration in Spamschutzsysteme, die Filterung erfolgt auf dem Mailserver. Auch gibt es ein Anzeigeinstrument für Emailanhänge, einen HTML-Mail-Editor und eine Integration von smime und pgp. Auf IMAP-Servern ist darüber hinaus eine entsprechende Ordnerverwaltung möglich. Besonderes Interesse rief in der Gruppe die Adressbuch- und die Kalenderfunktion hervor. Hier gibt es die Möglichkeit, eine individuelle Terminplanung über das Netz vorzunehmen. Auch kann in einer fein granulär einstellbaren Weise geregelt werden, welche Personen was gezeigt bekommen( nur "anzeigen" oder auch Einträge "lesen" ). Es ist auch eine Kategorisierung von bestimmten Treffen möglich sowie eine Aufgabenverwaltung. Die Einführung bestimmter Unteraufgaben, die für die Erreichung der Gesamtaufgabe zu erfüllen sind, ist derzeit mit Horde noch nicht möglich und ein Ziel für die Weiterentwicklung des Projektes. Für Gesprächsabsprachen gibt es Gruppenkalender, Parallelanzeigen von Kalendern und einen Datenaustausch zwischen den beteiligten Personen über Email . Natürlich sind die Einsichtsrechte für verschiedene Nutzer zentral einstellbar. Am Ende seiner eindrucksvollen Vorführung wurde Jan noch gefragt, wie lange denn üblicherweise die Vollinstallation aller Module dauere. Dazu meinte er, dass man mit etwa 2 - 3 Tagen bis zur Lauffähigkeit rechnen müsse. In der abschließenden Diskussion wurde der Wunsch geäußert, dass man diesem umfangreichen Projekt nur einen großen Bekanntheitsgrad wünschen könne. Jan selbst meinte, dass Anpassungen der bestehenden Softwarebasis an bestehende Kundenwünsche, Beratungen hierzu usw. eine Basis für eine Existenz in diesem Open-Source-Projekt bieten können. Naturgemäß tue er sich als Entwickler mit Marketingaspekten sehr schwer , dies könnten andere sicher besser. Uns allen bleibt nur, Jan Schneider für seinen ausführlichen und äußerst informativen Vortrag ganz herzlich zu danken! Beeindruckend war auch, eine Anwendung problemlos in Aktion treten zu sehen und sich so einen Eindruck von der Oberfläche, den Möglichkeiten und der Administrierbarkeit verschaffen zu können. Viel Glück Dir , Jan, bei der weiteren Arbeit an diesem Projekt, dies umso mehr, als Du damit den Lebensunterhalt verdienst. Dank auch an Volker Eckert, der den Kontakt zu Jan Schneider vermittelt hat. Nach dem Vortrag konnte zu vorgerückter Stunde nicht mehr abschließend geklärt werden, wann wir uns wo wieder treffen. Hierzu ergeht wie gewohnt noch eine Mail. Ich hoffe, das Wesentliche einigermaßen korrekt wiedergegeben zu haben, und freue mich wie immer über Reaktionen und Korrekturen, die die Themen noch weiter vertiefen helfen. Viele Grüße, bis bald! Ulrich
Teilnehmer (1)
-
Ulrich Rieke