WM-Planer 2014WM-Planer 2014

Fast ist die WM vorbei, da komme ich mit einem WM-Planer um die Ecke – was soll das?

Das wird wieder ein längerer Artikel, weil so viele Details zu erklären sind.

Vorgeschichte: Zur WM 2002 schrieb ich erstmalig ein Programm, um die Ergebnisse einzutragen, die Tabelle und die 8tel-Final usw. -Spiele errechnen zu lassen.

Da in der Zeit, in der ich WM schaue, das Regularium mindestens 2x gewechselt hat und die Art des Wechsels schlecht prognostizierbar ist – so gab es mal eine Phase in der beste Gruppendritte für die nächste Runde qualifiziert waren, und wenn ich nicht falsch liege auch eine 2. Gruppenphase vor dem Übergang ins K.O.-System – sowas ist nicht trivial so ins Programm integrierbar, dass man das gleiche Programm so oder so nutzen kann – einfacher scheint es da das Programm um- oder neu zu schreiben.

Ich glaube die erste Version geschah schon unter Zeitdruck, und hat ein paar fragwürdige Designentscheidungen im doppelten Sinne verwirklicht aber auch ein paar gar nicht so schlechte.

Eine der Ideen war es, die Begegnungen und Ergebnisse in einer editierbaren Datei zu speichern, die man im Idealfall ohne Programmierkenntnisse selbst an die nächste WM anpassen kann, wenn die FIFA nicht wieder die Zahl der teilnehmenden Nationen ausweitet. Diese Idee ist bis auf ein Detail aufgegangen.

Daher soll hier gleich unterbrochen und der Aufbau dieser Datei dokumentiert werden. Für andere Sportarten als Fußball aber auch mit einem 0-1-3-Punkte System und Toren ist das Programm bei 32 Mannschaften ganz allgemein verwendbar. Selbst eine EM mit 16 Mannschaften wäre bei Inkaufnahme eines seltsamen Leer- oder Dummybereichs realisierbar.


fr; 12.6; Rio; 22:00; ; bra; cro; 3; 1;
sa; 13.6; Rio; 18:00; ; mex; kam; 1; 0;


sa; 24.6; Brasilia; 17:00; ; ; ; ; ;


Es gibt pro Spiel eine Zeile wobei die Reihenfolge signifikant ist. Erst kommen alle Spiele der Gruppe A, dann B, … schließlich 8tel, 4tel, Halb- und Finale.

In der Zeile sind die Felder durch Semikolon und Tabulator voneinander getrennt. Wieso beides? Beim Erstellen der Liste ist es praktisch, wenn die Uhrzeiten und alles folgende untereinandersteht, aber da die Ortsnamen so unterschiedlich lang sind muss man manchmal 2 Tabs verwenden (Rio). Nach dem ersten Speichern aus dem Programm heraus ist diese strenge Ordnung jedoch dahin – nur bei der Initialisierung ist das hilfreich.

Die Nationen und Wochentagskürzel habe ich aus Ergonomischen Gründen alle Klein geschrieben. Großbuchstaben sind alle gleich hoch, während Kleinbuchstaben in der Höhe divergieren, weswegen sie schneller zu erfassen sind. Die Ortsnamen in ihrer Länge bieten aber viel Unterschied und seien wir ehrlich, man interessiert sich nicht sehr dafür.

Auf Schnickschnack wie Flaggensymbole, Stadienfotos, animierte Fußballerfiguren, Videoeinspielungen und Verlinkungen zu Facebook wurde weitgehend verzichtet.

Noch mal zur Zeile: Wochentagskürzel, Tag.Monat, Ort, Uhrzeit, Bem., Nation 1, Nation 2, Tore 1, Tore 2 definieren ein Spiel. Wenn ich mich richtig erinnere sind nur Nation/Tore 1/2 harte Informationen, an die besondere Anforderungen gestellt werden. Der Rest ist Bla, bla. Die Nationen müssen nicht richtig aber stringent benannt werden – wenn also da mal Kol und mal kol steht stolpert das Programm. Und die Tore müssen positive, ganze Zahlen sein, oder das Feld leer.

Zu Nation gibt es dann gleich noch was zu sagen, und zwar sind die Nationen nach Kontinenten gruppiert und eingefärbt mit 2 Ausnahmen. Das ist auch gleich eine Schwäche des Programms. Denn die Nationenfarben sind nicht in einer Konfigurationsdatei irgendwo definiert, sondern fest, aber nicht abschließend im Programm verdrahtet. Daher kann es zu Unstimmigkeiten kommen, was verschmerzbar ist, wenn bei der nächsten WM Länder qualifiziert sind, die es seit Pflege des Programms noch nicht waren – es muss dann ergänzt und neu kompiliert werden. Es sträubt sich so aber auch gegen Internationalisierung, denn dann greift die Namens-Farbzuordnung nicht mehr.

Für Brasilien als Serienweltmeister und Sympathieträger habe ich Grün als Schriftfarbe gewählt und für Deutschland als Heimat des Entwicklers Gelb auf Schwarz. Das werden Österreicher, Niederländer und Briten wahrscheinlich auch mit viel MIßbilligung zur Kenntnis nehmen, aber die gute Nachricht ist, es ist Open Source – Ihr könnt es ändern (wenn ihr könnt).

Keine so gute Idee war es Süd- und Mittelamerika in einen Topf zu werfen. Und die USA finden sich mit ‚dem Rest‘, also Asien/Ozeanien/Australien in einem Topf. Dabei gibt es so viele Südamerikanische Mannschaften bereits. Also das sehe ich selbst kritisch.

Solange das 8tel-Finale nicht gespielt wurde (usw.) werden im Viertelfinale alle Kandidaten angezeigt, aber das Feld ist manchmal zu schmal. Markiert man den Inhalt mit der Maus, dann kann man aber den ganzen Inhalt sukzessive sichtbar machen. Wichtig ist das eher nicht – als Notbehelf schien es mir aber praktisch. Wenn ich’s so überlege wäre ein Tooltiptext hier eine Lösung gewesen. Sei’s drum.

Hinter dem Uhrzeitfeld ist ein Feld zur freien Verfügung. Ursprünglich von mir genutzt, um den Fernsehsender einzutragen – keine Ahnung mehr wieso das wichtig war. Man kann auch gut seine Wetttips eintragen. Ich wollte eigentlich das Programm nicht für die WM 2014 aktualisieren, aber dann habe ich doch in 2 Kreisen Tipps abgegeben und dann dachte ich, wenn ich sowieso eine Liste der Spiele erzeugen muss, dann kann ich auch das Programm aktualisieren. Man kann auch gut „nach Verlängerung“ und „im Elfmeterschießen“ oder Torschützen, Rote Karten eintragen – nun, nicht gut, weil es so eng ist, aber möglich ist es.

Gibt man Tore ein, dann wird sofort die Tabelle neu berechnet.

Kommen wir jetzt zum Bug: Wenn Punkte, Tore und direkter Vergleich bei zwei Mannschaften identisch ist, dann wird deren Reihenfolge erlost (war zumindest zuletzt so, kam aber nie vor). Es gibt aber kein Feld „Losgewinner“ – man muss dann die Ergebnisse notfalls fälschen, wenn die zufällige (alphabetische?) Reihenfolge nicht dem Los entspricht.

Hat man seine Eingaben beendet und will die Ergebnisse speichern, dann muss man zur letzen Gruppe, Gruppe H, und es erscheint ein Button exit (Beenden mit Speichern) und esc (Escape, Flucht – Beenden ohne zu Speichern).

Beim Starten muss man angeben wo die Paarungsdatei liegt (außer man will die Datei vom voreingestellten Ort öffnen, dessen Pfad aber in den Wüten der 0er-Jahre in Vergessenheit geraten ist). Unter Linux sieht das so aus:


java -jar wm14.jar ./wm2014.dat


Auf der Webseite ist In der auszupackenden Zipdatei die Datei wm2014.dat drin. DIese ist, bis auf das Spiel Ghana-USA auf dem heutigen Stand – das Spiel ist mit 0:0 eingetragen statt mit 1:2. Außerdem ist die Jar-Datei im Archiv. Diese muss nicht weiter, kann aber entpackt werden. In der Jar-Datei ist auch der Quellcode, für den der etwa die Farben/Nationennamen anpassen will oder wer sonstige Rechte der GPLv3-Lizenz wahrnehmen will.

Den meisten Leuten wird genügen zu wissen, dass die Lizenz die Gratisnutzung des Programms erlaubt.

Noch ein Wort zu Java: Ob Java auf Ihrem System bereits installiert ist weiß ich nicht. In den letzten Jahren kam Java verstärkt wg. Sicherheitslücken ins Gerede. Diese betreffen nicht Programme wie dieses, bzw. Programme wie dieses, welche Sie runterladen, installieren und starten sind in jeder Programmiersprache oder auch kompiliert ein Risiko. Ein besonderes Risiko ist nur Java so es im Browser aktiviert ist und Programme ohne Nachfrage startet.

Update:

*Jetzt zum Halbfinale fällt mir auf, dass die Verdrahtung nicht stimmt, und bei mir wäre Brasilien auf Argentinien und Deutschland auf die Niederlande getroffen. Wenn ich der einzige Nutzer des Programms bin, dann werde ich es aber nicht flicken. Also – beschwert Euch,, Ihr User, sonst bleibt es wie es ist.

Advertisements

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s