Too Cool for Internet Explorer

21.8.05

Programm und Datum

Was ist ein Datum? Ein Datum ist zum Beispiel 10. Oktober 2005, ein bedeutendes Datum, jedenfalls für mich ist es das, denn dann muss ich meine Magisterarbeit abgeben. Abgabe, Fertigstellung, Frist. In der heutigen Zeit sind solche spezifischen Daten weit verbreitet und man nennt sie Deadline. Deadlines, das weiß jeder Programmierer, sind eine Art von Daten, die in der Datenverarbeitung nicht zu bewerkstelligen sind. Sie sind vielmehr dafür da, überschritten, gebrochen und hinausgezögert zu werden. Das „Dead“ kündigt zudem eine Assoziation an, denn ein Datum ist etwas totes, es steht im Raum bewegt sich nicht, hat keine Performanz.

Ein Datum, wie man hier schon sehen kann, ist also zunächst auch einmal die Einzahl von Daten. Und dass man heute so geläufig von Daten redet, hat damit zu tun, dass das Datum heutzutage meist nur noch in der Mehrzahl vorkommt. Ein Datum kommt selten allein, was zum größten Teil der Verdienst eben jener Datenverarbeitung ist, die doch dafür Sorge tragen sollte, die Last der Daten zu vermindern. Nun hat diese Verminderung ja auch stattgefunden, doch das Resultat ist wie meist janusköpfig, denn wo ein Datum verarbeitet ist, wachsen sofort 10 neue Daten nach, die wiederum verarbeitet werden wollen. Und genau deshalb reden wir heute von Daten und Datum als wären es völlig verschiedene Dinge, als hätte das Datum keine Mehrzahl und als hätten Daten keine Einzahl.

Das was die Daten verarbeitet, nennt man für gewöhnlich ein Programm. Also was ist ein Programm? Ein Programm ist zum Beispiel wenn der Papi für das Wochendausflug festlegt, dass nach der Wattwanderung ein Besuch im Fischermuseum ansteht. Man sieht die Struktur: es werden Daten verarbeitet, auch wenn sie terminlich noch nicht konkretisiert sind: das „nach“ ist bereits eine Anweisung zur Datenverarbeitung, wenn auch eine relative und es soll auch Väter geben, so habe ich gehört, die so ein Ausflugsprogramm auf die Minute festlegen, was aber eben auch nichts anderes ist. Dennoch ist dieses programmatische „nach“ für uns das bessere Beispiel, weil es eine Handlungsstruktur anzeigt, die dem des Programms im informationstechnischen Sinne ähnelt. Hier ist es meist das Semikolon, welches regelt, wie Anweisung auf Anweisung folgt. Und so kann man festhalten, dass ein Programm erstmal eine reine Handlungsanweisung ist. Das Programm behandelt die Daten, es erweckt sie sozusagen zum leben. Laufende Programme nennt man auch Prozesse und man redet über ihrer Leistungsfähigkeit oftmals in Begriffen der Performanz, was auf diese aktive Eigenschaft des Programms hinweist, im Gegensatz zu den toten Daten. Das Programm des als Beispiel genannten Vaters sähe übersetzt also folgender Maßen aus:
Familie.wattWandern();
Familie.insMuseumGehen();

Nun wird der aufmerksame Beobachter zu recht fragen: wo sind denn da die Daten? Und tatsächlich ist es nicht ganz ersichtlich, aber bei genauerem Hinsehen wird man merken: Es sind einerseits die Familie, dann die Aktionen an sich, und schließlich, und darauf wird es dem Vater primär angekommen sein, deren Reihenfolge. Die Kunst der Datenverarbeitung ist es also diese völlig heterogenen Daten unter einen Hut zu bekommen.

Wenn wir aber sagen, dass „wattWandern()“ ein Datum ist, kommt man schon an dieser Stelle ins Schleudern, denn schließlich ist es doch auch ein Teil des Programms, das man geschrieben hat, geschrieben haben muss, denn sonst könnte die Funktion „wattWandern()“ ja schließlich nicht aufgerufen werden. Das stimmt allerdings, aber es ist ja auch möglich, könnte man entgegenhalten, dass diese Funktion nicht vom Verfasser des Programms stammt, sondern von jemandem anderem (Was man natürlich auch über das Objekt „Familie“ sagen könnte, aber das wäre eine wirklich böswillige Unterstellung, die der Vater wahrscheinlich aufs schärfste zurückweisen würde). Die Funktion könnte auch in einem schon älteren Programmteil auftauchen oder man hat sie aus dem Internet gefischt, was sehr nahe an die Arbeitsweise heutiger Programmierer herankommt. Aber es ist klar, dass dies natürlich keine Rolle spielt für die Definition von Programm, Daten oder Datum. Und so muss man eingestehen, dass hier die Grenze unscharf wird, zwischen Datum und Programm, dass jedes Programm eben auch ein Datum ist und es sich zumindest zum Teil nur selbst verarbeitet.
Und dieser Sachverhalt wird auch durch die Tatsache augenscheinlich, dass so ein Programm geschrieben werden muss und dass man dieses Programm eben in einer Datei abspeichert, also als Datum festschreibt.

Wenn ich nun aber sage, dass Programme auch Daten sind und dass Programme zum Teil nur sich selbst als Daten verarbeiten, so kann man den Blick durchaus noch einmal schärfen und genauer hinschauen und schon löst sich diese Aporie einiger maßen auf. So ein Programm, wie es geschrieben ist, ist so ja noch nicht lauffähig, es verarbeitet noch keinerlei Daten, denn es braucht ein weiteres Programm, dass es zum laufen bringt und seinerseits das geschriebene Programm als Datum ansieht. Dieser Programme gibt es viele, man kann sie kaufen, manchmal und immer öfter gibt es sie umsonst und man nennt sie Interpreter oder virtual mashine. Oftmals muss man seine Programme auch kompilieren, das heißt in eine andere Datenform übersetzen, die der Computer besser versteht. Aber auch diese Programme haben alle diese hybride Eigenschaft, dass sie immer auch Daten sind, und man kann das hinunter verfolgen bis auf die physikalische Ebene der elektrisch oder magnetisch gesetzten Schalter, die man Bits nennt, denn diese Bits mit ihrer jeweiligen Schaltung sind selber gleichzeitig Daten und Programm und das immer für das jeweils andere.

Und so kann man kann durchaus daraus schließen, dass es niemals ein reines Programm gegeben hat, und man kann daraus schließen, dass es niemals ein reines Datum gegeben hat.
Und alle geannnten Assoziationen, die sich mit den Daten und dem Programm verbinden, werden Lügen gestraft, denn die Daten sind nichts totes und das Programm ist nichts lebendiges. Beide sind sowohl tot als auch lebendig. Und wenn ich über die Implikationen nachdenke, die diese Erkenntnis für mein Beispiel des 10. Oktober 2005 hat, so ist auch dieses Datum immer schon Programm gewesen. Und seine Handlungsanweisung besteht darin, mich als seinen Interpeter anzuweisen meine Magisterarbeit endlich fertig zuschreiben. Und so wird die Deadline doch noch zum Leben erweckt, indem sie mit einer Kombination von Angst und Schuld mein innerliches Programm anstößt, schreibt oder determiniert. Insofern ist dieses Datum mein Programm und ich habe es zu verfolgen, anstatt wie ein Bescheuerter Texte über Programm und Datum in meinen Blog zu stellen.

1 Zitate:

... oder wie Anonymous flow einst so treffend sagte:

"der letzte satz war gut - ein glück, dass diese erkenntnis dann am ende doch noch zu stande kam!
hau rein und lass den blog mal blog sein..."

Sonntag, August 21, 2005  

Kommentar veröffentlichen

Links zu diesem Eintrag:

Link erstellen

<< Home