Tjo, ich stamme auch noch aus den 64er-Zeiten (wobei ich allerdings zuallererst auf einem ZX-81 rumgehämmert habe
). Von daher ist es für mich nur "natürlich", daß ich mir vor allem die Sources anderer anschauen - war ja damals mit der 64er oder Happy Computer nichts anderes.
Im Lauf der Jahre habe ich mir dann folgende Vorgehensweise angeeignet:
1. Ein oder zwei Sources der neuen Sprache betrachten
Das ist für mich der Sprung ins kalte Wasser, bei dem auch mal eine halbe Schachtel Zigaretten aufgeht. Denn ich schaue nicht nur 5 Minuten drauf und wende mich schaudernd ab, sondern ich versuche den Code in der mir völlig unverständlichen Sprache einigermaßen zu verstehen. Natürlich erwarte ich nicht, dadurch irgendetwas richtig zu lernen aber ich arbeite über ein bildliches Gedächtnis und wenn ich mal einen Source gesehen habe, ergeben sich mir beim späteren richtigen Lernen schneller die "Aha"-Effekte.
2. Ab in eine Fachbuchhandlung
Dort lunger ich dann schon mal ein paar Stunden herum und schnüffel in jedes Buch rein, von dem ich annehme, daß es irgendetwas mit der neuen Programmiersprache zu tun hat, ob es jetzt Basics sind oder fortgeschrittenere Themen. Über kurz oder lang finde ich dann auch ein oder zwei Bücher, die die von mir gewünschten Informationen enthalten, erschwinglich sind und (was mir am wichtigsten ist) einen Schreibstil haben, mit dem ich gut umgehen kann.
3. Zuhause: Füße hoch, Telefon/Fernseher/Stereo etc. ausmachen, Frau aus dem Haus schicken
Dann geht's an's Lernen der Syntax und Grundlagen. Das Buch wird Stück für Stück durchgearbeitet. Aber nicht einfach nur auf die Schnelle quergelesen, sondern ich versuche das Buch so gut wie nur irgendwie möglich zu verinnerlichen. Das erspart mir später enorm Zeit beim Nachschlagen und so lerne ich die Syntax auch irgendwie besser.
4. Testphase
Ich suche mir irgendein kleines Problem aus. Entweder ein wirklich winziges Problem ("Hello World") oder wenn möglich ein kleines Problem, das ich aber problemlos in einer anderen Sprache lösen könnte. Dadurch kann ich mich gut in die neue Sprache einarbeiten und kann mich voll und ganz auf die Sprachsyntax konzentrieren, da die dem Programm zugrunde liegende Logik entweder pieseleinfach ist oder ich solch ein Programm schon mal entwickelt habe => die Logik ist schon vorhanden.
5. Vertiefen
Ich lasse die kleinen Probleme nach und nach größer werden und lege unterschiedliche Schwerpunkte (Filesystem, Grafik, DB etc.pp.) und bastel diese Sachen immer wieder in der neuen Sprache. Wenn ich beim Basteln irgendwann feststelle, daß mein Source Code-Zeilenzähler in den vierstelligen Bereich kommt, nehme ich für mich einfach an, daß ich langsam mit dem Programmieren anfangen kann.
6. Arbeiten und weitergehende Literatur
Wenn die neue Sprache für mich von der Syntax und Anwendung her kein Forschungsgebiet sondern wirklich ein Werkzeug ist, geht es dann endlich richtig los. Zusatzliteratur wird geholt, spezielle Probleme angegangen etc.pp. Zu diesem Zeitpunkt bin ich für mich dann der Meinung, daß ich mit der neuen Sprache "umgehen" kann. Bis ich nach meinen Maßstäben in dieser Sprache "gut" bin vergehen meist mehrere Monate oder auch ein paar Jahre.
In dem Zusammenhang liebe ich z.B. den sprachunabhängigen Sedgewick, der sich wirklich mit Programmierung und nicht Programmiersprachen beschäftigt.
Ich muß aber auch anmerken, daß dies
meine Art ist, eine Sprache zu lernen. Meine Kollegen früher hatten zum Teil gänzlich unterschiedliche Methoden.