29 Juli 2007

CVS - update

...heute steht eine weitere kleine Sitzung an unserem 'Hello World!!!'-Projekt an. Gleich stolpern wir über die erste Unaufmerksamkeit des vorigen Tages: CVS meldet ein 'No CVSROOT specified!' zurück, da wir gestern vergessen haben, unsere Umgebungsvariablen in die .profile oder die .bashrc unseres Homeverzeichnisses einzutragen. Da wir keine Lust haben, die Umgebungsvariablen bei jeder Sitzung neu zu setzen, holen wir dies schnell nach. Bevor wir uns nun an die Scripte setzen, gleichen wir unsere lokale Arbeitskopie mit dem Repository ab. Da wir ein wenig ungeduldig sind, lassen wir uns nicht erst mit
cvs -n -q update
die Dateien anzeigen, die aktualisiert werden müssen sondern führen mit
ich@client:~/Webseite$ cvs update
die Aktualisierung unserer lokalen Arbeiskopie direkt aus. CVS antwortet mit
cvs update: Updating .
P index.php

cvs update: Updating classes

P classes/HelloWorld.class.php
U classes/Html.class.php
und zeigt uns, daß unsere Scripte von gestern leicht abgeändert wurden (P = Patch) und, daß die Datei classes/Html.class.php in unserer Arbeitskopie komplett aktualisiert wurde (U = Update) - in diesem Fall ist die Datei unserem lokalen Verzeichnis hinzugefügt worden, da sie vorher nicht existierte. (Da hat also jemand an unseren Scripten weitergeschrieben.) Eine Beschreibung von update und dessen output findet man hier.
Ein cvs rlog Webseite zeigt uns dann noch an, welche Änderungen unsere Scripte erfahren haben und, was es mit der neuen Klasse Html auf sich hat. Nun können wir uns erstmal wieder unseren Scripten widmen und uns evtl. darüber aufregen, welchen Nonsense der andere Programmierer da fabriziert hat.

Labels: , , ,

28 Juli 2007

CVS - checkout und commit

...inzwischen langweilt uns das Script unsäglich und verlangt nach einer Änderung. Hinter dem 'Hello World' sollen mindestens ein paar Ausrufezeichen erscheinen. Wir löschen also die blöden Scripte auf dem Client oder schieben sie mit einem
ich@client:~$ mv Webseite Webseite.orig
aus dem Weg, da wir sie uns anschließend mit einem
ich@client:~$ cvs checkout Webseite
aus dem Repository holen wollen. CVS meldet
cvs checkout: Updating Webseite
U Webseite/index.php
cvs checkout: Updating Webseite/classes
U Webseite/classes/HelloWorld.class.php
und wir haben nun im Verzeichnis 'Webseite' die zu bearbeitenden Scripte. Am langweiligsten wäre es, in der Methode printOut das echo zu ändern. In meiner Überarbeitung der Scripte kommt mindestens eine Klassenvariable (und natürlich eine Methode, diese zu setzen) vor - aber das sei jedem selbst überlassen. Meine Änderungen betreffen sowohl die index.php als auch die HelloWorld.class.php und führen zu folgendem Ergebnis:
ich@client:~$ php index.php
> Hello World!!!
Da die Scripte wie gewünscht funktionieren, stellt man sie mit
cvs commit -m "mit Ausrufezeichen" Webseite
zurück ins Repository. Das commit umfasst hier das gesamte Modul, da ich ja beide Scripte geändet habe. CVS antwortet mit einem braven
cvs commit: Examining Webseite
cvs commit: Examining Webseite/classes
/home/ich/CVS/Webseite/index.php,v <-- Webseite/index.php
new revision: 1.2; previous revision: 1.1
/home/ich/CVS/Webseite/classes/HelloWorld.class.php,v <-- Webseite/classes/HelloWorld.class.php
new revision: 1.2; previous revision: 1.1
und hat die Revision von 1.1 auf 1.2 geändert. Ein
ich@client:~$ cvs rlog Webseite
zeigt diesmal an, welche Zeilen der Dateien geändert wurde, wer es war und wann.

Labels: , ,

CVS - ein erstes import

...wo war ich? Richtig, ich wollte ein tolles Script schreiben und das dann ins Repository übertragen. Lokal habe ich mir als ein Verzeichnis 'Webseite' angelegt, darin ein Verzeichnis 'classes'. In 'Webseite' habe ich folgendes Script index.php erstellt
<?php
include ('./classes/HelloWorld.class.php');
$helloworld = new HelloWorld;
$helloworld->printOut();
?>
und in 'classes' eine HelloWorld-Klasse (HelloWorld.class.php)
<?php
class HelloWorld {
function HelloWorld() {
}
function printOut() {
echo "Hello World\n";
}
}
?>
Ein Aufruf von
ich@client:~/Webseite$ php index.php
liefert mir das gewünschte
> Hello World
Das Script funktioniert - hooray! Von der Hoffnung beseelt, daß dieses Script einmal etwas ganz großartiges wird, wenn es denn erst im Repository steht, führen wir das erste import aus
ich@client:~/Webseite$ cvs import -m "Wenn ich groß bin werde ich eine Webseite" Webseite PearlsForSwine-Software start
Dem import geben wir per -m einen Eintrag für's Log mit. Die letzten drei Parameter sind für den Namen des Moduls (hier: Webseite), für den Hersteller und für die Version (hier: start). CVS antwortet mit einem
I Webseite/CVS
I Webseite/classes/CVS
N Webseite/index.php
cvs import: Importing /home/ich/CVS/Webseite/classes
N Webseite/classes/HelloWorld.class.php
No conflicts created by this import
Na, das sieht doch gut aus. Wir haben nun im Repository ein Modulverzeichnis 'Webseite' angelegt und unsere Scripte übertragen. Jetzt schauen wir uns noch mit
ich@client:~/Webseite$ cvs rlog Webseite
das Log für unser Modul 'Webseite' an. Head 1.1, Revision 1.1, unser Kommentar ist auch drin - sieht gut aus.

Labels: , ,

CVS - erste schüchterne Annäherungsversuche

..."CVS? - Nutzt das noch wer?". Egal. Man soll ja alles mal ausprobiert haben. "Man lesen!" Richtig, sollte man. Aber heute ist Samstag und ein wenig 'Rumprobieren' macht ja auch manchmal Spaß. Das Folgende ist also ohne Gewähr zu genießen und ich bitte dann um konstruktive Kommentare wie "rtfm kaqnup!!elf!". Los geht's:
Wir haben einen Server und einen Client. Auf dem Client schreiben wir ein lustiges Testscript in PHP das dann in ein CVS-Repository auf dem Server - hier läuft ein Webserver etc. - übertragen werden soll.
Zuerst verbinden wir uns mit ssh auf den Server und erstellen dort in unserem Homeverzeichnis ein Verzeichnis CVS für das Repository
ich@server:~$ mkdir CVS
setzen die Umgebungsvariable CVSROOT auf dieses Verzeichnis
ich@server:~$ CVSROOT=/home/ich/CVS
ich@server:~$ export CVSROOT
wechseln in das Verzeichnis CVS
ich@server:~$ cd CVS
und erstellen dort das Repository
ich@server:~/CVS$ cvs init
Ein ls zeigt uns hier das neu angelegte Verzeichnis CVSROOT, das Repository ist also angelegt.
Vom Client aus möchten wir per Remote-Shell (per ssh) zugreifen, weshalb wir dort die Umgebungsvariable CVSROOT wie folgt setzen
ich@client:~$ CVSROOT=:ext:ich@server:/home/ich/CVS
ich@client:~$ export CVSROOT
Wir verbinden via ssh, setzen also noch die Umgebungsvariable CVS_RSH
ich@client:~$ CVS_RSH=ssh
ich@client:~$ CVS_RSH
Mit export bzw. echo können wir uns dann ansehen, ob wir uns auch nicht vertippt haben
ich@client:~$ echo $CVSROOT
> :ext:ich@server:/home/ich/CVS
Fein. Nun testen wir mal, ob wir per ssh an unseren CVS-Server kommen:
ich@client:~$ cvs version
> Client: Concurrent Versions System (CVS) 1.12.13 (client/server)
dann kommt der Prompt für das ssh-Passwort und dann
> Server: Concurrent Versions System (CVS) 1.12.9 (client/server)
Oha! Zwei unterschiedliche Versionen auf Client und Server. Jetzt brauchen wir nur noch ein paar ganz grandiose Dateien, die es auch wert sind, in das Repository geschrieben zu werden - *grübel*.

Labels: ,

27 Juli 2007

Die Vorgartenpipeline

oder: Man sollte immer genug Kohlenmonoxid im Haus haben, falls Gäste zu Besuch kommen. Ein Trauerspiel in mehreren Akten.
...so könnte ein Theaterstück von mir heißen. Der erste Dialog ist schon fertig:
"Was machen Sie denn da?"

"Graben"
"Wie... was... graben?"
"Graben. Ein Loch."
"In meinem Vorgarten? Warum das denn?"
"Für das Rohr."
"Aber Sie können doch nicht..."
"Doch, ich kann. Das ist rechtens, keine Sorge. Wir verlegen hier die Pipeline."
"Was denn für eine Pipeline?"
"Kohlenstoffmonooxid"
"Aber ist das nicht gefährlich?"
"Jeder Kilometer platzt in 1 Mio. Jahre. Sie dürften also erstmal 15 tausend Jahre Ruhe haben."
"Ach so, na dann. Aber dieses Kohlenmonoxid, das ist aber ungefährlich?"
"Naja, das Zeug ist eigentlich hochentzündlich. Ein kleiner Zündfunke und Kawumm!" (macht eine ausladende Bewegung mit den Armen)
"Und die Feuerwehr hier ist auf sowas vorbereitet? Also wenn da doch mal etwas ausströmt können die überhaupt die Anwohner retten?"
"Naja, wenn Sie mich fragen gäbe es für die Feuerwehr nicht mehr viel zu retten. Das Zeug ist ein Atemgift, bei einem großen Leck wären die Anwohner wahrscheinlich schon erstickt."
"Ja aber warum verbuddeln Sie die Pipeline denn dann in dieser dicht besiedelten Gegend?"
"Das ist zum Wohle der Allgemeinheit."
"Achso. Na dann. Soll ich Ihnen mal einen Kaffee machen?"
"Oh, Kaffee, da fang ich immer an zu zittern - und ich muß ja gleich noch die Rohre verschweißen."
"Also ich koch mir jetzt eh einen..."
"Ach, wissen Sie was? Zur Feier des Tages trink ich mal einen mit, war nämlich spät gestern..."
Die Handlung ist natürlich frei erfunden. Das Ende steht auch noch aus.

Labels: , , ,

23 Juli 2007

Untalkative Bunny

...so eine Blogparade ist ja meist zu einem guten Teil ein fishing for compliments page impressions. Die Parade zum Thema TV-Erinnerungen bei den Milchjunkies ist aber mal eine gute Gelegenheit, auf eine Zeichentrickserie aufmerksam zu machen, die hierzulande leider einen zu geringen Bekanntheitsgrad erreicht hat. Ich erinnere mich also gerne ein paar Jahre zurück an den Hasen von nebenan, seine fiesen Nachbarn und seinen Freund, das Eichhörnchen. Von Graham Falks "Untalkative Bunny" wurde im deutschen TV leider nur die erste Staffel gezeigt, irgendwann 'zwischendurch' bei Super RTL jeweils eine Episode (je ca. 5min). Man musste also - soweit ich mich erinnere - die Sendetermine genau abpassen, wenn man nicht zur üblichen Zuschauerschaft dieses Senders gehörte. (Dies hier ist übrigens die einzige(?) und beste Fanseite zu der Serie.)
Warum ich ausgerechnet eine noch recht junge Serie als eine meiner TV-Erinnerungen beitrage? Meines Erachtens wurden von "
Harrys wundersames Strafgericht" über "die Fraggles" bis "Dr. Snuggles" (etc.) schon etliche Kultserien zusammengetragen und Kricfalusis Ren&Stimpy liefen neulich noch auf Nick.
Ich rühre hier also ungerührt die Werbetrommel für die (Wieder-)Ausstrahlung von "Untalkative Bunny" - und, da der Name Programm ist, hielte sich der Synchronisationsaufwand hierbei auch in Grenzen (wenn denn unbedingt übersetzt werden muß).
(Logo: Milchjunkies)

Labels: , ,

21 Juli 2007

ruiniert!

...eigentlich zeigte meine digitale Fernsehzeitung für Pro7 heute das hier: 14.15 Malcolm mittendrin, 14.45 Malcolm mittendrin, 15.15 Scrubs, 15.40 Scrubs. Alles alte Folgen. Deswegen wollte ich nebenbei eigentlich ausprobieren, wie man per commit-hook-script in Subversion Daten aus einem Repository auf ein Testumgebungswebserverzeichnis spielt. Auf Pro7 wird heute jedoch berichtet, daß man an Rennräder Reifen anklebt und diese anschleift. Na prima. Auf ZDF läuft derweil die Schwarzwaldklinik, da die Gebührensender inzwischen aus der Berichterstattung der Tour ausgestiegen sind und somit auch nicht das heutige Asphaltgerutsche rund um Albi zeigen. Irgendwie erinnert mich die Situation an Sommerurlaube, in denen man abgekämpft vom Strand kam, sich eigentlich nur für eine Stunde entspannt vor die Glotze hängen wollte und alles, was man - dank Zimmerantenne und nur zwei Programmen - zu sehen bekam, waren die rot angelaufenen Gesichter sabbernder Pedaltreter.
Jetzt ist mit die Lust an Subversion und/oder CVS für heute vergangen.
Sinkewitz, Du hast mein Leben zerstört!

Labels:

Spielverderber

...ich bin verdammt müde, jetzt, nachdem ich die ganze Nacht kreischend vor einem Buchladen verbracht habe um mir für 20€ ein Kinderbuch mit häßlichem Cover zu kaufen und es dann sofort zu lesen, da ich ALS ERSTER wissen muß, wie es ENDET und ich die SPANNUNG nicht mehr ERTRAGEN KANN!!1elf!1!*
...nicht wirklich...
Mir reicht die Information der Schnelldurchblätterer der dpa: Der Zauberjunge stirbt nicht - "alles war gut" verkünden dann auch die Spielverdderber bei SpOn.
Verflucht! Und ich hatte mich schon so gefreut - sowohl auf das Ableben der Romanfigur, als auch auf die Reaktion der entrüsteten Eltern und den Film mit dem Qualitätssiegel FSK18.

Aber was sollte eigentlich die ganze Aufregung heute Nacht? Gab es das Buch nicht schon seit Tagen als Bittorrent im Netz? Schon gestern das Ende zu verraten - das wär mutig gewesen, liebe dpa.
(*ja, meine Orthographie wird immer schlimmer)
(Foto: xcxsxvx auf flickr.com unter CC-Lizenz)

Labels: ,

20 Juli 2007

doppelt

...gibt es eigentlich schon eine Liste mit SchauspielerInnen, die zweimal den gleichen Film gedreht haben? Und dann auch noch in der selben Rolle? Wenn nicht, sei sie hiermit eröffnet.

Labels: , ,

Simpsons-Marathon

...ja, mal wieder am Sonntag. Diesmal zum Kinostart des eh schon stark beworbenen Simpsons-Films mit Episoden, die etwas mit Film oder Kino zu tun haben. Pro7 zeigt also keine Nachrichten ;), sondern wieder einen ganzen Nachmittag lang Klamauk.
Hier die Liste der Episoden:
  • 22 Short Films About Springfield - Ein Klassiker
  • Cape Feare - den Film hab' ich noch nicht gesehen
  • A Star is Burns - Filmfestival, klar: 'Weint nicht um mich, ich bin schon längst tot'
  • Trilogy of Error - Lisa rennt
  • When You Dish Upon a Star - Auftritt: Kim Basinger; Spätestens dann kann man die Folge eigentlich vergessen und sich einen Kaffee kochen
  • Bart of Darkness - Das Fenster zum Hof
  • Radioactive Man - 'Auf zum Atem!'
  • Treehouse of Horror V - ' No TV and no beer make Homer go crazy' - Shining
  • Itchy & Scratchy: The Movie
  • Homer the Great - Hm... Der letzte Kaiser
Zwischen den Episoden zeigt Pro7 Shorts aus der Tracey Ullmann Show, bei denen der ein oder andere Zuschauer wohl irritiert die Hände über dem Kopf zusammenschlagen wird.
Und: Ja. Werbung scheint auch bei mir zu wirken. Letztes Jahr habe ich noch behauptet, ich würde warten und mir den Kinofilm irgendwann ansehen, wenn er dann im TV läuft - inzwischen überwiegt die Neugier. Nachher stolpert man im Netz noch ungewollt über lauter Ausschnitte und Zitate, bekommt Gespräche im Bus mit und verdirbt sich so den eventuellen Spaß - ich versuche ja jetzt schon, diversen Trailern und Teasern auszuweichen... Außerdem liegt hier eh noch ein 'Gutschein für einen Softdrink' einer großen Kinokette rum. So, genug Rechtfertigung.

Labels: ,

13 Juli 2007

Triskaidekaphobie

...heute ist mal wieder ein schlechter Tag für den dahergelaufenen Wald- und Wiesentriskaidekaphobiker - um nicht zu sagen der schlechte Tag für Leute, die an einem Freitag den 13. nicht unter einer schwarzen Katze durchlaufen würden.
Ich meine gestern in der FR gelesen zu haben, daß der Ursprung dieses Aberglaubens in einem der '
Bücher Mosis' zu finden ist, die zu Recht nicht in der Bibel auftauchen. In eben diesen Volksaberglaubebüchlein steht nach Wikipedia aber auch drin, daß man sich gegen Syphilis bis zum Hals in Pferdemist eingraben soll. Naja, wem's Spaß macht.
(Hätten sich die vom Pech verfolgten nicht besser eine andere Kombination aus Monats- und Wochentag einfallen lassen können? Vielleicht eine, die nicht mit am häufigsten vorkommt?)
Wenn der Aberglaube in den Schulen Einzug hält und im Biologieunterricht darüber gesprochen wird, wie sich Adam wohl im Kampf gegen die Dinosaurier geschlagen hat, besteht für Schüler mit dem Verweis auf den Kalender aber vielleicht die Chance, an diesem Tag ungestraft im Bett liegen zu bleiben.
(Foto: schockwellenreiter - also Jörg Kantel - auf flickr.com, unter dieser CC-Lizenz)

Labels: , ,

10 Juli 2007

Nieve

...es hat geschneit. Zum ersten Mal seit knapp 90 Jahren. In Buenos Aires.

(Foto von puntoblog auf flickr.com, CC-Lizenz)

Labels: , , ,

Christian Wulff

...hat 1986 Rechtswissenschaften an der Universität Osnabrück studiert und sich vielleicht schon auf sein Examen vorbereitet. Ich habe zwischen dem 26.4. und dem 10.5. eine radioaktive Wolke beobachtet, die über Europa zog, und gehofft, daß sie nicht über meinem Wohnort verweilt. Mein Wortschatz hat sich in jener Zeit insbesondere um einen Begriff erweitert: "Radioaktiver Niederschlag". Und spätestens nach dem Zeichentrickfilm "Wenn der Wind weht" von Raymond Briggs war mir klar, daß es hier um mehr als den Verzicht auf Waldpilze und das Meiden von Sandkästen auf Spielplätzen ging. Ich werde wohl zu Lebzeiten nicht mehr zum glühenden Verehrer der Atomenergie (auch nicht wegen des vorgeschobenen Arguments der Verringerung von CO2-Emissionen - Ahoi Polloi bringt es mal wieder auf den Punkt) und wenn in Deutschland ein Atomkraftwerk brennt, werde ich schnell hellhörig.
Zur Erinnerung an 1986, den RBMK und die Geisterstadt Pripjat verlinke ich hier mal auf die Seite von Elena Filatova.

Labels:

Vereidigung

...nur mal so zur Erinnerung, welchen Eid die Bundesminister und die Bundeskanzlerin nach ihrer Wahl ablegten:
Ich schwöre, dass ich meine Kraft dem Wohle des deutschen Volkes widmen, seinen Nutzen mehren, Schaden von ihm wenden, das Grundgesetz und die Gesetze des Bundes wahren und verteidigen, meine Pflichten gewissenhaft erfüllen und Gerechtigkeit gegen jedermann üben werde. [So wahr mir Gott helfe.]
Dem ein oder der anderen scheinen diese Worte irgendwie in Vergessenheit geraten zu sein, da sich momentan ein Tenor des "man kann über alles reden" durchsetzt. Man kann eben nicht "über alles reden" - vielleicht geht das am Stammtisch, aber nicht im Amt bzw. im Dienst. Da bitte ich doch, den Rahmen zu beachten.
So, ich hoffe, ich bin mit dieser Mahnung meiner Pflicht (mich zur freiheitlich demokratischen Grundordung zu bekennen und für deren Erhaltung einzutreten) für heute ausreichend nachgekommen.

Labels: ,

07 Juli 2007

Umbruch

...daß ich das noch erleben darf! Jetzt kommt der Umbruch - und zwar der bedingte. Na dann kann es ja nun endlich aufwärts gehen mit der Präsentation von Texten im Netz. Naja, das ein oder andere kleine Problemchen gibt es da zwar noch, aber wenn diese Unstimmigkeiten auch noch jeweils binnen acht Jahren beseitigt werden, kann die rasante Entwicklung des Web++ weitergehen. Ich bin schon ganz aufgeregt gespannt, welche Innovationen da noch alle folgen werden.

Labels: , ,

03 Juli 2007

Ein kurzer

...Stromausfall ist und bleibt ein Stromausfall. Der kann so kurz sein, wie er will, spätestens seit dem Informatikkurs in der Mittelstufe weiß man: Stromausfall bedeutet für einen Rechner, daß der Arbeitsspeicher nachher leergeputzt daherkommt. Na, wenn da mal nicht ein Blitz in ein Umspannwerk eingeschlagen ist - Gewitter mal wieder. Zerrissen hat es hier nichts, das Betriebssystem reagierte mit einem gepflegten 'was war das denn? Erstmal die Platten prüfen', das wars dann aber auch schon. Sowas nervt beim Arbeiten dann aber doch, ich brauch' eine USV oder ein Laptop. Oder erstmal Schlaf.

Labels: , ,

02 Juli 2007

Wenn man

...sich einen feineren Stift holen muß, damit auch alle Termine in den Terminkalender passen, hat man meines Erachtens nicht einen zu kleinen Terminkalender, sondern einfach zu viel zu tun. Gut, wenn man trotzdem noch Zeit findet, alberne Fragebögen auszufüllen: Immerhin weiß ich jetzt, daß ich nur '48% addicted to blogging' aber '81% addicted to coffee' bin*. Na dann leg ich doch mal den Bloggriffel beiseite und brüh mir noch ne Kanne zur Nachtschicht...
(*via Ghettoblog)

Labels: