Monday, July 20, 2009

Schritte -- ein Gedicht

Ein Gedicht ist eine Momentaufnahme. Jeder Gedanke, jedes Gefuehl, Couleur einer vergangenen Zeit. Kleine Risse im Papier, kalter Regen auf der Haut, die Zukunft schweigt nicht. Schritt fuer Schritt entwickeln wir jeden Gedanken hin in eine ungewisse Zukunft. Die Veraenderung traegt uns weiter. Die extreme Naehe, in der sie stattfindet, sie macht uns zu schaffen. Wir koennen nicht anders, als sie zu ignorieren. Wir wuenschen uns jeden Gedanken auf die Veraenderung im Kleinen wegzuschmeissen und den grossen Abriss zu vollfuehren. Doch das ist nicht moeglich. Die Zeit versucht uns in Verfuehrung zu tragen, saemtliche Errungenschaften fuer die Minute der vollstaendigen Auskostung des Lebens zu opfern. Und Recht werden wir damit erfahren. Meine Angst, mein Leben wird fuer immmer im Zweifel der Herrschaft eines unaussprechlichen Gedanken sein. Aber dieser bleibt fuer immer unser Geheimnis. Nass glaenzt der Regen auf deiner Haut. Kleine Risse im Papier, sie zeigen die Richtung. Der Asphalt glaenzt am roten Kaminfeuer des alten expressionistischen Gebaeudes. Die handzahme Beleuchtung im buergerlichen Rot tut ihr uebriges. Die totale Dekonstruktion des Momentes findet in meinem Kopf statt. Jede geschwungene Kurve, jedes leuchtende, aus der Dunkelheit hervorstechende Licht, wird durch eine schwarze kubische Form zurueck gedraengt. Wuetend stapft der alte Mann zurueck, der vor einer handvoll Wochen das unaussprechliche Tat: Er bemaengelte ein Gebaeude seiner Simplizitaet wegen. Reine Verachtung auf sein minder bemitteltes Haupt. Die Elite traegt ihre Fuesse im stolzen Eifer vor dir voraus. Du bist der ewige Klotz am Bein der Evolution. Du bist der unfaehige Mensch, der nichts wirklich beherrscht und durch Arroganz und kuehne Rede denkt, er kann uns taeuschen. Doch die Taten werden nicht ohne Folgen sein, und eines Tages wirst du auf das Werk deines Lebens zurueckblicken und bemerken, dass nichts von dir uebrig bleibt. Dass der See dein Salz komplett genommen hat. Und dann siehst du, was du bist. Du denkst natuerlich, dass die anderen die Arbeit schon tun werden. Und deiner Position bist du nicht wirklich sicher. Im Kindesalter haettest du gern etwas anderes gemacht, und jetzt schaetzt du dein Hobby mehr als dein Tageswerk. Du jammerst ueber die Umstaende und siehst ein, dass du nichts veraendern kannst. Du verteidigst die Menschen, die keine Tugend in ihren Taten sprechen lassen, weil sie so handeln, wie auch du es tun wuerdest. Aber du leugnest es. Du kommst in Fahrt bei politischen Diskussion, du in der Bourgeoisie geborenes Kind. Du kaempft fuer deine Freiheit, du kaempfst ums Ueberleben. Denn der Klassenkampf, den du dir wuenschst, der ist laengst vorueber. Du siehst Geld vor deiner Nase und denkst, so schwer kann das nicht sein, das zu haben. Du laesst dich locken, du laesst dich treiben. Du denkst das es keine Extreme geben kann, und deshalb verfolgst du den Kompromiss. Aber du bist leider nichts wert. Du siehst mich in deinen Raum kommen, und du kannst mich auf einmal nicht leiden. Denn was ich spreche ist immer die Wahrheit. Und ich hasse dich nicht, ich liebe dich nicht, ich rede mit dir. Deine Fragen werden beantwortet, aber dein Hass nicht. Und willst du etwas von mir, so werde ich es dir geben. Aber ich gebe es dir, so wie ich es moechte, auf die beste Art und Weise, wie es mir moeglich ist. Und ich beginne zu Denken und ich fuehre diesen Gedanken auch zu Ende. Das macht dir angst. Du kannst nicht auf diesen Fleck in deiner Seele blicken, denn dieser Fleck wird mit jedem Tag groesser. Er waechst mit deiner Angst vor der Realitaet. Du siehst, dass es keine Gespenster gibt, und du realisierst auch, dass du leider dein Schicksal selbst in der Hand hast. Es wird einen Tag geben, da sitzt du allein da. Jemand wird auf dich zukommen, er wird sich auf die Stufen neben dich setzen. Ein kalter Herbstwind wird dein Haar zur Seite wehen. Und jetzt kannst du ihn ganz genau sehen, und er fragt dich: Was willst du in deinem Leben noch tun? Holzstuecken treiben lose durch den dichten Strudel. Es reisst einem fast die Beine weg. Konzentriert sieht er auf seine beiden Knoechel. Schritt fuer Schritt kommt er dem zahmen Ufer naeher. Schritt fuer Schritt bewegt er sich gegen diesen einen Strom. Kein Mensch ist in seiner Naehe, der wieder einmal dazwischen reden koennte. Doch dieses eine Mal ist dem nicht so. Ich presse meine Lider stark gegen die feuchten Augen. Der Wind treibt das Salz in die rauhe Netzhaut. Doch es ist nicht der Schmerz, der ein Laecheln zulaesst: Es ist die reine Unrast, die sich einfach so, fuer diesen Abend ergibt. Ein Strudel aus Licht, ein Karussel aus ausgehoelten Kokosnussschalen. Das Paradies und das Ende von diesem ist Nahe. Viel zu lange wurde ueber die Moeglichkeit der Ausloeschung von diesem geredet. Die Attraktivitaet eines Ortes der Ruhe ist zu gross. Sie kommen hier her. An diesen Ort des Chaos, sie setzen sich hier hin. Sie blicken mir eben an dieser Stelle in die Augen, die doch noch vor einer Stunde voll von Salz waren. Und sie reden ueber Dinge, die sie nicht kennen. Und sie jonglieren mit Worten, die sie niemals verstehen werden. Sie sind langweilig, und deshalb koennen sie dir nicht zuhoeren. Sie spielen Spiele, sie lassen Spiele spielen, sie schauen Dinge an und vor allem konsumieren sie. Das Wirken auf andere ist der heilige Gral, der Spender von Seelenruhe. Und so ist die Seele rastlos solange sie weiss, das andere sie bewerten und drehen und wenden und anschauen und richten. Du aber richtest nicht. Du siehst nicht die anderen, du siehst nur, was sie tuen. Aber du urteilst, und zwar allein. Niemals fragen, was die anderen Denken, niemals sehen, was die anderen sehen, niemals fuehlen, was die anderen fuehlen, denn das bist du nicht. So tief moechtest du niemals fallen. Das Geheimnis dieser Welt, es steckt in uns. Die Loesung der Sache ist groesser als die selbstverliebte Charitas. Sie ist die Charitas. Und jeden Tag werde ich der selbe sein. Denn jeder Tag ist wahr, denn er ist mein Schicksal.

Wednesday, July 15, 2009

Wohnheim: Kritik und Praxis

Die letzten Blogposts waren doch eher der theoretischen Natur verpflichtet. Heute gibt es einen kleinen Beitrag zur klassischen gesellschaftlichen Kritik und zwar in meinem kleinen Wohnheim. Die Situation schildert sich einfach: Die Maedchen-WG, deren Existenz erst nach dem Vorfall bemerkte, beschwerte sich, dass bestimmte Nahrungsmittel von ihnen entnommen wurden. Dabei handelt es sich um Kleinigkeiten, aber es reichte aus, um am schwarzen Brett eine heisse Diskussion zu entbrennen. Nur ueber dieses Medium konnte ich die gesellschaftlichen Spuren nachvollziehen. Ein persoenlicher Kontakt blieb mir bisher mit dieser Problemsituation erspart, obwohl andere Dinge, wie das unentgeltliche Nachkaufen von Klopapier oder Spuelmittel, zu meinem Bereich gehoeren. Doch ich lebe zu einem gewissen Grad nach der Maxime, dass Eigentum Diebstahl ist. Saemtliches Eigentum ist eine Illusion der Gesellschaft in der wir leben. Denn der vollstaendige Besitz einer Ware unmoeglich, durch die inhärente Paradoxie des Besitzes. Er bedeutet fuer mich die totale Gleichschaltung der Beduerfnisse und der ungeteilte Anspruch auf die Mittel, welche zur Herstellung genutzt wurden. Doch beruht zum Beispiel meine Bildung, die massgeblich am Ergreifen von Besitz beteiligt ist, auf einer gemeinschaftlichen Aktion. Ohne das Wissen der Muetter und Vaeter waere es fuer mich unmoeglich gewesen, dieses Kapital zu erlangen. Man koennte einwenden, dass aber mein besonderer Einsatz den Mehrwert darstellt, der den Besitz rechtfertigt. Aber auch dieser ist nur eine Illusion. Intrinsische Motivation, die es moeglich macht Kapital aufzubauen, welches ein Plus gegenueber der Menschheit darstellt, wird durch aeussere Einfluesse geschaffen, die wiederum ein Teil der grossen Ursachen- und Wirkungskette sind. Ich moechte damit vor allem zum Ausdruck bringen, das Demut eine wichtige Tugend darstellt, Demut vor all dem Geschaffenen und Demut vor den Menschen, welche nicht den Weg einschlagen konnten, der ihnen die Verwirklichung ihres Selbst durch eigene Aktionen, losgeloest von der buergerlichen Masse, ermoeglicht. Unsere Pflicht diesen Menschen zu helfen, ergibt sich aus rein egoistischen Gruenden. Der Prozess des Gebens und Nehmens sollte nicht durch die materielle Sache selbst bestimmt werden. Das geistige Bild der Welt bestimmt unsere Ideale, die uns zum grossartigen Menschen machen. Die Bestimmung uns von Affen zu unterscheiden, muss verdient werden. Die blosse Reflektion der Dinglichkeit, des Fassbaren, erschafft eine Welt, deren Basis ein Konstrukt ist, welches die Menschen gefangen nimmt. Die Freiheit den Geist zu entfalten und eine Struktur der Herrschaft der Intelligenz zu schaffen, ist ein menschliches Verlangen, welches nur durch die Entsagung einer Konsumebene geschaffen werden kann. Die Konkretisierung dieses Problems laesst sich am Nachkaufen des Spuelmittels verbildliche: Wenn ich es unterlassen haette, das Spuelmittel nachzukaufen, dann haette ich, wieder jeder andere die Situation des individuellen Nachkaufs gestaerkt. Die Architektur einer sozialen Struktur waere gestoert, und die Schaffung eines Besitzes waere Teil meines Charakters. Ich inkorperiere den Gedanken des Eigentums, des Festhaltens, an eine Sache, die ich nicht bin. Deshalb muss ich ihr entsagen, und das aus puren egoistischen Gruenden, ich moechte meinen Charakter nach meinem Selbst formen. Trotz alle dem bin ich auf der Seite der Maedchen. Der letzte Kommentar auf dem schwarzen Brett war die blanke Provokation. Es stand geschrieben, dass eine Person, die gestohlenen Produkte zu verkaufen habe, und ob sich die Maedchen-WG jetzt nicht schlecht vorkomme. Es war formuliert, wie als haette die Person lang, in ihrer Scham ueber den Diebstahl nachgedacht und dann nach langen Ueberlegung, sich gegen die Reife entschieden. Die Umwelt wurde an die eigene Realitaet angepasst. Die Sache selbst wurde verharmlost und der Taeter entlastet. Das Eigentumsrecht ist ein wichtiges Recht, denn es stellt sicher, dass Aktion mit einer gewissenen Eigenverantwortlichkeit ausgefuehrt werden. Ohne Eigentum gibt es auch keine eigenen Entscheidungen. Ich als Eigentuemer des Spuelmittels entscheide ueber dessen Freigabe und baue damit allein ein soziales Geruest nach meinem Bild. Wenn das Spuelmittel frei waere, dann gaebe es niemanden, der ein Geruest bauen kann, aber die Fragestellung selbst waere hinfaellig. Dieser Prinzip der Eigenverantwortlichkeit wird vor allem in der Wirtschaft angewandt. Ein Mensch ohne eigene Verantwort kennt keine persoenlichen Konsequenzen und nur persoenliche Konsequenzen koennen eine persoenliche Veraenderung herbeifuehren. Soweit der verhaltenstheoretische Ansatz. Bei diesem wird versucht, durch negative Konditionierung, nicht erwuenschtes Verhalten zu verringern und erwuenschtes zu verstaerken. Es existieren aber des weiteren noch andere Ansaetze der Motivation. Es ist zum Beispiel moeglich, dass Motivation aus dem inkongruenten Zustand des erwuenschten und als real wahrgenommenen Selbstbildes, entsteht. Gesellschaftliche Veraenderung entsteht hierbei durch Ermoeglichung einer Entfaltung des Bildes von jedem einzelnen Menschen, hin zum gewuenschten Bild. Oder der Annaeherung der Wuensche auf ein Niveau, in dem sie auch erfuellt werden koennen. Ich handele streng nach der Maxime, Eigentum ist Diebstahl. Bewusst schliesse ich mein Zimmer jeden Morgen ab, denn nur so kann ich Geheimnisse von der Seele der Allgemeinheit stehlen, die dann ganz allein mir gehoeren, entgegen jeglicher Vernunft.

Saturday, June 20, 2009

BP and the human factor

In Business Process Re-engineering you will learn that from an organizational viewpoint, structuring your enterprise in functional division is wrong, because there are so many breakpoints for the business processes. And there is another reason for a process oriented structure of your enterprise: the human factor. If a human being is able to realize itself as an expert in some team, intrinsic motivation will follow. There is another important aspect in motivation there: with this kind of structure, it won't have to do the same job everyday for anonymous looking parts of the company. The more it changes, the more it is the same thing. For structuring large entities of information e.g. programs, the motivational aspects are not to be taking into account. At least for the moment, we don't have to deal with AI, yet. But you have the breakage of the process structure there. And if you think of this weird thing modular programming, you certainly realize that it goes against our thinking to built reusable parts. What we are really trying to achieve is to implement some kind informatics aspect of the business process at stake. Modular programming goes against this human way of thinking. In the end are the programmers human beings, too. The have to be motivated and will play in the future an important part in every business process. So how do we solve this problem? One possibility would be to the most marketing like solution, too. Concentrate on your areas of expertise and process oriented structure will follow. Our tools could have a modular structure because they were built by entities that had this task to do. This is explaining why we all are using more or less standard libraries from someone outside of our own process.

Thursday, June 18, 2009

Mechanismen der Macht

Orwells 1984 hatte einen nachhaltigen Einfluss auf mich. Nicht nur zeigte es für mich den Überwachungsstaat und dessen schreckliche Auswirkungen auf den Menschen, sondern auch zeigte mir dieses Buch die Mechanismen der Macht. Kombiniert mit dem Lesen von Baudrillards >>La Société de consommation<< zeigt es mir, dass eine Schnittmenge in jeder modernen Gesellschaft existiert, welche die verheerenden negativen Symptome einer gesellschaftlichen Krankheit erklärt. >>Der Eindimensionale Mensch<< von Marcuse zeigt eine Rhetorik der Macht auf, die Widersprüche allein durch ihre reine Artikulation verbirgt oder unmöglich macht. Der Homo-Oeconomicus ist ein Modell der Wirtschaftswissenschaften, welches die Realität nicht widerspiegelt, und dies ist auch nicht die Intention dieses Modells. Das Fragen dieser Art in der Zeit der Krise aktuell sind, ist klar. Wie viel Staat ist nötig? Wie frei können Märkte sein? Wie funktioniert der Transformationsprozess einer Unternehmung, wenn keine Forderungen von außen bestehen, und somit der interne Restrukturierungsprozess keine Motivatoren am Ansatz der Unternehmenswertsteigerung durch Gewinnmaximierung besteht. Durch Eingreifen des Staates, wie Subventionen von Automobilkonzernen oder eine Anhebung des Preises für Arbeitskraft durch Mindestlöhne entsteht ein Marktungleichgewicht. Die Preisfindung lässt sich nun nicht mehr durch äußere Faktoren bestreiten. Funktionssignatur Angebot(Menge: Stück): Preis; Funktionssignatur Nachfrage(Menge: Stück): Preis; Im Beispiel ist das Marktgleichtgewicht bei 2,5 Arbeitsstunden gegeben, da dies dem Schnittpunkt beider Achsen entspricht. Wird nun der Preis für Arbeit künstlich angehoben, dann entspricht dies einer Veränderung der Funktion. Der neue Schnittpunkt liegt dann bei 2 Arbeitsstunden. Durch die künstliche Anhebung wurde also Arbeit vernichtet. Dies ist ein Aspekt, ein sehr simples Modell, welches man am Anfang des Studiums oder auch schon im Schulunterricht kennen lernt. Die Erwähnung ist, trotz der eindeutigen Vereinfachung, nötig, da es die Grundlage der Begründung gegen die Einführung eines Mindestlohns in Deutschland ist. Und das schlagende Argument hierbei ist schwer zu negieren. Die Hauptaussage ist, dass bei steigenden Preisen, die sich bei der künstlichen Erhöhung einstellen, mit einer sinkenden Nachfrage zu rechnen ist. Dies trifft vor allem für Menschen zu, welche im Niedriglohnsegment liegen. Das heißt konkret, dass die Menschen die Preise für viele Produkte erhöhen. Dies führt einerseits zu einer Verteilung der Vermögensverhältnisse, aber auch zu einer Belastung der Haushalte. Wenn der Sinn eines Mindestlohnes also die Überzeugung ist, dass die Machtverteilung gerechter gestaltet ist, durch mehr Geld in den Kassen der ärmeren Bevölkerungsschicht, welche zu wenig zum Überleben hat, dann ist das Mittel des Mindestlohnes ineffektiv, da es gleichermaßen alle Bevölkerungsschichten betrifft. Wenn wir zum Beispiel eine Arbeit mit niedrigem Lohn, wie der Frisör, betrachten, dann wird klar, dass ein Mindestlohn jeden Frisörbesuch steigert, nicht nur der reicheren Bevölkerung. Jedoch würde das Argument der sinkenden Nachfrage nicht bei Aufgaben des Staates funktionieren. Wenn durch Steuern finanzierte Arbeitsplätze geschaffen werden, die ein gewisses Qualifizierungsniveau fördern, dann kann so ein viel passenderes Mittel gefunden werden. Gleichzeitig würde sich das Angebot gering qualifizierter Kräfte auf dem Arbeitsmarkt verringern und somit ein höherer Lohn für dieses Segment Resultat sein. Ein Gegenargument hierzu ist die ungleichmäßige Förderung von Geringqualifizierten. Dies muss aber nicht sein. So kann die Ressource Arbeit gezielt genutzt werden, um höhere Qualifikation aufzubauen und somit kann eine Politik der Ordnung hergestellt werden, die eine Richtung für die freiheitlichen Kräfte vorgibt.

Design patterns

Wow, one week without real Internet-access and straight thinking returned back to me. Sometimes I have the feeling, that the internet produces a real short concentration-time. I can't stay concentrated on one subject for a long time if I have Internet-access. I am in the wake of searching a place to live. After all my new job is in a different city. And driving the whole day long with the subway, I could observe myself to fall back into this state of deep thinking that is normally the result of long learning sessions in the library -- a state of meditation. I think most people forget, that there is not just the Zazen, the sitting meditation, but also Kinhin, the walking -- and searching for a new flat share is truely is. So I was thinking lately a lot about automata and computational models. This is a subject of great interest for me, because the depth of methods provided at university is not that great for modelling complex systems. There are subsubjects in here, like do I accept UML as the lingua franca of modelling. The obnoxious EPCs, ERDs are stuck into my head. But the real subject of this blog-entry is not the shameful being of the Internet, but design patterns. Design patterns are well-known in the developer community, but there is a certain argument, that they are just poor hacks for a less powerful language than say LISP.
Many patterns form a language
This is the answer. The problem here is that many people see this from a too technical perspective. But CA was thinking about something else. The pattern is a means for formulating an idea. And after you have collected a lot of patterns it is natural that they are implemented as generic algorithms and such. I am very interested in travelling so this comes out naturally for me. Imagine the following situation: You visit a new country, say France. And you don't know the language, yet. So you use patterns. A pattern is the triumphirat of a problem, the context and the solution. Given the problem of starvation, you want to eat something i.e. the solution. The context is that you are a stranger with no money but good looking. I now will introduce the pattern Fancy someone for a meal. And now you can go on and describe an algorithm, a step-by-step instruction how to seduce someone in this special case. The next thing could be that you want to sleep in this country. Now it is possible to define the Fancy someone for a place to sleep. This could be a whole language for your state machine:
-- S = { hungry+tired, full+tired, hungry+awake, full+awake }
-- E = { Fancy_someone_for_a_meal,
         Fancy_someone_for_a_place_to_sleep }
-- T = { (hungry+tired X Fancy_someone_for_a_meal -> full+tired),
         (hungry+tired X Fancy_someone_for_a_meal -> hungry+tired),
         (full+tired X Fancy_someone_for_a_place_to_sleep
          -> hungry+tired),
         (full+tired X Fancy_someone_for_a_place_to_sleep
          -> hungry+awake),
         (full+tired X Fancy_someone_for_a_place_to_sleep
          -> hungry+tired), 
         ...
         handwaving
         ... }
A pattern is a relation putting a new dimension to algorithms and helps building a language. Quicksort for example is not the fastest algorithm for every case in every circumstance. To document this you can use patterns. Now my coffee is finished. Back to work.

Sunday, May 31, 2009

LOOP

At the moment I try to practice my skills in PL/SQL. Like these old Chinese monks I believe that you can only be a master, if you really practice steadily. And while learning I discovered that the LOOP statement in PL/SQL is something really cool, because it would substitute the always famous
while(true):
  if expr:
    break
  do_smth
for implementing the sentinel. For the sake of this blog I implemented this thing :)
class List:
    def __init__(self, node, next): self.node, self.next = node, next

class Block:
    def __init__(self, xs): self.xs = xs

    def body(self):
        print("%d" % self.xs.node)
        self.xs = self.xs.next

    def cond(self):
        return False if self.xs == None else True

class Loop:
    def __init__(self, block):
        if block.cond():
            block.body()
            Loop(block)

Loop(Block(List(23, List(42, List(5, None)))))

Saturday, May 30, 2009

C♯ or Implement That Stack

A friend of mine reminded me of the importance to implement the stack ADT for the sake of learning a new programming language. CS really feels strange to me, so I implemented the stack. To test the program, I implemented a small postfix-notation parser -- like 1 1 + 2 * = 4, too.
using System;
using System.Collections;

public class Stack 
{
  ArrayList xs;
  
  public Stack()
  {
    xs = null;
  }
  
  bool empty()
  {
    return (xs == null);
  }

  void push(int x)
  {
    if (empty() == true) {
      xs = new ArrayList();
    }
    xs.Add(x);
    Console.WriteLine("PUSH " + x);
  }
  
  int pop()
  {
    Console.WriteLine("POP " + (int) xs[xs.Count - 1]);
    return (int) xs[xs.Count - 1];
  }

  private static int ctoi(char c)
  {
    return int.Parse(c.ToString());
  }

  private static bool number(char c)
  {
    try {
      ctoi(c);
      return true;
    } catch (FormatException f) {
      return false;
    }
  }

  public static void Main(string[] args)
  {
    string cs = args[0];
    Stack s = new Stack();

    for (int i = 0; i < cs.Length; i++) {
      switch (cs[i]) {
      case '+':
        s.push(s.pop() + s.pop());
        break;
      case '*':
        s.push(s.pop() * s.pop());
        break;
      case ' ':
        break;
      default:
        s.push(ctoi(cs[i]));
        i++;
        while (number(cs[i])) {
          s.push(10 * s.pop() + ctoi(cs[i]));
          i++;
        }
        break;
      }
    }
    Console.WriteLine(s.pop());
  }
}