Um herauszufinden, ob dieses Buch für Sie geschrieben ist, nehmen Sie sich ein paar Augenblicke Zeit und lesen Sie sich die unten stehenden Fragen durch. Antworten Sie ehrlich und ohne lange zu überlegen. Wenn Sie eine Antwortmöglichkeit gar nicht verstehen, machen Sie sich keine Gedanken, sondern wählen eine andere.
a) in Notepad.
b) im ßrowser.
c) in irgendwas anderem.
a) poste ich eine Fehlerbeschreibung mit dem Titel »Hilfe!'!« unter exakter Nennung aller verwendeten Hardwarekomponenten in einem passenden Forum.
b) baue ich viele »print«-Zeilen ein, die mir den Inhalt von Variablen ausgeben.
c) debugge ich mit GDB
a) gar nichts. Wenn ich versehentlich was lösche, muss ich es neu schreiben. Deshalb passe ich immer sehr gut auf.
b) SVN.
c) Git oder mercurial.
a) nie, weil ich nicht so viel tippen will.
b) nie, weil ich meinen Code für selbsterklärend halte.
c) nie, weil mein Code selbsterklärend ist.
a) nehme ich mir ein Wochenende Zeit und schreibe einen, wie schwer kann das schon sein.
b) Ich brauche keinen XML-Parser.
c) Ich lese die Wikipedia-Einträge zu SAX- und DOM-Parsern durch, sehe mir verschiedene Bibliotheken und deren Bindings an meine verwendete Programmiersprache an, wäge ihre Vor- und Nachteile ab und finde heraus, ob es eine lebendige Community dazu gibt.
a) schreibe ich schnell zwei Zeilen hin, die ich an meiner eigenen Mailadresse überprüfe.
b) teste ich, ob ein @-Zeichen enthalten ist.
c) google ich nach einer Regular Expression, auf deren Korrektheit sich namhafte Projekte verlassen.
a) Ich halte meinen Code geheimer als ein Messie seine Wohnung.
b) Wenn jemand Code von mir sieht, der schon ein halbes Jahr alt ist, dann ist mir das ein bisschen peinlich.
c) Mein Code ist Teil des Linux-Kernels.
a) gar nicht. Wenn etwas nicht mehr funktioniert, merke ich das schon früher oder später.
b) nach jeder Änderung an meinem Code.
c) gar nicht. Nach jeder Änderung an meinem Code prüfen automatisierte Unit-Tests, ob noch alles funktioniert.
a) Wie schon, »T.M.JJ« natürlich!
b) Die vergangenen Sekunden seit 00:00 Uhr Koordinierter Weltzeit am 1. Januar 1970, wobei Schaltsekunden nicht mitgezählt werden, gespeichert in einem 64-Bit-Integer.
c) ISO 8601.
4 | Kapitel l: Bin ich hier richtig?
a) ist mir egal.
b) betreibe ich so lange, bis das Programm auf meinem 2,4 GHz Core 2 Duo mit 256MB 2nd Level Cache in 43.3485 Taktzyklen durch ist.
c) ist mir so lange egal, wie die User Experience nicht durch Wartezeit beeinträchtigt wird.
a) sind besser als ich.
b) sind schlechter als ich.
c) Mal so, mal so.
a) nie, ich nehme mir aber hin und wieder vor, alles noch mal neu und besser zu schreiben.
b) in einem winzigen Schritt nach dem anderen, wenn ich gerade viel Zeit habe.
c) in einem winzigen Schritt nach dem anderen, auch wenn ich gerade wenig Zeit habe.
Überschlagen Sie jetzt grob, ob Sie mehr als die Hälfte der Fragen mit a) oder b) beantwortet haben. Wenn ja, dann ist dieses Buch für Sie geschrieben. Haben Sie mehr als die Hälfte der Fragen mit c) beantwortet, dann lachen Sie bitte nicht höhnisch, sondern gehen weiter und programmieren Linux-Kerneltreiber. Oder was Sie sonst so tun.
Binich hier richtig? | 5
KAPITEL 2