Samstag, 04. Dezember 2004
[15h34] Das sind längst noch nicht alle Projekte der letzten Zeit gewesen. Und natürlich läuft nicht jedes Projekt feinsäuberlich nacheinander ab. Ich glaube es ist nachvollziehbar, warum ich mich nach den letzten 3-4 Wochen reichlich zerschreddert vorkomme. Und ich glaube es ist nachvollziehbar, warum dieser Blick
zurück, eine Erleichterung ist. Denn alles andere verspricht nun erstmal relaxter zu sein.
[14h32] Fünf Insofern ein kurioses Projekt, weil es sich seit Wochen auf der Zielgerade befindet und quasi schon abgenommen ist. Es fehlt nur ein klitzekleines Stück und mit diesem klitzekleinen Stück nerve ich mich eben seit Wochen schon rum.
Es geht dabei um eine Website mit kleiner Pseudo-CMS-Funktionalität zum Einpflegen von Nachrichten, wozu ich WordPress benutze. Die Probleme fangen dort an, wo meine Befugnisse aufhören und die des Hosters anfangen. Es ist kein normaler Hoster, sondern ein Kooperationspartner des Kunden. Der war natürlich selber erstmal beschäftigt seine Server so einzurichten, dass eine zweite Website darauf laufen konnte, ohne dass sich beide irgendwie in die Quere kommen konnten.
Zudem wurde ein „Quarantänebereich“ eingerichtet. Aus nachvollziehbaren Sicherheitsgründen darf ich nicht direkt auf den Server rauf, sondern nur in einem begrenzten und besonders gesicherten Bereich. Dort spiele ich meine Daten auf, darf sie bearbeiten und kann per Shell-Befehl veranlassen, das mein Bereich komplett auf den „Live“-Server kopiert wird.
Das letzte Stück Funktionalität welches fehlt, ist dummerweise das „Herz“ von WordPress: mod_rewrite
, dein Name läßt die feindlichen Heere in Furcht erstarren.
Alles was bei mir lokal läuft, funktionierte dort nicht. Für den offiziellen Start vor Wochen, habe ich, mit Wissen des Kunden, die Funktion getürkt, indem ich die Verzeichnisse die sonst mit mod_rewrite zu einem Query-String (für Laien: PHP-Abfrage-URL) umgeformt werden, in realiter angelegt habe.
Warum funktioniert mod_rewrite auf dem Server nicht? Grob gesagt: wegen der Konfiguration des Servers. Präziser kann ich es noch nicht sagen. Das Prozedere läuft so ab: ich schreibe dem freien Mitarbeiter der im Namen des Hosters arbeitet, eine eMail. Der lässt die eMail 3, 4, 5 Tage liegen, ehe er das ausführt, worum ich ihn in der eMail gebeten habe. Ich wiederum stecke just zu diesem Zeitpunkt wieder in irgendwelchen Deadlines und brauche meinerseits 3, 4, 5 Tage bis ich die Änderungen überprüfen kann. Dieser Server-PingPong zieht sich nun 3 Wochen hin.
Erst musste das mod_rewrite-Modul in Apache integriert und eingebaut werden. Feststellung: die URLs wurden nicht korrekt „umgebogen“. Also bat ich das Rewrite-Log einzuschalten und mir zugänglich zu machen. Dummerweise zeigte die Ausgabe im Log überhaupt nicht die Charakteristika die ich von meiner lokalen Umsetzung kenne. Auffällig: es gab keinerlei Aktion auf Verzeichnisebene („per-dir“). Also habe ich mich in den wenigen Server-Verzeichnissen umgeguckt, in denen ich zumindest Leserechte hatte. Und siehe an: in einer der Konfigurationsdateien war AllowOverride
auf None
gesetzt. Vulgo: .htaccess
im Verzeichnis wurde geflissentlich ignoriert. Also musste ich bitten AllowOverride auf z.B. FileInfo
zu setzen. Keine Veränderung... Nun habe ich den Dienstleister gebeten, mit mir „live“ am Montag per Telefonkonferenz das Problem zu beseitigen. Ich habe nur sehr beschränkten Lesezugriff auf die Server-Bereiche außerhalb meiner „Quarantäne-Zone“, daher kann ich nur mit der Stange im Nebel herumstochern. Mein derzeitiger Tipp: die .htaccess-Datei wird gar nicht aus meinem Quarantäne-Bereich auf den „Live“-Webserver kopiert. Selbst ein simpler „Redirect
“ in der .htaccess-Datei wird momentan nicht ausgeführt.
Es nervt, weil ich dieses Projekt einfach nicht abschliessen kann, ergo keine Rechnung stellen kann... Ich wäre bereit, ich tue mein Bestes, laufe aber immer wieder an dem Server auf. Die Materie WordPress, Server, mod_rewrite, Quarantäne-Zone ist keinem Kunden zu erklären... Man weiß, dass es eine „offene Flanke“ ist und fürchtet jede Kundennachfrage warum es noch nicht läuft, wie einen Messerstich.
[13h50] Vier Die Website eines neugegründeten Ein-Mann-Unternehmens aus dem Bereich „Handel“, Kontakte noch aus früheren Zeiten. Konzept und Groblayout kamen mit Powerpoint, Farbschema wurde inzwischen von einer Print-Designerin die sich um die Geschäftsausstattung kümmert, nachgeliefert. Kein Problem, dank CSS musste ich nur an fünf Farbcodes rumschrauben.
Mein Gestaltungsspielraum bewegt sich irgendwo zwischen Kundenvorgabe, Beratungsakzeptanz des Kunden und schließlich Projektbudget. Welches eher irgendwo unten angesiedelt ist. Das Projekt steht für alle Beteiligten unter dem Motto „darf nicht viel kosten“.
Das Problem bei solchen Projekten ist nicht die Produktion, sondern die Beratung, bzw. das Handling des Kunden. Anstatt den Dienstleister zu beauftragen alles selber zu machen, natürlich gegen entsprechendes Entgelt, krempelt der Kunde die Ärmel auf und versucht sich selber. Kein Wunder. Aus jeder Internet-Zeitschrift am Bahnhofskiosk, aus jeder Computer-BILD schreien einem doch die Provider entgegen, wie einfach es ist, 'ne Website auf die Beine zu stellen und wie simpel das Kaufen von Domains ist.
Es gibt keinen Bereich in dem die Leute trotz aller verbal praktizierten Skepsis so blauäugig sind, wie das Internet. Leute die ihren Autoschlüssel nicht mal für dreißig Sekunden einem Wildfremden geben würden, lassen alle Hemmungen fallen, wenn sie rechtlich völlig unabgesichert für mehrere hundert Dollar eine Domain ersteigern können (der Verkäufer sitzt in Russland und braucht nur WHOIS-Daten umzuschreiben um via Escrow an das Geld ranzukommen. Wie der Käufer bei irgendeinem hintersibirischen Hoster durchsetzen will, dass der die Domain zum Umschalten freigibt, erschließt sich mir nicht).
Natürlich klappt es nicht und natürlich bekomme ich die eMail und darf nun aus der Patsche raushelfen. Und ich stelle mir die Frage wie ich dem Kunden die Stunde Recherche in Sachen escrow.com in Rechnung stellen soll. Hier 'ne Stunde, dort 30 Minuten. Es läppert sich bei solchen Projekten brutal zusammen. In einem anderen Fall, im letzten Jahr, hat die Beratung mehr gekostet als die Website, da ich quasi mit dem Urknall beginnen musste. Jeder Kunde möchte verstehen, was da vor sich geht. Das ist sein gutes Recht und innerhalb gewisser Grenzen auch Service. Aber irgendwann sage ich mir auch: Mensch, davon hätte ich jetzt meine Büromiete diesen Monat zahlen können.
Bei solchen „preiswerten“ Projekten gibt es zwei Modi: ich habe Spaß, kann mich austoben, lerne was Neues und kann mich einbringen. Folge: der Kunde bekommt einen guten Job für lau. Der andere Modus: ich bin ausführendes Subjekt, Punkt.
Das Projekt ist zum Glück zeitlich nicht eng gewesen, es genügte wenn ich im Laufe der Woche immer wieder Fortschritt zeigen konnte, sprich pro Tag 1-2h abzwacken konnte. Was so gesehen noch nicht mal schlecht war, ein bißchen Web neben all der Flash-Prügelei.
[13h12] Drei Von höchsten Höhen in tiefste Tiefen. Projekt „Drei“ war das mieseste was ich seit Jahren abgeliefert habe. Die Umstände waren zwar suboptimal, aber es führt nichts drumherum, das ich frühzeitig hätte gegenlenken und anders reagieren können.
Projekt „Drei“ ist ein Flash-Spiel gewesen, das von Anfang an, an einer engen Deadline litt. Eine Deadline die absolut unverrückbar, weil mit anderen Medien gekoppelt war. Zeitlich hatte das Projekt keinen Spielraum. Gleichzeitig zeigte sich, das ich eine zu optimistische Berechnung des Zeitaufwandes gemacht hatte. Quasi jedes Element dieses Projekt lief zeitlich aus dem Ruder. Gleichzeitig kam die unverrückbare Deadline näher.
Es greifen dann die üblichen Mechanismen: man glaubt alles ausbügeln zu können, indem man nicht 8, sondern 12 oder 16 Stunden am Tag arbeitet, notfalls eine Nachtschicht einlegt. Gleichzeitig werden Features reduziert. Alles was nicht „Must“ sondern „Can“ ist, wird verschoben. Nichts destotrotz begreift man den Ernst der Lage nicht. Den man hat ja die Zeitkalkulation gemacht und demnach müsste der Rest binnen eines Tages zu schaffen sein. Soviel Pech kann man gar nicht haben, dass auch der Rest nicht 1, sondern 2 Tage braucht...
Doch kann man.
Man arbeitet gegen die Zeit. Man fokussiert sich auf das Projekt. Man denkt permanent an die nächsten Steps. Beim Essen, auf dem Klo, auf dem Arbeitsweg. Ich habe beschissen, unruhig geschlafen. Am Tag vor Buffalo legte ich eine Nachtschicht hin und habe durchgearbeitet. Eine dreiviertel Stunde Schlaf am frühen Abend und nochmal eine dreiviertel Stunde in der Nacht.
Morgens um sechs gab es „Das Leben des David Gale“. Ein Film so schlecht wie ich mich fühlte. Ein furchtbar künstlicher Film mit einem Kevin Spacey der nach „American Beauty“ nur noch pathetischen Bullshit spielt. Ich bekomme inzwischen bei der deutschen Synchronstimme die Krätze.
Ziemlich genau mit Ende des Films bin ich ins Büro gewankt. Es ging mir beschissen. Es ging mir beschissen weil ich wusste das ich ein schlechtes, unter den Erwartungen liegendes Ding abliefern würde. Es ging mir schlecht, weil ich wusste dass zeitlich sehr eng werden würde. Es ging mir schlecht, weil ich ahnte/fürchtete dass ich eine nette Agentur gegenüber ihrem großen Kunden in Kalamitäten treiben würde. Es ging mir schlecht weil ich nicht geschlafen hatte und nur noch Scheiße gefressen hatte. Es ging mir schlecht weil ich wusste, dass mit der Deadline nicht alles vorbei sein würde, sondern ich noch den ganzen Abend an Nachbesserungen sitzen würde.
Und so kam es. Erst am nächsten Vormittag entspannte sich die Situation. Die Nachbesserungen waren durch, das Spiel spielbar. Es gab Schulterklopfen von Seiten der Agentur. Die Agentur hat während der Tage verhältnismäßig wenig Stress gemacht, sondern die cleverst mögliche Reaktion gezeigt: zusehen dass die Kuh vom Eis kommt. Aber das waren für mich die bittersten Stunden die ich seit langer, langer Zeit erlebt habe. Ich war ein Haufen Elend, physisch und psychisch, im Wissen dass ich, nur ich mir diese Suppe selbst eingebrockt hatte.
Meine Erleichterung dieser Tage hat viel damit zu tun, dass bei dieser Geschichte alle Beteiligten wohl mit einem blauen Auge davon gekommen sind.
[12h32] Zwei Das interessanteste Projekt der letzten Zeit hatte mit einem Neukunden zu tun. Der ist dank einer Empfehlung zu mir gekommen (schöne Grüße ins Karo-Viertel). Im allerweitesten Sinne eine Intranet-Applikation die von mir HTML- und CSS-seitig aufgebrezelt werden sollte und mit PHP um zusätzliche Funktionen ergänzt werden sollte.
Was soll ich sagen: ein Bilderbuch-Projekt. Man setzt sich mit dem Kunden zusammen. Der Kunde hat seine eigenen Vorstellungen und diese auf vier Seiten skizziert. Der Kunde ist aber heiß auf Input. Einiges wird angenommen, anderes wird abgelehnt. Es ist ein Geben und Nehmen und ich habe das Gefühl nicht gegen eine Wand zu reden. So soll es sein: der Kunde mit der Expertise auf seinem Gebiet und ich mit meinem Know-How backen etwas zusammen. Das sind die Momente wo ich weiß warum ich Freiberufler geworden bin.
In dieser Zeit hatte ich lange, lange Arbeitstage und ich vereinfachte mir das Leben, in dem ich von zuhause aus, vor laufendem Fernseher mit dem iBook weitergearbeitet habe. In Sachen Konzentration und Arbeitstempo nicht das Optimum, aber die Alternative hieße nach einer Stunde hundemüde ins Bett zu plumpsen, ohne eine Minute Entspannung gehabt zu haben.
Entweder habe ich Sport bis zum Abwinken geguckt, oder auf PREMIERE irgendwelche Filme. Und irgendwie steht jedes der Projekte der letzten Zeit im Zeichen eines Films.
In diesem Falle war es „Gangs of New York“, das lange Epos von Martin Scorcese, bei dem man schön viel wegarbeiten kann. Trotzdem ein einer mäßiger Film. Man kann sich immerhin an den Kullissen ergötzen, die ein originelles Thema zeigen: das New York Mitte des 19ten Jh.. Darüberhinaus verbrät der Film schon tausendmal gesehene Versatzstücke aus Mafiafilmen und kann keinen über den ganzen Film währenden Spannungsbogen aufbauen wie z.B. „Es war einmal in Amerika“. Und weil der Film so enttäuscht, schwingt etwas depressives mit.
[11h36] Die letzten zwei Wochen waren nur noch feist. Deadlines die sich veränderten, Neukunden die man nicht auf die lange Bank schieben wollte, neue Aufträge die an fixen Erscheinungsterminen gekoppelt waren.
Zum Glück bekam ich bald mein neues iBook und nachdem ich mehrere Tage lang neben der normalen Arbeit das iBook sukzessive mit Software ausrüstete und konfigurierte, konnte ich zur meiner eigenen Entlastung abends zumindest von zu Hause aus weiterarbeiten.
Eins Intranet-Flash-Applikation für einen Consulting-Dienstleister. Ich bin nur Teil eines Drei-Frau/Mann-Teams, bin Bindeglied zwischen Frontend und Backend. Ein „spleeniger“ Auftraggeber. Das Konzept steht nur im groben Rahmen, alles andere wird per „trial'n'error“ oder nach dem „Frühstücksbuffet“-Prinzip („ich nehme das, das und das und noch einen Happen hier von“) weiterentwickelt.
So sehr es von Vorteil sein kann, wenn eine Anwendung mit den Bedürfnissen wächst, aber wenn zum dritten Mal das Datenmodell umgestrickt wird, u.a. weil Prämissen der letzten Meetings umgeschmissen werden, geht man aus der Altbauvilla raus, steigt stumm in die U-Bahn und schlägt 15 Minuten später dreimal den Kopf gegen den Bürotisch und strickt weiter. Schließlich bin ich Dienstleister. Und nach sieben Jahren merkt man, wann Beratung und Input der Sache dienlich sind und wann es für alle Beteiligten einfacher ist, dass man nur umsetzt.
Ich habe das Flash-Zeug explizit als OOP geschrieben. Außer dem Inkludieren von externen AS-Scripts und „stop();
“ steht in Flash nix mehr. Aber dieses permanente Herumstricken und Nacharbeiten am Code tut diesem nicht gut.
Übers Wochenende wollte ich als „Fingerübung“ einen kompletten Rewrite in ActionScript2 machen. Aber dazu wird die Zeit nicht reichen, da AS2 für mich Neuland ist. Also werde ich die neuen Features in die alte Anwendung anflanschen und den Rewrite später im Dezember machen.
[11h13] Im Grunde genommen war ich seit dem Sommer ein gehetzter Mann. Erst musste ich
das Buch gestalten/produzieren, Dafür wurde wochenlang alles andere liegen und stehen gelassen. Nach Abgabe des Layouts musste ich dann wochenlang das Abarbeiten, was sich bis dato auf meinem Schreibtisch angesammelt hat. Immer wenn ich einen Stoß abgearbeitet hatte, kam völlig unvermutet ein neuer Auftrag rein.
Nicht das ich mich über Neuaufträge beschweren würde, aber es ging de-facto auf meine Kräfte. Ich musste haushalten und zeitweise einige andere Aktivitäten schleifen lassen oder ganz einstellen.
Nach der Blogs!-Lesung habe ich mich ziemlich weit aus dem ganzen Blog-Gedöns zurückgezogen. Keine wirklich bewusste Entscheidung und größtenteils durch Zeitmangel bedingt, erschwert durch den Ausfall meines PowerBooks. Ich habe seit der Lesung nicht ein einziges Mal einenRSS-Feedreader angeschmissen und stattdessen wieder händisch in den Bookmarks mir eine gleiche Blogroll von 10 Blogs oder so zusammengestellt. Und wenn ich denn Zeit hat, dann habe ich versucht
allesaussersport so gut wie es ging, am Leben zu erhalten.
Diese Abkehr vom maschinellen Lesen von Blogs via über 100 abonnierten Feeds, war ganz angenehm. Und ich bin erstaunt wie wenig man von der „Blogosphäre“ mitkriegen kann, wenn man sich in Selbstbeschränkung übt. Das Magengeschwür freut sich auch, wenn man all die „negativen“ Blogs auslässt, jene Blogs die man nur liest, um sich an der Charakterlosigkeit des Schreibers zu erfreuen/zu reiben.
Immer wenn ich dachte, okay, das ist jetzt das letzte Wochenende an dem ich durcharbeiten muss, landete das nächste Ding auf dem Tisch. Und plötzlich war es Dezember.
Die letzten zwei Wochen waren nochmal eine sehr feiste Stressspitze, aber nun scheint das ganze langsam gen Weihnachten auszulaufen.