Gentoo Linux hat mittlerweile Qt 5 in den offiziellen Portage-Baum aufgenommen. Deswegen habe ich mich heute daran gemacht, muckturnier, das Programm zum Auswerten von Muckturnieren, auf Qt 5 zu portieren. War gar nicht so schwer ;-)
Deswegen gibt es nicht nur ein neues Release von muckturnier, sondern gleich zwei: Version 0.5.2, ein Bugfix-Release des bisherigen Qt-4-Zweigs, das alle Korrekturen seit der letzten Version enthält, und Version 0.6, das selbe als Qt-5-Port.
Da muckturnier in der Python/Qt-Implementierung aller Wahrscheinlichkeit nach noch keine allzu große Nutzerbasis hat, werde ich mich vermutlich darauf konzentrieren, die Qt-5-Version weiterzuentwickeln. Wenn jemand die Qt-4-Version nutzt und (noch) keine Möglichkeit hat, die Qt-5-Version zu nutzen: bitte einfach melden, dann pflege ich den Qt-4-Zweig noch eine Zeit lang weiter.
Nach einem kompletten Rewrite kaum verwunderlich: das letzte Release von muckturnier, dem Programm zum Auswerten von Muckturnieren, enthielt einige Tippfehler und der Code hatte hie und da noch ein paar Ecken und Kanten.
Das aktuelle Release, Version 0.5.1, ist sozusagen ein kleines Facelift und für jeden zu empfehlen :-)
muckturnier, das Programm zum Auswerten eines Muckturniers, ist groß geworden. Deswegen wurde eine komplette Neufassung nötig, die nicht eine Zeile Code der bisherigen Versionen enthält: Version 0.5.
So weit die Fakten. Das wie und warum ist eine etwas längere Geschichte. Wen’s interessiert:
Bisher war muckturnier in PHP, JavaScript und HTML implementiert. Abgesehen davon, dass PHP eine fragwürdige Programmiersprache ist (ja, für Homepages ist sie toll und hat sicher ihren Platz; ich mag PHP auch und nutze es für meine Homepages, und b8 ist schließlich auch in PHP geschrieben – aber eine vernünftige Programmiersprache ist PHP bei aller Liebe trotzdem nicht), konnte man muckturnier bisher nicht wie ein „normales“ Programm benutzen. Man musste es über einen Webbrowser aufrufen. Die Daten für den Browser mussten von einem HTTP-Server kommen. Erst musste man einen „richtigen“ HTTP-Server aufsetzen (nicht denkbar für einen End-User). Später konnte muckturnier vom „PHP Development Server“, einem kleinen, lokal zu benutzenden HTTP-Server, den PHP mittlerweile selbst mitbringt, profitieren. Das machte das Ganze schon deutlich einfacher, aber eine „richtige“ graphische Oberfläche hatte muckturnier trotzdem nicht, und für Otto Normal war es ungewohnt.
Die Überschneidung zwischen Leuten, die richtig Ahnung von Computern haben, und denen, die ein Muckturnier organisieren, schätze ich als gering ein. Keine Chance also für ein Programm, das eh schon ein Nischenprodukt, und dann noch „komisch“ zu benutzen ist.
Aber warum macht man das dann so? Ganz einfach: Ich konnte es nicht besser. Bis jetzt. Mittlerweile habe ich mich an C++ und inbesondere auch an die hervorragende Bibliothek Qt herangetraut. Mit diesem neu erlangten Wissen konnte ich das muckturnier schreiben, was es schon am Anfang hätte werden sollen. Dazu war aber eine komplette Neufassung nötig, und zwar in einer vernünftigen Programmiersprache. Meine Wahl fiel auf meinen persönlichen Liebling Python.
Python kann man mögen oder nicht, aber einen riesigen Vorteil hat die Sprache: ein Python-Programm ist – vorausgesetzt, man weiß, was man tut – „einfach so“ auf Windows lauffähig – genau so, wie es auf Linux läuft (vermutlich auch auf Mac). Das selbe gilt für Qt, das ich für die graphische Oberfläche benutzt habe. Die allermeisten potenziellen Nutzer von muckturnier werden wohl Windows haben. Alles, was man jetzt tun muss, ist Python selbst und PyQt zu installieren. Dann kann man mucktunier „einfach so“ starten. Das kriegt auch ein unbedarfter User hin.
Und was ist neu? Eigentlich nichts. Der Funktionsumfang ist gleich geblieben, alles geht prinzipiell so, wie bisher. Natürlich kann mit einem „richtigen“ GUI viele Sachen viel schöner und einfacher machen, als das bisher der Fall war. Mit dem neuen Major-Release habe ich aber die Chance genutzt, die Datenbank ein bisschen aufzuräumen und die Internas zu säubern. Datenbanken, die mit dem bisherigen PHP-muckturnier erstellt wurden, sind in der Folge nicht mit der neuen Version kompatibel. Dafür sollte das jetzige Datenbanklayout aber für absehbare Zeit stabil bleiben. Trifft sich gut mit der ersten „richtigen“ Version von muckturnier ;-)
Also: Spread the World, hoffentlich findet muckturnier jetzt viel/mehr Anklang in der Muckerszene ;-) Nach wie vor: Wenn jemand einen Verbesserungsvorschlag hat und/oder einen Fehler findet: her damit!
Ab jetzt ist die neue Version 0.4 von muckturnier, dem Programm zum Auswerten eines Muckturniers, online.
Es kann jetzt eine beliebige Anzahl Bobbl pro Runde gespielt werden. Die Eingabemaske ist dafür auch überarbeitet worden. Somit kann man jetzt auch ein Turnier auswerten, wie es z. B. in Trogen gespielt wird (zwei Runden zu je sieben Bobbln).
Viel Spaß :-)
[Update 26.01.2014] Ich habe gerade ein kleines Bugfix-Release hochgeladen, Version 0.4.1. Das behebt ein paar HTML-Fehler, feilt etwas an der Oberfläche und macht ein paar mehr Checks, ob mit der Datenbank alles in Ordnung ist. Der Einsatz der neuen Version ist auf jeden Fall zu empfehlen, aber vermutlich wird ja eh keiner in der kurzen Zeit ein Muckturnier mit Version 0.4 ausgewertet haben.