Strassenkarte? In der Informatik definiert die Roadmap welche (noch) offenen Punkte, Programmfehler, Features, etc. programmiert werden müssen. Ein Programm befindet sich ein einem stetigen Wandel und hinter der Kulisse ändert sich immer etwas. Aber wohin führt nun unsere virtuelle Strasse?
Heute morgen habe ich mir einige Gedanken gemacht, was noch fehlt oder noch fehlerbehaftet ist. Primär ist noch ein grosser Punkt offen: die Team Administration. Dies ist vor allem für Trainer interessant, neue Spieler hinzufügen, Spieler entfernen, etc. Da wir die Team Daten pro Saison speichern (ja, die Scorer-Liste bleibt somit archiviert!), brauchts auch noch eine Eingabemaske für das Hinzufügen/Editieren der Saisons. Ebenfalls brauchts noch einen Editor für Events und Trainingszeiten.
Ein weiterer Punkt ist mir heute Nachmittag eingefallen... Sicherlich haben schon alle die kleine Statistik-Anzeige in der Sidebar bemerkt. Dort habe ich einen konzeptionellen Fehler gebaut (nobody is perfect, eh). In der Datenbank gibts eine Tabelle wo jeder Seiten-Aufruf gespeichert wird, in nur gerade 10 Stunden haben sich dort in etwa 3000 Datensätze angesammelt und auch die Bots und Spider der Suchmaschienen werden als Besucher gezählt. Machen wir mal eine kleine Rechnung, in 10 Stunden gibts ohne Suchmaschienen etwa 3000 Einträge, aufgerechnet pro Tag wären das mindestens 4000, nun das sind dann ganze 1'424'000 pro Jahr! Mir ist bewusst, dass MySQL (der Datenbank Server) sehr leistungsstark ist und mit dieser (und grösseren) Datenmengen im Prinzip problemlos zurechtkommt, sofern genügend Ressourcen (Arbeitsspeicher, CPU, etc.) vorhanden ist. In unserem Fall können wir jedoch keine Annahmen treffen und müssen die Datenmengen auf ein akzeptables Niveau verringern.
Die Lösung ist simpel, damit ich darstellen kann, wer gerade online ist, brauche ich nur die Daten von den letzten 5 Minuten, was vor 3-4 Tagen geschehen ist interessiert mich in diesem Falle wirklich nicht. Somit habe ich das ganze nun so implementiert, dass sobald ein Eintrag älter als 5 Minuten ist, er aus der Datenbank gelöscht wird. Simpel und effektiv.
Nun um die Totale für Heute, den Monat und insgesamt darstellen zu können habe ich auch einfach eine neue Tabelle erstellt und speichere dort die Anzahl Besuche pro Tag (exkl. Suchmaschienen), somit gibts im Jahr genau 356 (resp. 366) Einträge.
Für jene die es interessieren sollte wie ich den Unterschied zwischen Suchmaschiene und Browser (Mensch) mache. Jeder Browser (Firefox, Safari, Internet Explorer, etc.) und auch alle Suchmaschienen besitzten eine Identität und sagen jedesmal: "du hallo ich bin Firefox/Safari/IE/whatever" und die Suchmaschienen sagen immer: "hallo, ich bin ein Google-Bot/Yahoo-Bot/etc...". Diese Identität nennt sich User Agent, der von Firefox sieht z.B. folgendermassen aus:
Anhand diesem Mozilla/ am Anfang dieser Zeichenkette, kann ich dies unterscheiden, eine grosse Mehrheit aller Browser (>99%) startet mit Mozilla und nochmals (0.999%) haben Opera am Anfang. Im PHP habe ich dies somit folgendermassen gelöst:
fertig. So, nun abert fertig mit solchen Details!
Lehme arbeitet nun einem kleinen Programm damit wir unsere Elch-Page immer Top-Aktuell auf Google halten können. Also wenn wir einen Artikel schreiben, dass dieser null-komma-nix in den Index von Google aufgenommen wird, cool!

Als Entwickler dieser Homepage will ich euch hier in meinem Entwickler Tagebuch auf dem Laufenden halten, was hinter den Kulissen und deinem Web-Browser alles so abläft. Da ich meine langjährige PHP/MySQL Erfahrung kaum leugnen kann, wird diese Kolumne teilweise etwas gar technisch ausfallen, aber hey, gibt schlimmeres.
