Mein Sprachmodul steht kurz vor der Finalversion und ist mittlerweile im ersten richtigen Einsatz. Neben zahlreichen Testusern gibt es auch schon erste Kunden, die den Kurs als Produkt gekauft haben.
Und bei zwei gibt es z.Z. eine kleine Macke im Lückentext. In leider nicht ganz eindeutig nachvollziehbaren Situationen wird er gelegentlich nicht angezeigt.
Und jetzt bin ich auf der Suche, woran das liegen könnte.
Gibt jetzt einige Ansätze, die ich verfolge. Alles in Allem tricky, aber gar nicht schlecht, weil ich das Modul nochmal auf Herz und Nieren prüfe bzw. optimiere.
– Zuerst habe ich natürlich getestet und wieder getestet. Ich habe mittlerweile gut 20 verschiedene Testkonstellationen mit verschiedenen Rechnern, Betriebssystemen, Browsern, virutellen Maschinen etc. ausprobiert und das Problem will auf Teufel komm raus bei mir nicht auftreten. Auch bei meinem Partner nicht.
– Ich habe den Code wieder und wieder analysiert – der ist meines Erachtens ok.
– Die Datenbank habe ich auch nochmal gecheckt. Nix zu finden.
Die ganze Fehlersituation scheint nach meiner jetztige Interpretation auf eine unglückliche Konstellation aus Hardware, Internet-Verbindung und Softwareinstallation beim Kunden zurückzuführen zu sein. Aber die wollen wir natürlich rausbekommen, um möglichst genaue Vorgaben machen zu können, was für das Sprachprogramm unabdingbar ist.
Jetzt kam aber die Idee auf, dass das Problem bei einem Kunden an der langsamen Internet-Verbindung des Kunden hängen könnte. Er hat nur DSL 2000. Und da ich mit DSL 16000 arbeite deshalb das Problem nicht lokalisieren könne.
Konnte ich mir zwar nicht vorstellen, aber dem musste ich natürlich nachgehen.
Dabei hat mir das Tool YSlow sehr gute Dienste geleistet. Das ist ein Firefox-Addon zum Testen, welche Bestandteile einer Webseite die meiste Zeit verbrauchen und wie lange die Seite wirklich braucht. Das hat mich auf diverse gute Ansätze gebracht, die gesamte Applikation erheblich zu beschleunigen. Hab in dem problematischen Part des Moduls umgesetzt. Aber das hat das Problem noch nicht gelöst.
Jetzt habe ich weiter an der Performance-Idee rumgebastelt. Ich habe vor allen Dingen ein Tool gesucht, um meine eigene Internet-Verbindung zu drosseln und die RIA unter schlechten Internet-Verbindungen praxisnah zu testen. Ich hab zwar nur ein Shareware-Tool mit Namen Net Limiter gefunden, aber das kann man 28 Tage testen und es hat mir genial weiter geholfen. Ich habe meine Verbindung damit bis auf Modem-Geschwindigkeit gedrosselt.
Und dann unter den Extrembedingungen das Modul getestet.
Und – oh Wunder – das Modul funktioniert sogar mit Modem-Geschwindigkeit halbwegs. Das hätte ich nie erwartet. Selbst vor der Performance-Optimierung, die ich vor der endgültigen Finalversion noch durchführen will. Zwar werden die Tondateien nicht richtig abgespielt (das wäre zuviel des Guten), aber sonst funktioniert das Teil. Unglaublich. Mit ISDN-Kanalbündlung ist das Sprachprogramm voll funktionstüchtig. AJAX und Dojo/Prototype sei Dank. Das Teil ist so viel schneller als ich erwartet habe. Klasse. Wir könnten im Prinzip also die untere Grenze für die Internet-Verbindung auf ISDN (zur Sicherheit mit Kanalbündlung) festlegen, aber das macht im Grunde keinen Sinn. Wer mit dem Sprachmodul lernen möchte, sollte auf jeden Fall eine Flatrate oder zumindest einen Volumentarif haben und sowas findet man eigentlich nur bei DSL. Aber der einfachste DSL-Standard ist auf jeden Fall ausreichend.
Nur das Problem, das mich zu den Tests und Optimierungen geführt hat, habe ich immer noch nicht gefunden. DSL 2000 ist mehr als ausreichend.
Ich tippe immer mehr auf eine fehlerhafte Installation vom Browser, Java, Flash oder so was. Zur Not versuche ich einen Remotezugriff auf den Kundenrechner, wenn der mich lässt. Ich muss die Fehlermeldung und den gerenderten Quelltext sehen. Sonst stochere ich nur im Nebel.