Dienstag, Juni 12, 2007

Nieder mit den Apachen!

Meine Güte, gehen mir diese Open Source Projekte auf den Keks.
Und mit Open Source meine ich insbesondere Apache. Ich hatte in den letzten Wochen mehrfach das Vergnügen mich in einige dieser Programme einarbeiten zu dürfen.

Mangels brauchbarer Dokumentationen musste ich oft auf kleinste Hinweise in Foren und Newsgroups zurückgreifen.
Und da bekommt man gelegentlich Diskussionen der Entwickler darüber mit, ob man die kurz nach Release als eklatant buggy erkannte neueste Programmversion überhaupt noch mal korrigieren oder gleich einen Versionssprung machen soll (um dann ein Jahr später ein komplett neues verwanztes Produkt zu veröffentlichen). Beides zu tun und Fehlerkorrekturen in beiden Zweigen nachzuziehen - wie es jeder normale Programmierer tun würde - kommt offenbar niemandem in den Sinn.

Die fehlende Dokumentation hat Methode, denn über den Verkauf von Büchern oder PDF Dokumenten macht man das Geld, um die Programmierer bei der Stange zu halten. Genau wie bei Oracle, die früher damit den großen Reibach gemacht haben, dass man sich Consultants bestellen musste, um ihre kryptischen Konfigurationsfeatures zum Laufen zu kriegen. So weit sind also Open Source und Marktführer doch nicht auseinander.

Oder man stößt wieder und wieder auf Bugzilla (den häßlichsten Bugtracker der Welt) und liest als Fehlermeldung genau das Problem, das man selbst mit dem Programm hat. Aber der Fehler war von 2002 und ist immer noch als "neu" und Prio 1 eingestuft. Prio 1 wird sicherlich bald behoben...
Werden die Projektbeteiligten eigentlich dafür bezahlt, auf Fehlermeldungen nicht zu reagieren? Oder besser noch, die Meldung auf "wird nicht behoben" zu setzen?

Bei vielen dieser Projekte bin ich mir sicher, dass ich die Kernfunktionalität in weniger als einer Woche selbst programmieren kann. Absoluter Dreck wie log4j kann nur deswegen nicht durch einen vernünftigen Logger abgelöst werden, weil der Mist in allen Apache Produkten verwendet wird. Gut, so schlimm ist log4j gar nicht. aber es ist auch nicht einmal annähernd gut. Und vor allem war in jeder Firma, in der ich bisher gearbeitet habe, immer der größte Schaumschläger dafür verantwortlich, dass log4j benutzt wurde. Diese Leute werden ca. ein halbes Jahr später gefeuert, aber dann hat man sich mit log4j abgefunden.

Und dann gibt es noch die Projekte, die eine super Website haben, in allen Zeitschriften auf die Titelseite kommen und bei jedem guten Namedropping vertreten sind. Aber wenn man sich dann endlich mühsam eingelesen hat, stellt man fest, dass sie entweder fast nichts können oder eine uralte Idee gerade mal rudimentär verwirklichen.

Zum ausgleichenden Abschluss noch der Hinweis, dass trotz der Hornochsen, die hinter den Programmen stehen, die meisten davon ihren Zweck gut erfüllen (Apache, Tomcat, ant).

Und auch bei "Kaufsoftware" gibt es schwarze Schafe, die bei jeder Abweichung vom goldenen Pfad abstürzen und sich hauptsächlich darin von einem Hobbyprojekt unterscheiden, dass sie durch einen Obfuscator gejagt wurden und mich damit nur daran hindert, den unfähigen Programmieren gezielte Hinweise auf die Problemstellen geben zu können.

Ich hasse andere Menschen.