Mailinglisten-Archive |
Hallo !
Im folgenden ein persoenlicher, subjektiver, von zu vielen
Mails und zu wenig Schlaf gefaerbter und vielleicht auch nicht
ganz kritikloser Kommentar zu eben jenem immer wieder beliebten
Thema. ;-)
Ich kenne nun einige der Buecher, die es zum Thema PHP
in deutscher oder englischer Sprache gibt. Koreanisch & Co
beherrsche ich leider nicht.
Kein Buch erfuellt meine Vorstellungen von einem wirklich
empfehlenswerten Buch fuer Einsteiger. Es gibt natuerlich
einige verschiedene Ansaetze - ob der eine besser als der
andere ist, vermag ich nicht zu beurteilen.
Wie Alexander schrieb, ist seine Methode Learning-by-doing,
das Lesen und Verstehen von guten Programmen, gepaart mit
vielen Blicken ins Manual. Nun, schlecht gefahren ist er damit
nicht, er hat sich den Stoff in sehr kurzer Zeit hervorragend
beibringen koennen. Das koennt Ihr mir getrost glauben - ich
habe Alexander in eben jener Zeit in und mit PHP aufwachsen
sehen. :)
Eine andere Methode mag die von Hans Theo geschilderte sein.
Viel lesen, auch am Baggersee Funktionen auswendig lernen, um
den Stoff irgendwann im Kopf zu haben. Das mag ebenfalls
funktionieren, meine bevorzugte Methode ist dies jedoch nicht,
vor allem weil ich am Bagger- oder sonstigen Seen auch noch
anderes als PHP im Kopf habe. ;)
Was moechte der Einsteiger? Dies laesst sich wohl kaum pauschal
und allgemeingueltig beantworten, also fange ich mal bei mir an.
Ich kann mich, obzwar es mittlerweile mehr als 10 Jahre her ist,
gut an die Zeit erinnern, als ich von Basic und 6502-Assembler
"versaut" war, nun einen PC hatte und mich einer "richtigen"
Programmiersprache widmen wollte. Damals war Turbo-Pascal verdammt
gut und wurde nebenbei auch in der Schule benoetigt. (C war
zwar irgendwie noch netter, aber das erkannte ich erst spaeter
in einer freiwilligen Arbeitsgemeinschaft, genannt C-AG.)
Also Turbo-Pascal. Ein Einsteigerbuch musste her. Meine Wahl
fiel - mehr oder minder zufaellig - auf ein Buch von Data Becker,
ich glaube sogar es nannte sich Turbo-Pascal fuer Einsteiger
oder so aehnlich. Auf jeden Fall war es das Werk, mit dem
ich diese Sprache wirklich gelernt habe. Und zwar in sehr kurzer
Zeit und in dem Masse, dass ich nach diesem Buch mit einer
Schnellreferenz von Markt&Technik gluecklich wurde.
Warum hatte ich das Data-Becker-Buch gewaehlt? Nun, es hatte
fuer mich eine auf den ersten Blick sehr wichtige Eigenschaft:
Es schreckte nicht ab! Es war handlich, klein, umfasste vielleicht
250 bis 300 Seiten, billig (fuer einen Schueler nicht ganz
irrelevant!) und es begann quasi bei Null. Aufgebaut war es
im Stil eines Tutorials, es ging kleinschrittig vor, erklaerte
auch nicht gleich den vollstaendigen Sprach- oder Funktionsumfang,
sondern liess Platz fuers Experimentieren, fuers Ausprobieren
und fuer das Anwenden des Gelernten.
Nach der Lektuere dieses Buches konnte ich in Turbo-Pascal
programmieren. Sicherlich kannte ich nicht saemtliche Tricks und
Kniffe, auch wurde bei weitem nicht der gesamte Funktionsumfang
geschildert, aber es reichte aus, um anschliessend kleinere
und mittlere Programme zu schreiben und es bildete die Basis,
um danach selbstaendig seine Kenntnisse zu erweitern.
Mein Anspruch hiess, schnell zu einem gewissen Ziel zu gelangen
und mit der Sprache umgehen zu lernen. Dabei durfte weder der
Spass noch die Motivation abhanden kommen. Ach ja, und
schneller als der Lehrer sein wollte ich ebenfalls... ;)
Als jemand, der eine neue Sprache lernen, vielleicht aber
auch nur hineinschnuppern will, um zu testen, ob sie einem
gefaellt, schrecken mich 1000-, aber auch 700- oder 800-Seiten-
Werke erstmal gehoerig ab. Habe ich damals waehrend der
ersten Schritte eine Funktionsreferenz benoetigt?
Sicherlich nicht, denn dies haette eher verwirrt als geholfen.
Habe ich erstmal 100 Seiten lesen muessen, um zur Ausgabe von
"Hallo, Welt!" zu gelangen? Nein, warum auch, schliesslich wollte
ich Programmieren in einer speziellen Sprache lernen und keinen
Almanach durcharbeiten.
Anschliessend wurden Konzepte und Grundlagen eroertert, alle
klein und anhand von Beispielen, aber mit Mut zur Luecke. Denn
was nuetzt es, wenn man zwar die dreissig Arten Schleifen theoretisch
kennt, aber noch keine angewendet hat und deren praktischen Sinn
nicht versteht? Oder wenn einem zwanzig verschiedene Datentypen
um die Ohren fliegen, von denen vielleicht drei in der taeglichen
Anwendung relevant sind?
Selbstverstaendlich sollten die wenigen, aber vorhandenen
Informationen korrekt sein, damit der Einsteiger nicht durch
Fehler auf den falschen Pfad geleitet wird und hinterher gar
nichts mehr versteht.
Aber auch eine mehr oder minder komplette Sprachbeschreibung
passt meiner Ansicht in ein Einsteigerbuch nicht hinein.
Allenfalls sollte diese in einem Anhang plaziert werden, sofern
dieser damit das Buch nicht aufblaeht.
Vielmehr moechte man doch Erfolgserlebnisse haben, und seien diese
noch so klein oder trivial. Irgendwann werden die Programme / Skripte
groesser, das geschieht ganz automatisch, wenn man die Sprache
intus hat und wirklich anwendet.
Und noch spaeter reicht einem allein die Sprach- sowie
Funktionsreferenz,
da man die zugrunde liegenden Konzepte verstanden hat. Damit kann
jeder geuebte Programmierer eine neue Sprache innerhalb von wenigen
Tagen erlernen. Nein, der Anspruch stammt nicht von mir,
sondern vielmehr von einem Informatik-Prof aus Aachen, dessen
Veranstaltung ich mal geniessen durfte.
Um es mal positiv zu formulieren: Was wuerde ich mir von einem
Einsteigerbuch zum Thema PHP erwarten?
- Ich moechte es an einem oder zwei Wochenenden durchlesen
koennen. Es muss eben klein genug sein, um nicht abzuschrecken.
- Es soll mich schnell zum Ziel fuehren. Das heisst, es darf
nicht bei Adam und Eva anfangen oder erklaeren, was das
Internet ist. Es muss auch nicht zwangslaeufig detailliert
auf die Installation eingehen. Einerseits gibt es viele und
dazu noch gute Anleitungen dafuer im Netz, andererseits
gibt es auch sowas wie Bekannte oder Freunde, die einem
dabei besser helfen koennen als jedwelcher Text.
- Es muss die benoetigten Vorkenntnisse klar herausstellen.
PHP lernen, ohne HTML zu kennen? Unmoeglich. Oder zumindest
extrem ineffizient.
- Es muesste kleinschrittig vorgehen, neue Kommandos und
Funktionen an Beispielen erlaeutern. Dabei sollten weder
saemtliche Befehle noch Funktionen vorkommen, sondern nur
die wichtigsten, die man in jener Phase eben benoetigt.
Dafuer sollten die Erklaerungen so detailliert sein, dass
auch wirklich keine Frage offenbleibt und man infolge dessen
guten Gewissens zum naechsten Kapitel gehen kann. Als stoerend
wurde ich es z.B. empfinden, wenn der Autor bei der Erklaerung
auf spaetere Kapitel verweist oder wenn nicht ausreichend dazu
geschrieben wird, so dass der Leser zwangslaeufig denken muss,
dass er ein Thema nicht komplett verstanden hat.
- Es soll Konzepte und spezielle Eigenschaften der Programmierung
von Web-Applikationen vermitteln. Ok, klingt ein bisschen
theoretisch, damit meine ich aber letztlich nur, dass eben
auf Formulare, GET und POST, zustandloses HTTP usw. eingegangen
wird. Aber bitte nicht in einer Weise, nur die "Fakten, Fakten,
Fakten" auf den Tisch zu knallen, sondern sanft und anhand
von Beispielen.
- Es sollten viele Beispiele gegebeben werden, doch bitte keines,
was laenger als eine Seite umfasst. Damals, zu Turbo-Pascal-Zeiten
gab es noch keine eingebundenen CDs. Mir ist auch unklar, weshalb
fast jedes Buch heutzutage eine CD mitbringen muss. Was mich
anbetrifft, so halte ich es nicht fuer Zeitverschwendung,
zehn oder 20 Codezeilen abzutippen, schliesslich erfolgt auch
dabei ein gewisser Lernprozess. (Und sei es nur, dass man
lernt, schnell zu tippen, auch das bietet durchaus Vorteile...)
Die Beispiele sollten natuerlich "aus dem Leben gegriffen" sein.
Das x-te Gaestebuch oder Forum? Egal - schliesslich sind dies
genau die Anwendungen, die vermutlich jeder anfangs mal programmiert
hat. (Ausnahmen bestaetigen die Regel, nicht wahr, Alex..? ;-) )
- Moeglicherweise sind auch Aufgaben am Ende eines Kapitels
nicht verkehrt. Was mich anbetrifft, so bin ich diesbezueglich
eher skeptisch, da ich meist waehrend des Lesens bereits eigene
Vorstellungen bzw. Ideen habe, die ich anschliessend umsetzen
moechte. Macht meist mehr Spass als sich mit fremden Aufgabe-
stellungen zu beschaeftigen.
- Zu guter Letzt wuensche ich mir andere Buecher oder generell
Materialen, die da weitermachen, wo das erste Buch aufhoert.
Der Einsteiger sollte am Ende auf jene Moeglichkeiten
verwiesen werden. So waere es z.B. besser, in einem Einsteigerbuch
den Umgang mit dem Original-Manual beigebracht zu bekommen, als
zu versuchen, dieses neu (besser, schneller, breiter, tiefer...)
zu schreiben.
Das perfekte Einsteigerbuch wird es vermutlich nie geben.
Fuer alle, die meine oben nun etwas lang geschilderten Vorstellungen
teilen, wuensche ich mir, dass irgendwann ein PHP-Buch existiert,
was moeglichst viele dieser Ansprueche erfuellt.
Allen, die bis hierhin durchgehalten haben, meine Hochachtung!
Beste Gruesse,
Ralf (privat, weder als Listadmin, noch als Abgesandter des
PHP-Centers oder gar mit irgend welchen kommerziellen
Absichten...)
php::bar PHP Wiki - Listenarchive