Buchtipps


Auf dieser Seite möchte ich einige meiner Lieblings – IT-Bücher vorstellen. Dabei orientiere ich mich daran, was mit für meine Arbeit besonders viele Denkanstöße geliefert hat, oder mir besonders gut zugänglich erscheint.

Leider pflege ich diese Seite lange nicht so gut, wie es der eine oder andere Autor eines Buches, das ich besonders gut fand, verdient hätte. Aber immerhin: wer es hierher geschafft hat, war mir wohl besonders hilfreich😉

Flexible Boxes von Peter Müller


Flexible Boxes von Peter Müller
Das Web ist eine Bauruine. Einst geplant als hübsches Gartenhäuschen, nutzen wir es heute als 24-stöckigen Einkaufstempel mit 12000 Parkplätzen, 8 Kinosälen und 36 Restaurationsbetrieben. Der Polier des ersten Bautrupps hat wohlweislich gleich mal die Pläne beiseite gelegt, denn er wusste, es kommt eh ganz anders, als der Architekt sich das in seinem Büro vorgestellt hat. Was der Polier nicht ahnte, war, welche Ausmaße das ganze annehmen würde. Nachfolgende Generationen von Bauspezialisten haben nach und nach ein paar Stockwerke aufgesetzt, die eine oder andere Wand versetzt oder eingerissen, Balkone und Fluchttreppen angenietet und so manches mehr verschönert.
Die Bauleitung wanderte von einer Hand in die nächste, und kurz bevor alles zusammenzubrechen drohte, wollte keiner Schuld sein, und man nannte das ganze HTML 5.

Das Ergebnis ist oftmals deprimierend: Selten lässt sich etwas einfach so umsetzen, wie man sich das als Entwickler vorstellt. Dieses div soll auf gleicher Höhe mit jenem sein, sie sollen gleich hoch sein, und im zweiten möge bei Überlauf einfach ein Scrollbalken erscheinen, anstatt dass alle beide plötzlich höher werden. Und klappt es dann in Firefox, kommen schon die ersten Tickets von Safari-Usern. Nicht besser sieht es mit JavaScript aus: meist schert irgendein Browser aus, wenn es um die Unterstützung eines bestimmten Events oder einer Eigenschaft geht.

Nicht umsonst haben sich Toolboxen wie jQuery oder Twitter Bootstrap in Windeseile verbreitet. Sie kleistern die schlimmsten Lücken zu und bewerfen die launischsten Browser mit massenhaft Sonder-CSS und JavaScript, um dem Entwickler das Leben ein bisschen zu erleichtern. Leider haben diese Toolboxen auch einen entscheidenden Nachteil: Schnell wird das eigene Projekt zur Stangenware, sieht – abgesehen von den Button-Farben und dem Logo – genauso aus wie alle anderen Nachbarn auf dem VServer nebenan.

Peter Müller gibt dem Entwickler mehr als nur funktionierende Snippets an die Hand, die eben einfach diesen oder jenen Effekt erzeugen. Er erklärt anhand konkreter Beispiele, wie und warum manche Dinge auf manchmal haarsträubend unerwarteten wegen erreichbar sind. Damit liefert er einen Basissatz an Kniffen und Techniken, die man selbst erweitern und an die eigenen Wünsche anpassen kann. Codebeispiele im Buch sind einerseits ausführlich genug, um zu sie zu verstehen, und dennoch schafft Peter Müller es, nicht mit seitenlangen CSS-Schnipseln wertvolle Buchseiten zu füllen. Die Beispiele animieren zum Ausprobieren und Erweitern.

Ergänzt wird das ganze durch viele Links auf interessante, tiefergehende Ressourcen im Web: Artikel derer, die einen bestimmten CSS-Trick eingeführt haben, Diskussionsbeiträge und Gegenentwürfe, die die Schwächen der Ursprungsidee erweitern oder widerlegen und bessere Vorschläge machen.

Mit Peter Müllers Hilfe kann man sich nicht nur Code-Snippets unreflektiert zusammenkopieren, wie das in der Web-Entwicklung leider ziemlich verbreitet ist, sondern sich eingehend mit den Hintergründen befassen, und dadurch eigene Konzepte und Ideen umsetzen lernen.

Flexible Boxes ist derzeit fester Bestandteil meiner Schreibtischkruste, liegt dabei aber fast immer obenauf. Das wird sicher noch eine ganze Weile so bleiben, denn das Buch ist nicht nur ein Einführungs- sondern auch ein Nachschlagewerk, das immer wieder zur Kurzlektüre einlädt und wertvolle Tipps und Ausgangspunkte für tiefergehende Recherchen bietet. Auch hier wieder: 5 Sterne, und auch da bin ich mit den Bewertungen bei Amazon ziemlich einig.

(Bestellen bei Amazon)

Working Effectively with Legacy Code von Michael Feathers

Cover: Working Effectively with Legacy CodeWer muss sich nicht immer wieder mal mit bestehendem Code herumschlagen, der schwer zu verstehen, ineffektiv oder schlichtweg falsch ist? Dabei kann es durchaus der eigene Code sein, den man da erweitern oder verbessern muss…
Dieses Buch gibt wertvolle Hinweise dazu, wie man mit seitenlangen Monstermethoden umgeht, um sie testbar zu machen und sie in kleinere, beherrschbare Happen zu zerlegen und dann zu erweitern und für Konzepte wie Vererbung/Polymorphie etc. zugänglich zu machen.
Wer sich bisher immer gefragt hat, was das ganze Refaktorisieren und Unit-Testen eigentlich soll, oder wer dachte, bei Altcode hätte es sowieso keinen Wert, überhaupt erst mit Unit tests anzufangen, sollte sich dieses Buch zu Gemüte führen.
Es lohnt sich allemal.
Von mir gibt’s fünf Sterne, von der Amazon-Leserschaft fast genauso viele…
(Bestellen bei Amazon)

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s