yellowled.de

Dieser Artikel ist archiviert. Er wurde am in YellowLeds Weblog v2 veröffentlicht. Der Inhalt ist inzwischen wahrscheinlich veraltet. Kommentare und Trackbacks wurden entfernt. – Zur Archivübersicht

Wie ich JavaScript lern(t)e

Als ich vor knapp 1 3/4 Jahren anfing, angestellt zu arbeiten, war Teil meines Arbeitsvertrages eine Abmachung, einen Teil meiner Arbeitszeit fortlaufend in eine Fortbildung mit Schwerpunkt JavaScript investieren zu dürfen. Ich dachte, es sei vielleicht auch für andere mal hilfreich und nützlich, zu dokumentieren, wie und womit das so lief (und läuft, ich bin noch lange nicht durch mit der Fortbildung).

Warum fortbilden, warum JavaScript?

Die Frage „Warum fortbilden?“ ist in dem Job eigentlich überflüssig. Frontend entwickelt sich ständig weiter, es gibt quasi immer etwas Neues zu lernen oder zu verstehen. Wer nicht gerne Neues lernt, sollte vielleicht generell keine Webentwicklung machen. In meinem Fall kamen zwei Faktoren dazu:

  1. Es war klar abzusehen, dass das einst als „böse“ verpönte JavaScript zu einer sehr (viel) wichtige(re)n Sprache im Web und im Frontend werden würde.
  2. Ich gehöre zu der Generation autodidaktischer Webentwickler, die JavaScript nie „richtig“ gelernt haben, sondern letztlich nur wussten, wie man gute jQuery-Plugins findet und benutzt.

(Inzwischen wird JavaScript aus anderen Gründen teilweise wieder als „böse“ angesehen; diese überaus überflüssige Diskussion möchte ich in den Kommentaren bitte nicht führen.)

Was lernst Du da und wie?

Mir ging und geht es eigentlich darum, modernes JavaScript grundlegend und ohne jQuery zu lernen. Natürlich haben die tagtäglichen Aufgaben im Job aber einen Einfluss darauf, womit ich mich da genau befasse, die Fortbildung dient ja auch dazu, mich mehr und besser in laufende Projekte einbinden zu können. Aufgrund eines langen Großprojektes und einer hauseigenen Entwicklung liegt mein Fokus derzeit auf React – ich muss allerdings auch sagen, dass ich React inzwischen mag und gerne damit arbeite, auch wenn das halbe Entwicklerweb es für den Untergang des Abendlandes hält. (Auch das müssen wir meinetwegen nicht diskutieren.)

Am Anfang der Fortbildung hätte ich gesagt, dass ich am besten aus Büchern lerne. Inzwischen verstehe ich den Spruch eines Bekannten viel besser, der mir mal gesagt hat, programmieren lerne man nicht aus Büchern, sondern durch programmieren. (Und damit ist tatsächlich „selbst tippen“ gemeint, wie früher bei den Listings auf dem C64.)

Meine Fortbildungszeit nutze ich komplett in Eigenregie selbst organisiert. Das bedeutet, nur ich bin dafür zuständig, Kurse und Materialien auszuwählen; mein Arbeitgeber legt lediglich Wert darauf, dass ich (zumindest ohne Absprache) jetzt nicht anfange, zum Beispiel C++ zu lernen. Der Fokus liegt auf JavaScript und React im Frontend, mittelfristig wird wahrscheinlich serverseitiges JS mit Node dazu kommen; zudem versuche ich, eher „grundlegend“ zu lernen und darauf zu achten, „modernen“ Code (sprich: ES6 ff.) zu schreiben. ich bevorzuge dabei ganz klar das Selbststudium anhand von Online-Ressourcen gegenüber „klassischer“ Fortbildung.

Kommt hier bald mal eine Liste oder was?

Kurz vorweg: Ich spreche für die im Folgenden genannten Ressourcen keine allgemeingütige Empfehlung aus, dafür ist Lernen viel zu subjektiv. Mehr als „Guckt mal, das hier hat für mich gut funktioniert“ kann ich da gar nicht sagen. Ich weise ausdrücklich darauf hin, dass ich bei keiner Plattform und keinem Anbieter irgendeinen Vorteil davon habe, sie hier zu nennen.

Generell sollte alles, was bookmarkbar war, in meinen Pinboard-Bookmarks mit dem Schlagwort mm-learns zu findensein , allerdings ohne irgendeine Wertung. Eher nutzlose, veraltete Ressourcen habe ich dort größtenteils entfernt, aber dennoch ist die Sammlung dort eher wahllos und wahrscheinlich unvollständig.

Was für mich wirklich gut funktioniert (hat)

Videokurse von Wes Bos

Ich hätte vorher nicht unbedingt angenommen, dass ich aus Videokursen gut lerne, aber zumindest bei diesen ist es so. Der Hinweis, dass das „Kurstempo genau richtig“ sei, stimmt wirklich, zudem sind die praktischen Beispiele nie die gefürchtete ToDo-List-App, die man ansonsten wirklich überall baut und bald nicht mehr sehen kann. Besondere Empfehlung für den großartigen ES6-Kurs.

Videokurse von Treehouse

Mit den Videokursen bei Treehouse habe ich angefangen. Der „Fullstack JavaScript“-Kurs dort bietet zumindest einen ganz guten Überblick über das Feld und hat mir sehr geholfen, überhaupt mal einzuordnen, was es alles gibt und was davon ich (nicht) kann, aber rückblickend bin ich mit frei zugängliche Ressourcen schneller weiter gekommen.

Exercism

Den JS-Kurs von Exercism habe ich erst vor kurzem als Grundlagen-Wiederholung (ich lerne sehr viel besser durch Wiederholung) angefangen, der Tipp kam von einem Kollegen. Das Spannende ist, dass alle Übungen auf Basis von Unit-Tests aufgebaut sind und zusätzlich bestimmte Übungen von Mentoren reviewed werden. Das bremst das Vorankommen mitunter etwas aus, aber der Lerneffekt ist nicht abzustreiten.

Blog von Robin Wieruch

Robins Blogbeiträge sind so umfangreich und praxisorientiert, dass man gar keine Zeit findet, auch mal seine Bücher oder Kurse auszuprobieren. Wahnsinn, wie er z.T. kurz nach Freigabe neuer React-Features wie Context oder Hooks schon praktische Beispiele parat hat. Und dazu dann auch noch Artikel zu weiteren JS-Themen wie Node oder GraphQL.

Blog von Dave Ceddia

Ähnlich wie das Blog von Robin Wieruch, aber mit etwas mehr Fokus auf React und wie man es richtig oder sinnvoll lernt. Auch Daves Buch Pure React ist sehr empfehlenswert, wenn man gern anhand pragmatischer und praktischer Beispiele lernt.

Das sind jetzt aus Platzgründen nur die fünf Ressourcen, von denen ich sagen würde, dass ich sie am meisten und erfolgreichsten genutzt habe. Wie gesagt: Das muss nicht für jede*n genauso gelten, Menschen lernen unterschiedlich. Daneben sollte man noch erwähnen, dass die offizielle Dokumentation von React und das zugehörige Tutorial wirklich gut sind; gleiches gilt bei NextJS, einem React-Framework, das ich sehr mag.