Books

Java von Kopf bis Fuß

In der O’Reilly-Serie “Von Kopf bis Fuß” werden unzählige Illustrationen, Rätsel und Krimis eingesetzt oder etwa auf dumme Fragen geantwortet. Auf vergnügliche und einfache Art wird dadurch ein Lerneffekt erzielt. So wird es möglich, beispielsweise in den öffentlichen Verkehrsmitteln oder schnell vor dem Einschlafen eine eigentlich schwer erlernbare objektorientierte Programmiersprache zu lernen.

Das Buch führt die LeserInnen auf eine fantastische Reise durch Java, die folgende Stationen hat: Theorie über Objekte, Methoden, Speicherverwaltung, GUI-Programmierung mit Swing, Garbage Collection, Serialisierung, Ausnahmebehandlung und so weiter … Dabei wird unter anderem an einem eigenen Midi-Player gebastelt, der in jedem Kapitel erweitert wird. Die AutorInnen Kathy Sierra und Bert Bates haben den Stil bewusst locker gehalten und viele anregende Lernhilfen eingebaut. Spielend geht der/die LeserIn auf diese Weise nicht nur wichtige Schritte hin zur Programmierung mit Java sondern wird auch dabei unterstützt, später das Erlernte immer wieder abrufen zu können. Er/sie lernt so auch wie einE echteR objektorientierteR EntwicklerIn zu denken.

Das Buch behandelt zwar noch Java 5, aber es war kein Problem, die Beispiele aus dem Buch nachzubauen. Als Nachschlagewerk ist es nicht zu nutzen und es enthält keine Referenz – doch dafür ist es auch nicht gedacht. Der/die LeserIn sollte vielmehr schon eine Programmiersprache kennen und das Buch von vorne bis hinten durcharbeiten. Aber weil Spaß und Spannung nie verloren gehen, verfliegt die Zeit dabei blitzschnell – bei gutem Lerneffekt. Eine CD zum Buch gibt es nicht, alle Beispiele finden sich aber auf der O’Reilly-Website.

„Java von Kopf bis Fuß“ vermittelt erfolgreich Freude am Lernen und Programmieren. Es ist genau richtig für AnfängerInnen und Neugierige in Sachen Java (wie mich), für alte Hasen ist es wohl weniger geeignet.


Kathy Sierra & Bert Bates
Java von Kopf bis Fuß
O’Reilly Verlag 2008
720 Seiten
EUR 49,90
ISBN: 978-3-89721-448-4

rezensiert von Bernd Essl (Juli 2008)

Kollektive Intelligenz analysieren, programmieren & nutzen

Ziel des Buchs von Toby Segaran ist zu zeigen, wie User Generated Content, also von BenutzerInnen generierte Inhalte, zum Beispiel Blog-Kommentare, Link-Sammlungen, Tags usw. mittels Algorithmen ausgewertet werden können. Dabei kommen vor allem Techniken aus dem Bereich der Mathematik zum Einsatz, wie Euklidischer Abstand, Gini-Index, Entropie, Skalarpunkte und Bayes-Klassifizierer.
In elf Kapiteln ist zu lernen, was kollektive Intelligenz ist, wie Produkt-Empfehlungen zustande kommen, Gruppen gebildet und Suchmaschinen gebaut werden, wie Optimierung funktioniert, Dokumente nach Inhalt gefiltert, Entscheidungsbäume eingesetzt, Preismodelle aufgebaut werden und wie künstliche Intelligenz entwickelt wird. Dabei sind alle Kapitel gleich aufgebaut: Zuerst gibt es eine theoretische Einführung, gefolgt von einen praktischen Code-Beispiel. Abschließend geht es um eine reale Anwendung, wie etwa einen Parser für del.icio.us oder einen Reisekostenrechner.
Alle Code-Beispiele sind, so gut es geht, einfach gehalten und in der Programmiersprache Python geschrieben. Auf der O’Reilly-Website finden sich alle Beispiele zum Download.
Neben einem Rundblick in der Welt der Statistik und des maschinellen Lernens bietet das Buch eine kurze Einführung in verschiedene Python-Bibliotheken wie Beautifulsoup, Python Image Libary, Feedparser, Matplotlib, Akismet, XML-Parser Minidom sowie PySqlite und demonstriert verschiedene Möglichkeiten zu deren praktischem Einsatz. Das letzte Kapitel enthält eine Zusammenfassung aller beschriebenen Algorithmen, hilfreich beispielsweise, um den passenden für das anstehende Projekt zu finden.
Obwohl das Buch mathematisch anspruchsvoll ist, ist es sehr zu empfehlen, da es eine kreative Mischung theoretischer und praktischer Ansätze enthält, auf die ich wohl so nie gekommen wäre.


Toby Segaran
Kollektive Intelligenz analysieren, programmieren & nutzen
O’Reilly Verlag 2008, 1. Auflage
366 Seiten
EUR 44,90
ISBN: 978-3-89721-780-5
rezensiert von Bernd Essl (Mai 2008)

Sichere Webanwendungen mit PHP

PHP ist bekannt dafür, dass es Programmier-Neulingen den Einstieg leicht macht, was aber oft zu unzureichender Sicherheit von Web-Anwendungen führt. Das Buch “Sichere Webanwendungen mit PHP” zeigt, welche Sicherheitsrisiken es gibt und wie sie vermieden werden können.

Das Buch beginnt mit einem Überblick über Probleme, die mit Variablen, Sessions, Temporären Dateien, Includes, Uploads/Downloads, SQL sowie JavaScript entstehen können. Jedes der Probleme wird später in jeweils einem Kapitel ausführlich behandelt. Ein sehr interessanter Ansatz zur verschlüsselten Übertragung von Daten zwischen Client und Server mit blowfish und JavaScript findet sich in “Hash-Austausch via AJAX”. Ein weiterer Teil erklärt die Konfiguration von PHP und Webserver (Apache), unter Berücksichtigung eventuell sich daraus ergebender Probleme. Ein eigenes Kapitel beschäftigt sich nur mit SSL. Das letzte Kapitel, “Entwicklungs-Guidelines”, enthält Umsetzungs-Beispiele für die vorgestellten Programmier-Richtlinien. Es bietet einen schnellen Überblick und eine gute Vorlage.

Ich möchte “Sichere Webanwendungen mit PHP” all jenen empfehlen, die professionelle und sichere Anwendungen mit PHP schreiben wollen. Die Grundlagen der Sprache PHP werden vorausgesetzt, aber alle Beispiele sind einfach gehalten und konzentrieren sich auf das Wesentliche. Doch auch EntwicklerInnen, die bereits Erfahrung mit Sicherheitskonzepten haben, können bei der Lektüre durchaus noch Neues lernen, selbst wenn sie schon andere Bücher zum Thema Sicherheit von Web-Anwendungen gelesen haben.

Tobias Wassermann
Sichere Webanwendungen mit PHP
mitp Verlag, Heidelberg 2007
464 Seiten
EUR 34,95
ISBN 978-3-8266-1754-6

rezensiert von Bernd Essl (Jänner 2008)

1 Comment so far

  1. Tobias Wassermann on May 27, 2008

    Hi,

    ich wollte eigentlich schon länger einmal Danke für die Rezension meines “Sichere Webanwendungen mit PHP”-Buchs sagen, jetzt schaffe ich es endlich einmal.

    Gruß

    Tobias

Leave a reply