Heben Sie die Hand, wenn das auf Sie zutrifft
Sie sind seit einigen Jahren in der Tech-Branche tätig, kennen HTML und CSS in- und auswendig und verdienen gutes Geld. Aber da ist eine kleine Stimme im Hinterkopf, die Ihnen immer wieder zuflüstert: „Es ist Zeit für etwas Neues, für den nächsten Schritt in Ihrer Karriere. Sie müssen programmieren lernen.“
Ja, das kenne ich.
Ich habe fast ein Jahrzehnt lang verschiedene Rollen in der Tech-Branche ausgeübt. Ich habe eine Reihe von Artikeln über Design, Coding, HTML und CSS geschrieben. Verdammt, ich habe sogar ein paar Bücher geschrieben und auf Konferenzen auf der ganzen Welt gesprochen. Aber da ist immer noch diese Stimme, die mir sagt, dass ich mich mit dem Programmieren auseinandersetzen muss; dass ich nie erfüllt sein werde, bis ich gelernt habe, meine eigenen Ideen und Projekte von Grund auf zu entwickeln. Als Webentwickler ist die offensichtliche Sprache, die es zu lernen gilt: JavaScript.
Wie viele Leute bin ich jedoch von der aktuellen JavaScript-Landschaft eingeschüchtert. Mit dem ständigen Zustrom neuer Werkzeuge, Techniken und Frameworks ist es schwer herauszufinden, wo und womit man anfangen soll. Dennoch muss ich irgendwo anfangen. Deshalb dachte ich, eine Überprüfung der Lernressourcen und Werkzeuge wäre ein guter erster Schritt.
Die Last der Information
Wie sieht es damit aus, kommt Ihnen das auch bekannt vor?
Sie haben versucht, Programmieren mit verschiedenen Sprachen zu lernen. Sie haben Bücher gelesen, Online-Kurse abonniert und haben eine Menge Ordner, die Dropbox mit halbfertigem Code und kopierten Übungen übersäen.
Ich auch.
Ich habe den Rails Tutorial und Learn Python The Hard Way zur Hälfte durchgearbeitet. Mein Bücherregal ist voll mit massiven Wälzern über alles von ActionScript bis Processing. Aber nichts scheint je zu bleiben.
Ich kann verstehen, was eine PHP-Datei tut und verstehe ein bisschen jQuery, aber wenn Sie mich bitten würden, mich hinzusetzen und das einfachste Programm zu schreiben, würde es mir schwerfallen. Nach so vielen Fehlschlägen glaube ich, das Problem erkannt zu haben.
Immer wenn ich anfange, etwas Neues zu lernen, tauche ich so tief wie möglich in das Thema ein. Ich kaufe Bücher, schaue Videos und höre Podcasts. Das ist dieselbe Taktik, die viele Unternehmen als den besten Weg bewerben, ein neues Thema zu lernen, sei es Programmieren, Kochen oder Mandarin an einem Wochenende. Immersion ist anscheinend ein wichtiger Teil des Lernens.
Aber das Problem ist, dass Menschen (oder zumindest ich) eine Schwelle haben, wie viele Informationen sie verarbeiten können, bevor sie sich überfordert fühlen. Ich nenne es die „Last der Information“. Information ist wunderbar, aber zu viel davon belastet den Geist, lässt Sie ausgebrannt und hoffnungslos zurück, was dazu führt, dass Sie aufgeben und sich wie ein Versager fühlen.
Ich möchte nicht, dass dieser Versuch wie all die anderen wird. Ich weiß, dass ich mich in JavaScript vertiefen muss, aber ich möchte nicht im Treibsand der JS-Welt versinken, um mich dann zu ersticken. Also beschloss ich, die JavaScript-Lernlandschaft zu überprüfen und ein paar Ressourcen auszuwählen – aber nicht zu viele –, die ich verwenden kann, um endlich den Programmierdrang zu stillen.
Ich habe die Ressourcen in vier Kategorien aufgeteilt, basierend auf den verschiedenen Arten, wie ich gerne lerne (und ich vermute, dass andere auch so lernen). Diese Kategorien sind: Lesen, Zuschauen, Zuhören und vor allem Tun.
Hier ist, was ich gefunden habe.

Lesen
Meine Lieblingsart, neue Dinge zu lernen, ist, darüber zu lesen. Während das meistens Bücher bedeutet, fülle ich auch gerne meinen RSS-Feed mit guten Blogs und meinen Posteingang mit tollen Newslettern.
Bücher
Glücklicherweise gibt es eine Menge anerkannter Bücher über JavaScript. Hier sind einige der am meisten empfohlenen:
- Eloquent JavaScript von Marijn Haverbeke
- JavaScript: The Good Parts von Douglas Crockford
- JavaScript: The Definitive Guide von David Flanagan
- You Don’t Know JS von Kyle Simpson
- Secrets of the JavaScript Ninja von John Resig, Bear Bibeault und Josip Maras
- JavaScript and jQuery von Jon Duckett
- Speaking JavaScript von Axel Rauschmayer
- JavaScript for Web Designers von Mat Marquis
Als ich versuchte, Python zu lernen, war meine Lieblingsressource Zed Shaws Learn Python The Hard Way. Es war ein unkomplizierter Ansatz zum Lernen durch tatsächliches Codieren. Obwohl er ein ähnliches Buch über JavaScript in Arbeit hat, ist es noch nicht verfügbar.
Das Nächstbeste, was ich dazu finden konnte, war Eloquent JavaScript von Marijn Haverbeke. Soweit ich weiß, ist es eine wunderbare Einführung in JavaScript und scheint laut Inhaltsverzeichnis einen ähnlichen Ansatz wie Zeds Hard Way-Bücher zu verfolgen: Es beginnt mit den Grundlagen der Sprache und wird mit zunehmend fortgeschrittenen Konzepten und Projekten immer anspruchsvoller.
Alle anderen Bücher auf meiner Liste sehen ausgezeichnet aus, aber die meisten scheinen für mein aktuelles Niveau etwas zu fortgeschritten zu sein. Die beiden Ausnahmen sind Jon Ducketts JavaScript and jQuery und Mat Marquis’ JavaScript for Web Designers. Ich liebte Jons Buch über HTML und CSS, aber ich habe nicht das Gefühl, dass der visuelle Ansatz seiner Bücher bei komplexeren Themen funktioniert (zumindest für mich). Und Mats Buch scheint genau meinen Anwendungsfall zu bedienen, ist aber vielleicht nicht tiefgehend genug für langfristiges Lernen. Da ich aber die meisten anderen A Book Apart-Bücher besitze, werde ich Eloquent JavaScript wahrscheinlich mit JavaScript for Web Designers ergänzen.
Ich bin sicher, es gibt eine Menge anderer fantastischer Bücher über JavaScript, aber diese müssen warten, bis ich mein ausgewähltes Buch beendet habe. Denken Sie daran, ich möchte gute Informationen, aber nicht zu viele davon sofort.
Blogs
Heiliger Bimbam, es gibt eine Menge Blogs über JavaScript. Das macht es tatsächlich schwierig herauszufinden, welche gut sind. Ich bin offen für alle Vorschläge, die Sie vielleicht haben (hinterlassen Sie sie in den Kommentaren!), wen ich folgen sollte, aber mein erster Eindruck ist, dass diese ein guter Anfang sind:
- CSS-Tricks
- Die Entwicklerkategorie von freeCodeCamp
- Der JavaScript-Tag von dev.to
- Die JavaScript-Dokumentation von MDN
Es gibt noch eine ganze Menge mehr, auf die ich gestoßen bin, aber die meisten scheinen zu diesem Zeitpunkt meines Lernprozesses zu komplex zu sein. Oder andere gehören zu Einzelpersonen, die hauptsächlich über ihre eigenen Projekte sprechen und weniger über die Grundlagen oder den Lernprozess. Ich habe sie jedoch alle als Lesezeichen gespeichert, um sie mir anzusehen, sobald ich besser vorankomme.
Newsletter
Ich bin ein unverhohlener Liebhaber von HTML-Newslettern, wie meine früheren Artikel zu diesem Thema belegen. Also habe ich natürlich ein paar gefunden, die ich abonnieren werde:
- JavaScript Weekly
- Versioning von SitePoint
Aber ich habe das Gefühl, dass es noch mehr da draußen gibt, die ich einfach nicht finden konnte. Ich meine, es gibt einen Newsletter für so gut wie jedes Thema. Da JavaScript so beliebt ist, muss es mehr als die beiden oben genannten Newsletter geben. Wenn Sie Tipps haben, schicken Sie sie mir über die Kommentare unten.
Zuschauen
Eine weitere gute Möglichkeit zu lernen ist, anderen zuzusehen, wie sie tun, was man tun möchte. Aber das ist für mich fast immer zweitrangig gegenüber dem Lesen zum Lernen. Doch wenn ich bei einem Thema feststecke oder tiefer in bestimmte Aspekte des Codierens eintauchen möchte, wird das Ansehen von Videos eine gute Möglichkeit sein.
Größtenteils gibt es zwei Kategorien von Videos online: Kurse und eigenständige Videos (meist auf YouTube). Es gibt eine Menge Optionen für beides, aber das sind die besten, soweit ich das beurteilen kann:
- ES6 für alle von Wes Bos
- JavaScript 30 von Wes Bos
- Code School's JavaScript-Pfad
- Einführung in die JavaScript-Programmierung von Kyle Simpson
- Die guten Teile von JavaScript und dem Web von Douglas Crockford
- Debugging und Behebung häufiger JavaScript-Fehler von Todd Gardner
- Datenstrukturen und Algorithmen in JavaScript von Bianca Gandolfo
- The Coding Train von Daniel Shiffman
- Fun Fun Function von Mattias Petter Johansson
- LearnCode.academy
- JSConf YouTube-Kanal
Ich habe erstaunliche Dinge über Wes Bos' Kurse gehört, also werde ich mich irgendwann damit beschäftigen. Dasselbe gilt für The Coding Train und Fun Fun Function. Aber wieder, ich möchte nicht überfordert sein, also plane ich, all das beiseite zu legen, nachdem ich mich durch *Eloquent JavaScript* gearbeitet habe.

Zuhören
Podcasts sind eine ausgezeichnete Möglichkeit, etwas über Konzepte zu lernen und in eine bestimmte Kultur einzutauchen, ohne an einen Bildschirm gebunden zu sein. Im Grunde eine gute Möglichkeit, beim Abwaschen oder Aufräumen nach meinen Kindern weiterzulernen.
Aber, wie bei E-Mail-Newslettern, fand ich es schwierig, gute JavaScript-Podcasts zu finden. Wenn ich mich umschaue, scheint es, dass es eine Menge davon gibt, aber die meisten sind inaktiv und veraltet. Ich habe die folgende Liste erstellt, aber ich hoffe, dass Sie mir ein paar weitere nennen können, die ich meinem Podcast-Feed hinzufügen kann.
Tun
Der letzte und wohl wichtigste Teil des Lernens von JavaScript ist das eigentliche Tun: Code schreiben, ihn zum Laufen bringen und wiederholen.
Wie ich eingangs erwähnte, schreibe ich seit Jahren HTML und CSS (und spiele mit anderen Technologien herum), daher bin ich bei einigen meiner Werkzeuge etwas voreingenommen. Ich arbeite meistens mit Sublime Text auf meinem Mac, daher plane ich, dabei zu bleiben, um Code lokal zu schreiben. Da ich aber in letzter Zeit mehr an meinem iPad Pro arbeite, möchte ich Sublime Text mit einigen zusätzlichen Werkzeugen zum Schreiben und Testen von Code während meines Lernens ergänzen.
Das Wichtigste wird CodePen sein. Ich bin seit einer Weile Pro-Abonnent und finde es enorm nützlich, Code zu schreiben, egal auf welcher Plattform ich mich befinde. Da es im Browser funktioniert, ist es einfach, auf meinem iPad einen Pen zu öffnen, während ich im Café sitze, und eine voll funktionsfähige JS-Entwicklungsumgebung einsatzbereit zu haben. Es bietet auch einige Funktionen, die mir sicher irgendwann nützlich sein werden: private Pens und Sammlungen, wenn ich peinlichen Code geheim halten möchte, Projekte, wenn ich an substanzielleren Dingen arbeiten möchte und sie schmerzfrei gehostet haben möchte, und Kollaborationsmodus, falls ich jemals Freunde bitten muss, mir in Echtzeit bei kniffligem Code zu helfen.

Ich habe mir andere Tools wie JSFiddle und JSBin angesehen, aber ich fühle mich in CodePen wohl und ihre Funktionen sind hervorragend, also bleibe ich dabei.
Ein weiteres Online-Tool, das ich irgendwann nutzen möchte, ist Glitch. Es ist ein relativ neues Tool zum Schreiben und Teilen von Code online und hat eine wunderbar eklektische Community, die sich darum aufgebaut hat. Obwohl ich denke, dass die meiste meiner Codierung in CodePen oder lokal in Sublime Text erfolgen wird, glaube ich, dass Glitch unerlässlich sein wird, wenn es darum geht, komplexere Dinge wie die Interaktion mit APIs, das Erstellen seltsamer Bots und das Testen einiger dieser beängstigenden Frameworks zu lernen.
Mein Lernplan
Unter Berücksichtigung all der oben genannten Ressourcen, hier ist, was ich vorhabe zu tun, um die Grundlagen von JavaScript in den nächsten Monaten zu lernen:
- Arbeit durch Eloquent JavaScript
- Lokal in Sublime Text codieren, aber hauptsächlich online mit CodePen
- Bleiben Sie mit Nachrichten über die gefundenen Blogs, Newsletter und Podcasts auf dem Laufenden
- Nachdem ich mit Eloquent JavaScript fertig bin, werde ich mich mit JavaScript 30 und ES6 for Everyone beschäftigen
- Beginnen Sie mit den Videos und Büchern, die oben aufgeführt sind, nachdem ich mit den Tutorials von Wes Bos fertig bin
- Bauen Sie dabei einige (hoffentlich) coole Sachen
Einer der wichtigsten Aspekte des Lernens ist jedoch, Feedback zu dem zu bekommen, was man tatsächlich tut. Dafür werde ich mich an ein paar Freunde und jeden Leser wenden, der helfen möchte.
Ich habe eine neue Sammlung auf CodePen eingerichtet, um meine JavaScript-Projekte während des Lernprozesses unterzubringen. Ich werde diese Sammlung öffentlich halten, damit jeder sehen kann, was ich tue, Beispiele forken und mich über den besten Weg informieren kann, Dinge zu tun. Wenn das nach Ihrem Geschmack ist, dann folgen Sie mir auf CodePen.
Schließlich, wenn Sie andere Ressourcen oder starke Meinungen zu den von mir oben aufgeführten haben, lassen Sie es mich in den Kommentaren unten wissen. Ich bin sicher, viele von Ihnen haben einen ähnlichen Lernprozess durchlaufen und haben einige erstaunliche Tipps, die Sie teilen können. Ich würde mich freuen, von Ihnen zu hören, also hinterlassen Sie etwas Wissen direkt hier auf CSS-Tricks oder senden Sie mir eine E-Mail.
Interessante Idee hier: aufhören zu lesen und anfangen zu tippen! Prost
Wenn Sie also mit dem Lesen/Lernen der Grundlagen von JS fertig sind, möchten Sie vielleicht einige JS-Frameworks und modernes JavaScript erkunden. Dafür empfehle ich von ganzem Herzen Kurse von Tyler McGinnis.
Was ich wissen möchte, ist, wie Sie mit nur HTML und CSS so erfolgreich wurden!? Ich hatte immer das Gefühl, noch nicht genug zu wissen, um wirklich erfolgreich in der Web-Welt zu sein, aus den gleichen Gründen, die Sie als unerfüllend beschrieben haben. Ich dachte immer: „Wenn ich MySQL, PHP, JavaScript und C++ lerne, DANN werde ich erfolgreich sein.“
Jason – ich bin genau im selben Boot wie du, ich habe die meisten „traditionellen“ Wege zum Erlernen von JS ausprobiert und wie du nichts ist wirklich hängen geblieben. Ich hatte mäßigen Erfolg mit dem JavaScript 30-Kurs von Wes Bos, und obwohl du ihn für deren Blog erwähnt hast, ist „freecodecamp“ tatsächlich eine solide Plattform zum Lernen, ebenso wie ihre Foren. Sie gehen nicht nur theoretische Schnipsel auf ihrer Website durch, sondern verlangen auch, dass du einen Codepen erstellst und dann am Ende jedes Moduls „reale“ Projekte baust, die du dann einreichen musst.
Ah, nett! Ich wusste nicht, dass sie eine Plattform zum Lernen haben, habe nur zufällige Artikel und Zeug online gesehen. Ich werde es mir sicher ansehen. Ich denke, dieser „reale“ Projektansatz wird der Schlüssel für mich sein, um zu lernen. Ich muss Dinge bauen, nicht nur Theorie lernen (obwohl ich mit viel Theorie in Eloquent JavaScript anfange).
Persönlich würde ich, wenn ich von Front-End-Design zu Programmierung wechseln wollte, PHP (oder etwas Ähnliches) lernen. Wenn ich eine komplette Anwendung nur mit PHP erstellen könnte, dann könnte ich das. Eine komplette Anwendung nur mit JavaScript könnte ich jedoch nicht erstellen.
@Gareth. Es ist möglich und durchaus machbar, eine komplette Webanwendung nur mit JavaScript (und HTML/CSS) zu erstellen. Node.js serverseitig und irgendein „Geschmacksmonat“ Frontend-Framework React/Vue/Angular auf der Frontend-Seite.
Sie können heutzutage ganze Anwendungen mit JS erstellen, aber ich verstehe Ihren Punkt vollkommen. Für mich wollte ich mich darauf konzentrieren, mein Verständnis der drei Technologien, die am meisten mit dem Web assoziiert werden, abzurunden: HTML, CSS und JavaScript. Außerdem habe ich einige ziemlich spezifische Ziele für das Erlernen von JS, über die ich vielleicht in einem anderen Artikel sprechen werde.
Wie kommt es, dass Sie keine komplette App mit Javascript erstellen „können“? Mit Javascript können Sie sowohl das Frontend (Vanilla JS, Jquery, Angular) als auch das Backend (Node.js, Express) erstellen und es gibt sogar Möglichkeiten, Ihre App für den Desktop zu verpacken (Electron). Ich versuche nicht, Ihre Aussage zu kritisieren, ich frage ernsthaft, was Ihr Punkt war.
Ich könnte mir nicht vorstellen, eine App komplett mit PHP zu bauen. Die Benutzererfahrung wäre schrecklich mit ständigen Seitenaktualisierungen nach jeder einzelnen Aktion auf der Seite, die überall Formulare erfordert. Außerdem müssen Sie immer noch eine Verbindung zu einer Datenbank herstellen, um Daten jeglicher Art zu verwalten.
Es gibt einen Grund, warum Laravel jetzt VUE out of the box mitliefert. Javascript ist alles andere als perfekt, aber wenn Sie die wichtigsten Frameworks lernen, werden Sie genügend Jobs finden. Hindern Sie sich nicht am Lernen, nur weil Sie nur eine Sprache bevorzugen, sonst werden Sie abgehängt.
Außer mit dem Mean-Stack können Sie eine Webanwendung komplett mit nur JavaScript erstellen
Entschuldigung, ich wollte nicht andeuten, dass ich etwas nur mit PHP bauen würde, nur dass ich es könnte. Währenddessen würde ich wirklich Schwierigkeiten haben, dasselbe mit nur JavaScript zu erreichen, insbesondere ohne eine Art Framework. Mein Punkt war, wenn ich anfangen würde, Programmieren zu lernen, wäre meine Präferenz, eine serverseitige Sprache zu lernen.
Sehr guter Beitrag! Ich liebe die von Ihnen bereitgestellten Ressourcen. Ich habe von einigen von ihnen gehört, von anderen nicht, und einige, in die ich mich wahrscheinlich hineinarbeiten sollte. Danke für das Teilen!
Eine Ressource, die mir wirklich, wirklich geholfen hat, war ein Tutorial auf Udemy.com namens JavaScript: Understanding the Weird Parts von Anthony Alicea. Es ist ein Video-Tutorial und geht ins erstaunliche Detail darüber, wie seltsam JavaScript wirklich ist. Ich glaube, es ist gerade sogar im Angebot! Dieses Video-Tutorial ist mit Eloquent JavaScript sehr vergleichbar, würde ich sagen.
Nochmals vielen Dank fürs Teilen. Es gibt ein Zitat von C.S. Lewis, das ich mag:
„Die einzigen Menschen, die viel erreichen, sind diejenigen, die Wissen so sehr wollen, dass sie es suchen, während die Bedingungen noch ungünstig sind.“
Man muss weiter lernen! Und ähnlich wie Sie bemerkt haben, versuchen Sie, mutig zu sein, obwohl es eine Menge Informationen da draußen gibt.
Ich würde mich als „Beginner-Fortgeschritten“ bei JS bezeichnen und bin absolut in diesem Boot.
Ich möchte Anthony Alicaeas Kurse auf Udemy +1 geben. Er hat auch einen Node.js-Kurs, der fantastisch ist. Anthony ist ein hervorragender Lehrer und gibt sich große Mühe, alles zu erklären. Er setzt nichts als selbstverständlich voraus und wiederholt Begriffe und geht Funktionen im gesamten Kurs durch.
„A Smarter Way to Learn JavaScript“ E-Book bei Amazon gibt Ihnen Zugang zu geführten Übungen, die wirklich das Muskelgedächtnis trainieren. Ich war skeptisch, aber beurteilen Sie ein Buch nicht nach seinem Einband. Es hat die über 1400 Bewertungen verdient. Es gibt auch ein jQuery-Buch.
Ich empfehle auch Anthony Alicaeas Kurs JavaScript: Understanding the Weird Parts.
Er wiederholt ein Konzept manchmal ein paar Mal, erklärt es aber jedes Mal auf eine leicht andere Weise, was mein Verständnis wirklich verbessert hat. Ein sehr guter Lehrer.
Es ist so aufregend, dass Sie JavaScript lernen werden! Ich wollte Ihnen von einigen anderen Ressourcen erzählen, die ich fand, als ich JS zum ersten Mal lernte. W3Schools ist eine große Sache, aber heutzutage benutze ich hauptsächlich MDN, weil ich, wenn ich etwas nachschlage, normalerweise eine Auffrischung suche, wie etwas im Detail funktioniert. Ich empfehle dringend The Coding Train, und Fun Fun Function ist auch ein wirklich großartiger Kanal. Letzterer mag etwas fortgeschrittener sein. The Coding Train deckt alle JavaScript-Grundlagen ab, also sind Sie bestens gerüstet, wenn Sie seine Videos ansehen. Er behandelt sogar wirklich komplexe Themen. Ich würde sagen, Fun Fun Function ist besser, um sich mit ES6 zu beschäftigen. Ein weiterer großartiger Kanal ist Meth Meth Method, keine Beziehung zu FFF lol. Ich mochte die Mario-Serie, die er dort macht. Sie hat mich mit dem Schreiben von JavaScript-Modulen vertraut gemacht, und ich möchte mehr darüber lernen.
Wenn Sie einen JavaScript-Grundkurs finden könnten, der in ES6 ist, wäre das großartig, aber ich kenne keinen. Alles, was ich an ES6-Zeug gefunden habe, ist eher ergänzend zu JavaScript für diejenigen, die es bereits kennen. ES6 macht JavaScript für mich angenehmer, und deshalb liebe ich es immer noch.
Ich erinnere mich, als ich zum ersten Mal JavaScript machte, es war meine erste „richtige“ Programmiersprache. Ich erinnere mich nur, wie ich die Try It-Funktion von W3Schools liebte, wo sie Live-Beispiele posteten, mit denen man basteln konnte, während man neue Themen lernte. Das war wirklich hilfreich. Es ist leicht, sich mit einer Menge Informationen zu verzetteln, wenn man eine neue Sprache lernt, wie Sie sagten, also beginnen Sie wirklich mit den ganz einfachen Dingen, um es einfacher zu machen. Viel Glück auf Ihrer JavaScript-Reise! Ich freue mich darauf, Ihre schönen Kreationen zu sehen!
Nur eine abschließende Bemerkung hier; lassen Sie sich nicht entmutigen, wenn Sie ein besonders schwieriges Konzept nicht verstehen (wenn Sie über die Grundlagen hinaus sind), wie prototypische Vererbung, Hoisting, Funktions-/Block-Scope, Typumwandlung, automatische Semikolon-Einfügung, sofort aufgerufene Funktionsausdrücke usw. Das ist alles wirklich verwirrend, und ich habe es sicher nicht sofort verstanden, aber lassen Sie sich davon nicht aufhalten. Es wird alles mit der Zeit kommen. Sie werden wahrscheinlich erst viel später direkt damit konfrontiert, also machen Sie sich keine Sorgen.
Eines der besten Dinge an diesem Artikel ist die Tabelle, die das VARK-Lernmodell verwendet. Ich schätze es, wenn Menschen berücksichtigen, dass wir alle unterschiedlich lernen und das Gruppieren von Ressourcen basierend auf dem Lernstil das Leben viel einfacher macht.
Ich wusste nicht einmal, dass das VARK-Modell existiert (oder zumindest, dass es so genannt wird). Das ist hauptsächlich, wie mein Gehirn Dinge aufschlüsselt und wie ich die verschiedenen Lernarten verstehe. Ich werde dieses Akronym von nun an definitiv verwenden!
@Kyle Shover Ich stimme Ihrer Meinung zu Anthony Alicaeas Kurs auf Udemy zu. Ich halte ihn für die beste Investition meines Lebens. Ich kann ihn nicht genug empfehlen.
Ich hatte dasselbe Problem wie du. Mein Plan, der immer noch funktioniert, ist, mich auf reines JS-Coding zu konzentrieren. Keine Frameworks, kein anderer Kram, der mich von meinem Fokuspunkt abbringen kann, nämlich guten Programmierkenntnissen in JS. Ein Buch, aber ein gutes, reicht für den Anfang (in meinem Fall war es HeadFirst Java Script Programming von Eric T. Freeman, Elisabeth Robson. Super einfach für Dummies, aber es funktioniert). Ein guter Startpunkt sind natürlich einige Live-Coding-Seiten wie FreeCodeCamp oder Codecademy (wie du erwähnt hast). Aber das Wichtigste von allem ist, selbst mit dem Codieren zu beginnen. Zuerst einfache Aufgaben, aber es muss dein Code sein. Nimm dir ein Problem vor und löse es. Für mich war es das Addieren von Zahlen, die in zwei Eingabefeldern stehen. Es hat eine Weile gedauert, aber die Zufriedenheit war enorm. Jeden Tag coden ist ein guter Weg, um ein Ziel zu erreichen.
Jede Tutorial-Serie von Wes Bos ist der Goldstandard. Und Tutorials von seinem Syntax.fm-Podcast-Partner Scott Tolinski (findet man unter leveluptutorials.com) sind eine sehr gute zweite Wahl. Und hört euch ihren Podcast an – nicht nur voller praktischer Ratschläge, sondern auch sehr unterhaltsam.
Du erzeugst unbewussten Widerstand, der dich vom Anfang abhält. Dein Ziel, alle Details zu lernen, bringt deinen Fortschritt ins Stocken und selbst dieser Blogbeitrag lenkt dich von deinen eigentlichen Zielen ab. Etwas zu bauen.
„War of Art“ ist ein großartiges Buch zu diesem Thema. Ebenso „The Heart to Start“ von David Kadavy
Beste Grüße
Das ist, als hättest du meine Gedanken mit diesem Artikel gelesen. Ich habe so oft versucht, JS zu lernen, und es bleibt nie hängen. Ich werde deinen Plan befolgen und sehen, ob er für mich funktioniert. Danke!
Andere kostenlose Websites, die du ausprobieren kannst, sind sololearn.com und khanacademy.com.
Die Solo Learn-Website beschäftigt sich ausschließlich mit Programmierung, während die Khan Academy-Website mehrere Themen für Schulkinder sowie Programmierung anbietet.
Tolle Zusammenfassung! Das kenne ich aus eigener Erfahrung nur zu gut!
Ach ja, und zum Thema Echtzeit-Zusammenarbeit mit anderen Entwicklern in deinem Texteditor: Atom hat Teletype https://teletype.atom.io/ und das allein ist für mich ein Grund, Atom zu benutzen und mit Freunden zu codieren, super einfach & funktioniert einfach, plus das Gefühl, gemeinsam an Code zu arbeiten, ist einfach großartig.
Man kann in einem kurzen Gespräch mit einem erfahreneren Entwickler, der sich Code gemeinsam ansieht, so viel lernen. Ich würde sogar argumentieren, dass keine andere Lernmethode dich so schnell Dinge aufnehmen lässt. Sei also nett zu Leuten, die JS kennen (sei generell nett zu allen Menschen!!) und wer weiß, früher oder später findest du vielleicht einen Mentor/Tutor, der gerne ein paar Minuten am Tag oder Stunden pro Woche für Pair-Programming aufwendet.
Es hilft nicht nur dir, sondern auch ihnen, denn jemandem zu erklären, was man weiß, ist ebenfalls ein äußerst lohnendes Gefühl und lässt das Wissen, das man zu kennen glaubt, noch besser haften und aus verschiedenen Perspektiven betrachtet werden.
Um fair zu sein, VSCode hat auch dies in Arbeit.
Schöne Sammlung von Lernressourcen. Vielleicht findest du hier noch etwas Zusätzliches: https://github.com/micromata/awesome-javascript-learning
Wenn du Grundkenntnisse in JavaScript, Programmierung, Schleifen, Variablen etc. hast, würde ich dir Anthony Aliceas Udemy-Kurs JavaScript Understanding the Weird Parts sehr empfehlen, https://www.udemy.com/understand-javascript/learn/v4/overview. Ich liebe seinen Unterrichtsstil und er geht „unter die Haube“, damit du ein tieferes Verständnis der Sprache bekommst. Seine Sprechweise ist etwas langsam, aber wenn du sie auf 1,25-fache Geschwindigkeit stellst, ist es ausgezeichnet. Viel Erfolg!
Schöner Artikel mit großartigen Links. Besonders gefällt mir, wie einige der Links Leute enthalten, die stark von funktioneller Programmierung beeinflusst sind.
Ich bin ein Lernender, der sich noch in der Anfangsphase des tatsächlichen Codierens befindet, habe mich aber entschieden, mich auf das Erstellen von Dingen in React mit styled-components für CSS-in-JS und JSX für HTML-in-JS zu konzentrieren.
Eine Ressource, die ich mag, ist javascript.info für den Abschnitt über den Browser und das DOM. Sehr schön geschrieben. Besser als MDN, meiner Meinung nach.
Ich empfehle auch, die Artikel von Eric Elliot zu lesen
https://medium.com/javascript-scene/composing-software-an-introduction-27b72500d6ea
https://medium.com/javascript-scene/the-two-pillars-of-javascript-ee6f3281e7f3
Für React und Redux ist dies ein großartiger Artikel von James Sinclair
https://jrsinclair.com/articles/2018/react-redux-javascript-architecture/
Da du aus einem CSS-Hintergrund kommst, empfehle ich diese CSS-Artikel und Videos
https://medium.com/seek-blog/a-unified-styling-language-d0c208de2660
http://jxnblk.com/writing/posts/patterns-for-style-composition-in-react/
Viele Grüße,
Nick
Ich muss sagen, ich empfehle JavaScript nicht als zweite Programmiersprache zum Lernen. Es kann aber die erste sein.
Die erste Programmiersprache, die du lernst, sollte eine einfache, deklarative Sprache sein, vorzugsweise mit Funktionen. Nichts zu Komplexes. Mit diesem Teil von JavaScript kann man einiges machen. Alternativen sind PHP und Python.
Die zweite Programmiersprache, die du lernst, wenn du dich auf die High-Level-Entwicklung konzentrierst, sollte etwas sein, das dich zwingt, Klassen zu verwenden. Nicht nur vorgefertigte Klassen verwenden, sondern vorab existierende, möglicherweise abstrakte Klassen erweitern. Die einzigen Sprachen, die ich so kenne, sind Java und das sehr ähnliche C#. JavaScript hat zwei Nachteile: Es zwingt dich nicht, Klassen zu verwenden, und es zwingt dich, Callbacks zu verwenden, was dich verrückt machen wird.
Ich habe selbst viele JS-Ressourcen erkundet. Hier sind einige, die ich empfehlen kann, und alle meist kostenlos.
* Das Buch The JavaScript Way
* Nicolás Bevacquas Bücher
* JavaScript Allongé, die „Sechs“-Ausgabe
* Practical JavaScript von Gordon Zhu
Tolle Zusammenfassung!
Ich lerne auch JS. Meine Lernmethode ähnelt deiner, aber ich habe festgestellt, dass Online-Kurse für mich nicht funktionieren. Ich erledige Aufgaben bei Codewars und benutze ein Buch und andere Ressourcen, um sie zu lösen. Außerdem füge ich JS zu meinen Projekten hinzu und das funktioniert für mich! Viel Erfolg!
Ich schwöre auf freeCodeCamp. Dieser Ort bringt dich schneller und besser geordnet ins Lernen als anderswo, wo ich es versucht habe. Überspringe den HTML/CSS-Teil (oder nicht; deine Wahl) und tauche direkt in JS ein. Leckeres, köstliches JS.
Außerdem ist Colt Steeles Web Developer Bootcamp-Kurs auf Udemy eine SEHR lohnende Investition (10 $).
Sublime ist gut. Aber ich benutze Visual Studio Code. Weil es ein vollständiges Open-Source-JS-Projekt ist. Und jedes Mal, wenn ich mit VSCode in JS/Node code, erinnere ich mich an die Schönheit und die Macht, die ich mit JavaScript erreichen kann.
Danke für diesen wirklich coolen Artikel! Ich persönlich sehe viel Wert darin, von den Lernstrategien anderer zu lernen. Ich würde gerne sehen, wie gut (oder nicht so gut) Eloquent JS für dich wird (ich benutze You Don't Know JS). Außerdem hoffe ich, dass du einen Folgebeitrag darüber veröffentlichst, ob du dich in die Welt der JS-Frameworks (und/oder Node.js) stürzen wirst und wenn ja, welches du auswählst.
Was die Podcasts angeht, mag ich Javascript Jabber. Eine ihrer neueren Veröffentlichungen handelte von „How to learn JS when you're not a developer“. Sie haben auch ziemlich geniale Sachen zu JS-Performance, Node-Sicherheit usw. besprochen. Ich denke, sie haben eine gute Balance zwischen fortgeschrittenen, mittleren und grundlegenden Themen.
Sehr guter Artikel. Ich habe ihn mit ein paar eigenen Vorschlägen auf meinem Blog verlinkt. Ich stehe noch ganz am Anfang meiner JavaScript-Ausbildung. Mein Beitrag ist unter https://blog.mikepolinske.info/2018/02/22/the-javascript-learning-landscape-in-2018-css-tricks/
Großartige Ressource für den Einstieg in diese großartige Sprache! Ein Ratschlag für dich, vielleicht wenn du schon etwas fortgeschrittener bist: Ziehe einen „Live“-Kurs mit echten Mentoren in Betracht. Sie können dich aus ihrer eigenen Erfahrung in die richtige Richtung lenken, und sie werden wahrscheinlich begeistert sein, all deine Fragen zu beantworten. Selbst ein einziger Kurstag kann dir Tage an Arbeit ersparen, um alles selbst herauszufinden. In Europa ist Hackages (https://hackages.io) eine gute Option für praxisorientierte, qualitativ hochwertige Kurse in JavaScript & verwandten Frameworks.
Was, kein einfaches consol.log() oder alert() mit „Hello World“ im ersten Pen zu JavaScript? :-(
Ausgezeichneter Artikel! Ich liebe die von dir bereitgestellten Ressourcen. Von einigen habe ich gehört, andere nicht, und einige werde ich mir wahrscheinlich genauer ansehen müssen. Danke fürs Teilen!
Eine Quelle, die mir geholfen hat, mich in ein Tutorial auf Udemy.com zu verwandeln, war JavaScript: Recognizing the Weird Parts von Anthony Alicea. Ich glaube, es ist heute noch verfügbar! Dieses Video-Tutorial ist dem Eloquent JavaScript ziemlich ähnlich, würde ich sagen. Mehr, danke fürs Teilen. Es gibt ein Zitat von C.S. Lewis, das ungefähr so lautet… Man muss weiter studieren! Und es gefällt mir, wie du es bemerkt hast, mutig sein und es versuchen, auch wenn es viele Informationen gibt.
Nochmals vielen Dank, Chris, für deine Offenheit und Ehrlichkeit. Nach dem Lesen deiner Beiträge fühle ich mich wieder wie ein Mensch. Wieder einmal triffst du genau den Punkt, mit dem viele von uns kämpfen. Kürzlich beschloss ich, dass ich JS – wieder – lernen musste. Free Code Camp ist gut, aber ich habe mich dabei ertappt, wie ich Projekte machen wollte, für die ich meiner Meinung nach noch nicht die nötige Grundlage hatte.
Ich bin über etwas gestolpert, das meiner Meinung nach der beste JS-Lernkurs überhaupt ist. Er heißt Watch and Code – Practical Javascript. Ich bin überrascht, dass ich ihn nicht auf deiner Liste der Ressourcen gefunden habe – watchandcode.com
OOPS! Entschuldige Jason, deine Art zu reden/schreiben erinnert mich an die Art, wie Chris schreibt und denkt. Danke für den tollen Artikel. Wirklich gut. Ich fühle mich nicht mehr wie ein Sonderfall, der der Einzige ist, der hinterherhinkt.
Ich stimme zu. Du wirst keinen besseren JS-Kurs für Anfänger/Fortgeschrittene finden als Gordons Zhus kostenlosen Watch and Code-Videokurs. Meiner Meinung nach setzt er den neuen Standard für das Lehren von Programmierung.
Sehr zeitgemäß! Ich fange gerade erst an, JS zu lernen. Ich habe sogar schon einen Tutor über Wyzant engagiert.
Tolle Zusammenfassung, nach der ich suche
Ich wollte nur ein paar hart erarbeitete Tipps hinzufügen
Zur Motivation
Ich empfehle, wenn du anfängst, JS zu lernen, genau zu überlegen, WARUM. Geht es darum, Beschäftigungsmöglichkeiten zu eröffnen? Um dein eigenes Projekt entwickeln zu können? Besser in deinem Job zu sein? Sei vorsichtig, wenn du lernen willst, weil du denkst, es wird erwartet – was du lernst, sollte zu deinem Karriereweg beitragen. Dann überlege, WAS du mit diesen neuen Fähigkeiten tun möchtest – ein reales Projekt zum Teilen mit Freunden und Kollegen ist ein erstaunlicher Motivator. Biete ihnen Updates und setze Fristen, und sie werden dich zur Rechenschaft ziehen, was deine Wahrscheinlichkeit erhöht, durchzuhalten.
Zu Sprachen
Die Prinzipien der Programmierung sind unabhängig von der Sprache gleich, aber die Sprache bringt oft Best Practices und einige Schlüsselparadigmen mit sich, die tatsächlich Teil der UMGEBUNG sind, in der sie laufen (z. B. während Node JS ist, läuft es auf einem Server, was eine andere Umgebung als ein Browser ist). Meine Empfehlung wäre, mit grundlegender Programmierung (Variablen, Schleifen, Bedingungen, Funktionen, Klassen usw.) zu beginnen und dann mit diesen Fähigkeiten ein Frontend-JS-Framework (Vue, React, Angular) zu lernen. Das wird ein Tor zu serverseitigen Dingen sein, da du es wahrscheinlich brauchst, um dein Projekt zu erstellen oder das Backend auszuführen.
Schau dir auch diese Zusammenfassung an, um herauszufinden, was im JS-Bereich aktuell ist: https://stateofjs.com/2017/
+1 für Watch and Code – Practical Javascript: https://watchandcode.com/p/practical-javascript. Lies einfach die Bewertungen, du wirst viele bekannte Geschichten hören, wie deine.
Ich mache etwas Ähnliches. Ich habe eine Kopie von Eloquent JavaScript (erste Auflage). Ich bin bei CodeSchool angemeldet. Und ich arbeite mich auch durch FreeCodeCamp (weil sie akkreditiert sind und ich am Ende ein Zertifikat bekommen kann).
Interessanterweise ist das Einzige, das fast alles zusammenhält, Programming By Stealth ein Podcast/eine Lektion über praktische und grundlegende Programmierkonzepte, die mit JavaScript gelehrt werden. Es ist vielleicht nicht für jeden das Richtige, aber es ist sehr gut darin, klar zu sein, und Allison spricht gut über die „Warum“-Fragen, genau wie der Hauptlerner in der Show.
Hallo Jason,
Höre auf diese kleine Stimme, du wirst es nicht bereuen ;).
JavaScript aufzunehmen ist eine gute Wahl, basierend auf deinem technischen Hintergrund. Es wird die perfekte Verbindung zwischen deinen HTML/CSS-Kenntnissen und einer Programmiersprache sein.
Ich bin jetzt seit 15 Jahren Entwickler mit verschiedenen Programmiersprachen und ich kann dir sagen, dass der beste Weg, eine Programmiersprache zu lernen, darin besteht, sie zu benutzen, um ein Projekt zu bauen, das du brauchst.
Wenn du nur zufällige Übungen machst, wirst du nicht die Dynamik und Motivation aufrechterhalten. Du brauchst diesen Dopamin-Schub, den du bekommst, wenn du etwas von Grund auf mit deinen eigenen Händen baust!
Nichts geht über die Arbeit an einem realen Projekt, um eine Programmiersprache zu lernen. Du hast eine riesige Sammlung von Ressourcen aufgelistet, das ist großartig, aber es gibt unzählige andere Materialien zum Lesen/Anschauen/Verdauen und es werden in einem Monat oder sechs Monaten noch mehr dazukommen. Diese werden dir nicht beibringen, wie man entwickelt. Ein reales Projekt wird es tun.
Mein einziger Rat ist: Wähle ein Buch und bleibe dabei. Schaue dir nichts anderes an, es sei denn, du steckst fest. Baue dein Projekt und nutze das Buch, um dir zu helfen. Aber versuche nicht, alles zu schlucken, du wirst nicht die Zeit dafür haben und es ist nutzlos. Konzentriere dich zuerst auf die Grundlagen, du wirst später genug Zeit haben, deine Fähigkeiten mit fortgeschrittenem Material zu schärfen.
Das ist der einzige Weg, motiviert zu bleiben, eine Programmiersprache zu lernen. Baue dein eigenes reales Projekt, während du lernst.
Jérémy.
PS: Ich habe kürzlich meine HTML/CSS-Kenntnisse aufgefrischt (habe mich jahrzehntelang nicht damit beschäftigt, CSS gab es, als ich HTML benutzte, fast noch nicht). Und ich kann dir sagen, dass auch dieser Bereich überwältigend sein kann. CSS3 ist großartig, aber es gibt auch neue Tools dafür wie CSS-Präprozessoren/-Postprozessoren, neue Build-Tools wie Gulp, Grunt etc. und neue Workflows zu lernen. Ich war ziemlich schockiert!
Je weiter wir voranschreiten, desto überwältigender wird es. Wenn du also die am wenigsten überwältigende Landschaft für JS willst, war der beste Zeitpunkt zum Lernen gestern. Der zweitbeste Zeitpunkt ist jetzt, also bist du auf dem richtigen Weg! Viel Glück!
http://javascript.info/ ist wahnsinnig gut und scheint auf dem neuesten Stand zu sein, im Gegensatz zu einigen Videokursen
Danke für den Artikel, Jason, viele gute Ressourcen hier. Ich mag Eloquent JavaScript selbst sehr.
Du hast erwähnt, dass du nicht viele JS-bezogene Newsletter gefunden hast. Freche Eigenwerbung hier; ich betreibe einen wöchentlichen JS-Debugging-Puzzle-Newsletter namens All Tests Pass, der gut für Anfänger und Fortgeschrittene im JavaScript-Bereich geeignet ist. Schau ihn dir unter http://tinyletter.com/alltestspass an
Ich arbeite mich gerade durch die Buchreihe „You Don't Know JS“ und finde sie gut strukturiert. Sie setzt nicht voraus, dass du die Hälfte dessen, was sie erklärt, bereits weißt, wie es bei Blogbeiträgen oft der Fall zu sein scheint.
Ich mag auch die Codewars-Website für kleine Herausforderungen, die gut geeignet sind, um dein bisheriges Wissen zu testen. Nachdem du eine Herausforderung gemeistert hast, kannst du auch die Lösungen aller anderen sehen, was ich als sehr hilfreich zum Erlernen neuer Dinge empfinde.
Absolut im gleichen Boot. Ich versuche, Zeit und Fokus zu finden, um zuerst JavaScript zu lernen, dann jQuery, dann Dinge wie ES6, React oder Vue. Ich schätze, es kommt darauf an, die Grundlagen zuerst zu lernen und darauf aufzubauen. Ein Projekt (real oder persönlich) zum Arbeiten bringt die Dinge wirklich zum Leben, besonders wenn du eine Deadline hast.
Don Ricardo Jr. schrieb, nach Schlusspfiff
Gordon Zhus Kurse