Früher, als ich noch viel, viel Zeit hatte, habe ich eine Reihe von kleinen Progämmelchen verfaßt. Damit diese nicht in Vergessenheit geraten (schluchtz!) seien die wichtigsten an dieser Stelle erwähnt. Wenn ich dazu komme, werde ich die Sourcen des einen oder anderen Programms hier ebenfalls hinterlegen.

1997
DySTReM (Dynamisches Strömungs-, Tranformations-, Reaktionsmodell)
Dauer 36 Monate
Beschreibung

Als ich nach meinem Diplom mit meiner Doktorarbeit anfing hatte ich ein kleines Problem: Die Aufgabe war es komplexe Simulationen durchzuführen, aber es gab keine Software dafür bzw. nicht, was ich hätte verwenden können/mögen. Und so habe ich meine eigene Software geschrieben. Über insgesamt drei Jahre ist so meine bislang ehrgeizigstes und komplexeste Anwendung in Eigenregie entstanden. Aber es war nicht nur reine Arbeit - es war auch immer eine gute Gelegenheit, um den Kopf von der trockenen Theorie zu entspannen. Auf diese Weise sind viele Features hineingekommen, die nett aber nicht unbedingt notwendig waren.
DySTReM dient der Simulation von zwei dimensionalen Strömungen und geo-biologischen Prozessen. Sprich man kann auf einer zweidimensionalen Geometrie eine Strömung simulieren. Dann kann man Stoffe, z.B. Sauerstoff oder Schwefel "hinzugeben" und Reaktionen definieren. Das Modell berechnet dann neben dem Transport der Stoffe durch das System auch die stattfindenen Reaktionen. Man kann sich dann zu jeder Iteration die Stoffkonzentrationen als Funktion oder als zweidimensionales Bild ausgeben lassen.
Das Highlight war jedoch, dass man auch Ausfällungsreaktionen definieren konnte, sprich es fanden Ablagerungen statt, die wiederum Einfluß auf die Strömung hatten.
Geplant war, dass ganze zu überarbeiten und der Öffentlichkeit zur Verfügung zu stellen, aber es war nie so recht Zeit dafür. Immerhin habe ich es bei Sourceforge publik gemacht.
Vielleicht komme ich ja nochmal dazu das Programm nach Java zu portieren ...

Technologien PC, C/C++, Gtk, PV-Wave
1993
Vier Gewinnt
Dauer 10 Monate
Beschreibung

Wer kennt sie nicht, die Schachprogramme, die einen wie den letzten Idioten aussehen lassen? Aber wie funktioniert das? Von dieser Frage beflügelt, hatte ich mich daran gemacht einen Algorithmus zu schreiben, der Vier gewinnt spielt. Außerdem bewegte mich die Frage, ob Vier gewinnt überhaupt ein Spiel ist. Sprich: Wenn beide Spieler eine perfekte Strategie haben, gewinnt dann immer der, der anfängt?
Um es vorweg zu nehmen: Er war nicht perfekt. Aber ich habe dabei einiges gelernt. Das Prinzip war einfach: Bewertung der Felder nach Gewinnmöglichkeiten für sich selbst und den Gegner. Die Schwierigkeit lag in der Gewichtung, aber auch darin zu bewerten, was denn überhaupt ein guter Zug ist - und was ist wichtiger: selbst einen guten Zug machen, oder verhindern, dass der Gegner es macht? Da die Entscheidung statisch war, mußte man nur herausfinden, wie sich der Computer wann entscheidet. Danach hat man immer gewonnen. Ein Freund von mir ist jedoch immer an der Hürde gescheitert - richtig schlecht war der Algorithmus also nicht ;-)

Technologien Amiga, Modula-2
1989
Textverarbeitung (wie hieß siech noch gleich?)
Dauer 12 Monate
Beschreibung

Was am C64 immer nervte war, dass man immer nur 40 Zeichen pro Zeile darstellen konnte. Es war auch die Zeit, in der die ersten menügesteuerten Anwendungen aufkamen. Für den C64 war damals Geos im Kommen. Das hat mich dann auch gereitzt und so habe ich mich dran gemacht und Stück für Stück eine komplette Textverarbeitung geschrieben. Die Highlights:

  • Darstellung von 80x25 Zeichen auf dem Bildschirm, eine 2. Seite wurde im Speicher gehalten, die man mit einem Klick erreichen konnte.
  • Pulldown Menü, dass über einen Joystick bedient wurde (originell, gell - Mäuse gab's halt noch nicht). Über das Menü konnte man Seiten laden/speichern/drucken, Textteile ausschneiden/kopieren. Fenster (z.B. Inhalt des Diskettenlaufwerks) wurden über den Text geblendet - noch alles in "Handarbeit".
  • Unterstüzung von Textformattierung (fett/kursiv/unterstreichen, etc. - alles was der Drucker halt unterstützt hat). Allerding nicht wie heute per WYSIWYG sondern durch direktes Einfügen der Steuerzeichen für Fettdruck Start und Ende...

Das ganze war sogar recht schnell - alle Darstellungsoperationen hatte ich in Assembler geschrieben, den Rest n Basic. In der Zeit habe ich den C64 quasi in und auswendig gelernt, wie später nie einen Rechner wieder. Allerdings habe ich schon ein Jahr später sogut wie nix mehr von Code verstanden - damal wurde nicht dokomentiert, da dafür kein Platz war im Speicher (heute gibt es andere Ausreden...).
Die Anwendung habe ich nie publik gemacht (eine frühe Version hatte ich einmal bei einem Programmierwettbewerb bei der C64'er eingereicht - ist leider nix geworden), aber dennoch kam sie zum Einsatz: wir haben damals die gesamte bizeitung damit verfaßt.

Technologien C64, Basic, Assembler
1989
Fast Directory
Dauer ein paar Stunden
Beschreibung

Wer kannte das nicht - da hat man ein Basicprogramm geschrieben und will mal kurz sehen, was auf der Diskette so drauf ist und schwups ist das Programm überschrieben, da das Directory immer als Basicprogramm eingeladen wurde. Also schnell mal ein Assemblerprogramm geschrieben, dass den Inhalt auf dem Bildschirm ausgibt. Schön seitenweise, wobei der Titel immer in der ersten Zeile stand.
Die Routine hab' ich später dann in der Textverarbeitung eingesetzt. Während jenes nie veröffentlicht wurde hat es die einfache Routine geschafft - in die C64‘er ;-)

Technologien C64, Assembler
1988 Tyron (Berechnung von thermodynamischen Reaktionen)
Dauer 2 Monate
Beschreibung

Das Programm ist damals in der 12. Klasse für den Chemieunterricht entstanden. Man konnte damit Reaktionsgleichungen inkl. der elektrischen Ladung der einzelnen Komponenten eingeben und dann wurde anhand einer Tabelle ermittelt, welche thermische Energie dabei zugeführt bzw. frei wurde.
Bei Eingabe der Gleichung wurden die Ladungszahlen bereits an die richtige Stelle geschrieben (war beim C64 alles andere als trivial), z.B. 2H2O.
Während ich das Programm schrieb durften zwei Mitschüler die Tabellen abtippen :-). Als Belohnung wurde das Programm wie eine zusätzliche Arbeit mit 15/15 Punkten gewertet.

Technologien C64, Basic, Assembler
1986 Gleichungen (hatte das überhaupt einen Namen?)
Dauer 2 Tage
Beschreibung
Eines meiner ersten Programme überhaupt. Hiermit ließen sich einfache Gleichungen mit einer Variablen lösen. An sich nichts besonderes, aber es hat auch eine kleine Geschichte: Ich habe damals in der 9. Klasse einen Mathematiklehrer, der mein Interesse erkannt und gefördert hat. Zwar habe ich immer nur "Zweier" geschrieben, aber ich habe gerne mit den Aufgaben herumgespielt und das eine oder andere Verfahren nicht über die Bücher sondern über Grübeln im stillen Kämmerlein ausgetüftelt. Wenn ich dann mal wieder etwas herausgefunden hatte habe ich den Lehrer angesprochen und der hat sich dann nach der Stunde Zeit dafür genommen - heute bin ich ihm sehr dankbar dafür, sonst hätte ich mich wahrscheinlich nie für die Mathematik entschieden. Wenn es etwas war, was ihm gefiel, dann durfte ich es am Ende der Stunde vor der Klasse erklären. Als ich dann das kleine Progrämmchen fertig hatte, habe ich den Computer einmal vor den Ferien mit in die Schule genommen und habe es der Klasse präsentiert. Zu Zeiten, wo ein Taschenrechner noch etwas Besonderes war, war das schon recht beeindruckend - meine Mitschüler waren davon dennoch nicht so recht begeistert ...
Technologien C64, Basic