Lost in Updates

So, mal wieder etwas Motz-Blogging (weil der neue Pratchett immer noch nicht im Laden steht). Diesmal zum Thema Updates in Theorie und Praxis.

Eigentlich erwarte ich von einem eingespielten Update, dass ich idealerweise nichts davon merke bzw mich über geschlossene Sicherheitslücken oder sogar neue Funktionen freue. So weit die Theorie. In der Praxis verändert zum Beispiel ein Kernelupdate meines Ubuntu-Linux die menu.lst des Bootmanagers GRUB, da dieser den jeweiligen Kernel direkt anspricht. Dies wäre nicht weiter problematisch, wenn die Updatefunktion nicht auch jedes Mal den Eintrag für mein parallel installiertes Windows löschen würde. Na gut, dann schaue ich eben in die vom Update angelegte Sicherheitskopie menu.lst~ und kopiere den Eintrag von dort – doch diese enthält genau denselben Inhalt wie das Original und hat deshalb keinerlei Nutzen. Damit ich mich nicht bei jedem Kernelupdate wieder in die Syntax der GRUB-Konfiguration einarbeiten muss, habe ich mir nun eine eigene Kopie angelegt.

Wenn Linux wirklich auf den Desktop von technisch nicht so versierten Anwendern will, dann muss vor allem an diesen Kleinigkeiten gearbeitet werden. Denn man schlägt den Marktführer Microsoft nicht, indem man sich so arrogant wie dieser verhält und davon ausgeht, dass es nur ein Betriebssystem pro Rechner gibt.

Etwas mehr Ärger gibt es gerade mit dem neuen Majorrelease 2.3 von WordPress. Neben datenschutzrechtlichen Problemen und der unschönen Entwicklung der deutschen WordPress-Version stößt mir aber ein anderer Aspekt bitter auf und verhindert ein schnelles Aufspielen der neuen Version.

Und zwar gibt es nach Version 2.1 erneut eine Änderung am Datenbankschema, was das Thema Kategorien betrifft. Dies wäre bei jeder anderen Software kein Problem, doch WordPress besitzt leider eine grottenschlechte API für Themes und PlugIns, die nur ungenügend die dahinterliegende Struktur der Datenbank verbirgt. Dadurch benutzen viele Entwickler den direkten Zugriff auf die Tabellen und müssen nach nur einem halben Jahr erneut ihre Themes/PlugIns anpassen, damit diese korrekt funktionieren.

Und das Ganze für eine nur halb ausprogrammierte Funktion wie die Tags, für die es viel bessere Lösungen in PlugIn-Form gibt. Ganz abgesehen davon, dass es für mich als Entwickler immer schwerer wird, an eine der zentralen Funktionen eines Blogs, die Blogroll, heranzukommen. Früher war diese fest als Linkkategorie Nummer 1 definiert. Nach dem Upgrade auf Version 2.1 wurden aus Link- und Beitragskategorien eine einzige Tabelle und die Blogroll hatte plötzlich eine beliebige ID, je nachdem wie viele Beitragskategorien es vorher gab. Und dann kam wieder die schlechte API ins Spiel: Links zu einer bestimmten Kategorie kann man nur ausgeben, wenn man die ID kennt. Allerdings kann mit Bordmitteln nicht herausgefunden werden, welche ID die Kategorie Blogroll hat. Also bleibt nur die Suche direkt in der Datenbank als Alternative, die ich für Version 2.3 jetzt wieder umschreiben darf.

Ich will nur hoffen, dass der 2.2er-Branch weiter mit Sicherheitsupdates gepflegt wird, damit ich mir etwas Zeit lassen kann für das Anpassen meines Themes und PlugIns. Ansonsten lohnt es sich vielleicht, eine andere Software auszutesten, bei der modernere Ansätze der Softwareentwicklung verfolgt werden – die API von WordPress vermischt View (HTML-Ausgabe) und Modell und wird mit jeder neuen Version nur verschlimmbessert. Aber das ist typisch – Features sind sexy und verkaufen sich besser als ein Refactoring mit entsprechenden Auswirkungen auf die Nachhaltigkeit, in diesem Fall die Stabilität von Themes und PlugIns.

OK, genug gemotzt für heute, es gibt ja auch gute Nachrichten: Wir sind Weltmeisterinnen!

Kommentare

  1. Elias

    WP 2.3 hat es als erste WordPress-Version geschafft, dass ich mir den Update nicht in kurzer Zeit aufspiele. Das liegt natürlich auch daran, dass es zurzeit kein schweres Security-Problem gibt, dass aber auf der anderen Seite WP 2.3 mit einem absichtlichen Datenschutzproblem ausgeliefert wird. Verbunden ist das mit „Features“, die meiner Meinung nach in Plugins gehören und die wegen der veränderten DB-Struktur wohl manches Blog „zerschossen“ haben. (Hoffentlich nur optisch.)

    Die Durchmischung von Model und View ist eina „Altlast“, die WP wohl noch in fünf Jahren mit sich rumschleppen wird, wenn weiterhin vor allem auf „schicke“ Features geachtet wird. Ich werde WP so lange weiter benutzen, wie es erträglich bleibt, bereite aber schon die Migration auf eine andere Softwaregrundlage vor. Man könnte damit ein bisschen leben, wenn nicht viel eigene Arbeit in sinnlose Tätigkeiten fließen würde. Ich „durfte“ mehrere für uns (es handelt sich um gemeinsam genutzte Blogs) wichtige Plugins von Hand so anpassen, dass sie mit 2.3 lauffähig sind. Das waren zwar immer nur ein paar Zeilen, aber die hatten es manchmal schwer in sich…

    In meinem Notizbuch steht schon das Wort von der „Vermicrosoftung“. Die Arroganz, mit der Matt eine völlig überflüssige Datenübertragung in die Plugin-Prüfung aufgenommen hat, ist ein Teil davon – die Idee, den Leuten Werbung direkt in die Plugin-Liste zu liefern, erinnert mich aber auch an den Versuch mit Windows 98, den Leuten Werbung auf den Desktop zu packen. Dieser Win98-Versuch ist zum Glück so gründlich gescheitert, dass weitere Bemühungen aufgegeben wurden.

Einen Kommentar schreiben

(optional)