

Anbieterkennung
Sponsor-Partner:
(ich danke für klick & shop) |
|
|
|
|
/dev/brain
zurück zur Tagebuchübersicht
I
|
- - - - D
i e s e W o c h e - - - - |
| 14.05.2001,
Mo. |
Natürlich hielt ich es Sonntag mit dem Stillsitzen nicht
aus. Deswegen hier der Rest vom Sonntag und diese drei Tage am Stück. Mir
steckte nämlich immer noch eine Herausforderung des Web's an mich in der Nase,
die endlich heraus mußte. Also schmiß ich Sonntag mittag so gegen 16:00 Uhr
meinen Webserver an, setzte mich vor meinen PC und fing an, eine Applikation
endlich vom DOS-Programm ins Web zu migrieren: mein AbiCheck von 1990-92 (siehe:
Peter Kleemann Internetseite - Abi Special - AbiCheck
und Peter Kleemann Internetseite - Tagebuch
vom 20.10.2000). Das, was ich letztes Jahr gemacht hatte, war quatsch. Und
öffnete es auch gar nicht erst.
Zuerst schrieb ich in Turbo-Pascal 5.5 (weil es so am schnellsten ging und ein
Executable von 9265 Byte (BYTE!!!) erzeugte) einen Parser, der über mein
ursprüngliches Datenfile noch einmal drüberhuschte und eine normierte Ausgabe
erzeugte: alle überflüssigen und defekten Zeilen raus, meine Tokens
vereinheitlichte und wo möglich zusammenfasste. Dieses schrumpelte dann von 144
auf 143 KByte zusammen. Naja, durch die Normierung wurde auch wieder
Verwaltungsoverhead erzeugt, der das nochmalige Parsen durch PHP in eine
SQL-Datenbank enorm erleichtern sollte, ohne die grundlegende Struktur zu
ändern.
Parallel dazu entwickelte ich das Datenmodell, damit ich beim Speichern und
später bei der Programmausführung möglichst wenige Dateioperationen
durchführen mußte.
Das war Sonntag nacht (eigentlich Montag morgen) fast fertig.
Dann ging ich arbeiten und sobald ich um 8:00 wieder zuhause war, setzte ich
mich wieder vor den PC und Dienstag morgen hatte ich das Eingabefile
vollständig in eine SQL-Datenbank abgebildet (und fehlerfrei eingelesen).
Dienstag abend begann ich mit der Entwicklung des eigentlichen Abfrageteils. Als
ich nachts (wieder um 2 Uhr) ins Bett fiel, konnte ich die Fragen am Bildschirm
seitenweise darstellen (dieselbe Logik wie im Original DOS-Programm).
Schon müde zur Arbeit, Mittwoch abend zuhause und weitergemacht. Naja, das
klingt jetzt so, als ob ich die ganze Zeit vor dem PC gesessen hätte. Ist
falsch, immerhin habe ich auch noch Essen gekocht, fern gesehen und diverse
Einkäufe erledigt.
Mittwoch morgen um 2:40 lief alles (ok, das Design muß noch schöner werden,
aber das ist nur noch Kleckerkram. Erklärungen fehlen auch noch). Zwei Dinge
stellten sich als die größte Herausforderung heraus: 1) Alle Eingaben, die ein
Benutzer vornahm, mußten über alle 18 (oder variabel - das hängt vom
Eingangsfile ab!) Abfrageseiten mitgeschleppt werden. Ich dachte zuerst in
meiner naiven Vorstellungswelt, das geht einfach, indem ich ein Array über
versteckte Formularfelder mitschleppe. Seltsamerweise funktionierte das aber
nicht bei mir, das Array war immer wieder neu initialisiert, wenn die Seite sich
neu lud!
Im Web nachgeschaut... andere hatten dieselbe Frage. Und andere hatten auch
dieselbe Lösung, die ich mir vorstellte. "Warum, warum?" sinnierte
ich vor mich hin (quatsch, "SO EINE VERDAMMTE SCHEISSE", dachte ich).
Ich fluchte vor mich hin, versuchte dies, versuchte das und plötzlich kam mir
die Erklärung. Ich habe die Variable noch gleichzeitig in der Session
registriert (ich wollte sie ja durch das ganze Programm mitschleppen) und das
hat die Eingabefelder immer wieder überlagert, sobald ein erneutes
session_start auf der Seite auftauchte! YOU'RE STUPID! Schmiß ich die Variable
raus, gings sofort.
Das zweite war eine Sache, die mir eher peinlich war. Früher habe ich (bis zum
Grad 8) verkettete, mehrdimensionale Listen direkt vom Kopf in den Code
programmiert - insbesondere das Einfügen in eine vorsortierte Liste war das
einfachste von der Welt. Diesmal habe ich tatsächlich eine Stunde gebraucht,
bis ich die Logik wieder drauf hatte, mittels eines eindimensionalen Arrays als
Index eines anderen Arrays eine Zeigerstruktur zu simulieren und an der
richtigen Stelle einzufügen und die Zeiger richtig zu setzen... Mann-o-mann.
Aber: ES LÄUFT, ES LÄUFT, HURRA.
Ihr wollt sicher mal den Zwischenstand begutachten, nachdem Ihr so lange
ausgehalten habt: AbiCheck!
Wobei... je weiter Ihr zeitlich vom 16.05.2001 weg seid, je eher kann es auch
sein, daß Ihr das Endergebnis seht ;). Aber jetzt wo ich es schreibe, ist es
nur ein rudimentäres Design (und die Abfrage der E-Mail-Adresse am Anfang
unnötig, aber später wichtig ist).
Trotzdem war ich glücklich, daß ich es geschafft hatte. Es klappte noch. Zwar
etwas langsam im Vergleich zu früher, aber dafür blätterte ich jetzt auch die
halbe Zeit in Büchern herum. Ich bin optimistisch, daß ich auch wieder
schneller werde <grins>.
Und Ihr wißt nun, warum ich diese drei Tage nicht "präsent" war.
|
| 15.05.2001,
Di. |
| 16.05.2001,
Mi. |
| 17.05.2001,
Do. |
Ich bin (natürlich) TOTMÜDE, als morgen der Klinger
weckelte (genau so!). Also gönnte ich mir aufgrund des Erfolges eine Stunde
extra-Schlaf und beeilte mich ansonsten mit der Morgentoilette und dem
Frühstück, um -wie üblich- um 9:30 am Arbeitsplatz zu sein.
Trotzdem saß ich nur wie ein Zombie vor der Kiste und drückte ein paar Tasten.
Als ich dann um ungefähr 15:00 meinen Kopf auf die Unterarme legte und 10
Minuten wegnickte (geplant und absichtlich! Was denkt Ihr denn?? Das nennt man
übrigens "Powernapping") war ich wieder fit und das besserte sich im
Verlauf des Nachmittages immer mehr.
Deswegen beschloß ich, mich heute bekochen zu lassen und fuhr von der Arbeit um
20:45 direkt zum Koreaner, dann nach Hause, dann tippte ich noch diese Zeilen
ein und hatte eigentlich die Schnauze voll. Ich wollte ins Bett. NACHT!
|
| 18.05.2001,
Fr. |
Mit viel Freude am nächsten Wochenende ging ich zur Arbeit
und verließ diese wieder.
Abends programmierte ich weiter (u.a. die Eingangsseiten für Abicheck und die
Eingabeseiten)... tatsächlich verpasste ich mein wöchentliches
"Voyager".
Zum Abendessen kochte ich mir Vanille-Grießbrei - unterstätzte aber die
Milchabsorbtion von Grießbrei und dieser ging im Magen nochmals etwas auf. Also
lag ich ab 22:00 auf der Couch und bewegte mich kein Stück mehr bis 2:00 Uhr
nachts <grins>, als ich mich auch nur bewegte um ins Bett zu krabbeln.
|
| 19.05.2001,
Sa. |
Uh... ich bin wieder früh wach geworden und hatte überhaupt
keinen Hunger (wen wundert es).
Ich versuchte noch etwas herumzudösen, aber nichts funktionierte. Also stand
ich auf. Ich fuhr planlos in den Großmärkten hier herum, aber effektiv fand
ich nichts, was ich kaufen wollte - der Kühlschrank war noch für das
Wochenende ausreichend gefüllt. Unter anderem geriet ich wieder ins
Main-Taunus-Zentrum, die einen Ausweichparkplatz mit Park & Ride geöffnet
hatten. Das war eigentlich sehr angenehm, weil dadurch der Streß der
eigentlichen Parkplatzsuche entfiel. Doch auch hier empfand ich keine Lust, dem
Kommerz zu fröhnen und kaufte mir nur "Frühstück". Freilich war es
schon 12:00 Uhr, aber was solls.
Wieder zuhause, frühstückte ich und klemmte mich hinter den Fernseher. So um
15:30 wurde ich dann müder und müder und knackte schließlich komplett weg. Da
meine Couch (billigst) etwas kurz und schmal war, ging ich dann tatsächlich ins
Bett und pennte bis 21:30. Was soll ich sagen: es hat sich gelohnt, denn die
Filme, die ich da träumte, waren ausgezeichnet! Ja, ok. Es führte dazu, daß
ich nun keine Nachtruhe mehr bekam. Dann programmierte ich halt noch ein
bißchen und ich bin wieder etwas weiter. Bis auf die Auswertungsseite (die
eigentlich nur eine Liste herausgibt) war Abicheck nun nutzbar und vollständig.
|
| 20.05.2001,
So. |
Heute wollte ich mit der Familie den Geburtstag meiner Mutter
feiern. Also fuhr ich morgens ins Saarland, feierte das war es auch schon.
Morgen früh fahre ich gleich von Ensdorf aus ins Büro.
|
|