Hier ist, warum das Erlernen des Codierens so schwierig ist (und was man dagegen tun kann)

Dies liegt daran, dass Ihr Gehirn Langzeitgedächtnisse im Hippocampus über Assoziationen speichert. Der Hippocampus benötigt Kontext, um ein neues Konzept mit verwandten Konzepten zu speichern. Kontext sind in diesem Fall nicht die benachbarten Codezeilen mit individuellen Erklärungen.Stattdessen hätten neue Webentwickler eine viel bessere Chance, das Konzept eines HTTP-Servers zu speichern, indem sie ihn mit etwas verknüpfen, das sie bereits verstehen. Ihr Gehirn muss ein reichhaltiges Netzwerk von Verbindungen aufbauen, um neue herausfordernde Konzepte erfolgreich zu speichern.

Hier sind einige Möglichkeiten, wie Ihr Gehirn die Komponenten eines HTTP-Servers besser verstehen kann:

  1. Ein Code, der die verschiedenen Teile des Codeblocks erklärt und vorhandene Beziehungen verwendet, um diese neuen Beziehungen zu erklären.
  2. Eine interaktive Version des Code-Snippets, die den Live-Status der Anwendung anzeigt. Wenn Sie eine Zeile ändern, erhalten Sie sofort eine Antwort darauf, was mit Ihrer Anfrage passiert ist.

Fehler # 2: Nichtbeachtung der 80/20-Regel

Wenn Sie einen Webentwicklungslehrer oder 10 neue Webentwickler interviewen, werden Sie immer wieder von denselben Herausforderungen hören. CSS-Positionierung. Schweben. Callback. Dies waren die häufigsten Herausforderungen der letzten 10 Jahre.

Aus irgendeinem Grund werden Tutorials jedoch immer noch jedes Konzept für die gleiche Zeit unterrichten. Wenn eine Lektion über CSS-Einführung aus 10 Lektionen besteht und voraussichtlich insgesamt 5 Stunden dauert, dauert jede Lektion ungefähr 30 Minuten. Die einfachen werden genau so lange unterrichtet wie die harten, obwohl es einen gut dokumentierten Konsens über die schwierigsten Themen gibt!

Es ist, als würde man lehren, wie man ein Ei bricht und wie man eine Gourmet-Hähnchenbrust vorsichtig anbraten kann. Beide sind gleich wichtig, um eine gute Mahlzeit zu machen, aber man erfordert viel mehr Übung. Sie könnten jedoch in die Irre geführt werden, dass sie ebenso schwierig sind, da das perfekte Kochen einer Hühnerbrust von außen eine unkomplizierte Aufgabe zu sein scheint.

Neue Entwickler lösen dieses Problem auf verschiedene Arten:

  1. Angenommen, sie sind die Dummen und geben auf
  2. Konsultieren Sie andere Tutorials zum selben Thema, die sich weitgehend wiederholen und gelegentlich von schlechter Qualität sind. Der „Spray and Pray“ -Ansatz.
  3. Gehen Sie zum nächsten Thema mit der Annahme, dass sie es „später herausfinden“

Lehrer aus anderen Disziplinen werden eine 80/20-Analyse verwenden, um ihre Bemühungen neu zu fokussieren. Dies bedeutet, dass 20% der neuen Konzepte 80% der Lernzeit der Schüler in Anspruch nehmen.

Beispiel-CSS-Themen

Die 6 CSS-Themen könnten ebenso notwendig sein, um eine schöne Website zu erstellen. Aber sie sind NICHT gleich leicht zu erlernen. Einige schaffen Stunden des Kampfes.

In einer idealen Welt würde ein vollständiger CSS–Lehrplan 2-3x mehr Material zu diesen gemeinsamen herausfordernden Themen enthalten. Es würde positive Ermutigung beinhalten („Jeder kämpft damit!“) und zusätzliche Übungsmöglichkeiten. Aber das ist noch nicht passiert, und ich erwarte nicht, dass es jemals für die meisten populären Dienste passieren wird.

Sie wissen, dass Sie in dieser Furche stecken, wenn Sie stundenlang versucht haben, ein neues Konzept zu lernen, und Sie können immer noch nicht vorhersagen, was passieren wird, wenn Sie eine Codezeile optimieren. Sie können die Feynman-Technik verwenden, um die Themen zu bestimmen, die Sie nicht vollständig verstehen:

  1. Wählen Sie ein Konzept
  2. Bringen Sie es einem Kleinkind bei
  3. Identifizieren Sie Lücken und kehren Sie zum Quellmaterial zurück
  4. Überprüfen und vereinfachen (optional)

Fehler # 3: Unterrichten aus der Perspektive eines erfahrenen Ingenieurs

Viele einführende Codierungs-Tutorials wurden von Ingenieuren mit mehr als 10 Jahren Erfahrung geschrieben. Woher weiß ich das? Weil ich Tutorials immer wieder ansehen oder lesen musste, bis mir klar wurde: „Sie werden dieses Schlüsselkonzept nicht erklären! Ich muss im Internet nach einer Erklärung suchen, bevor ich fortfahren kann.Dies ist eigentlich eine gut dokumentierte kognitive Verzerrung, die als „Fluch des Wissens“bezeichnet wird und in allen technischen Disziplinen auftritt.

Bildquelle: CommunicateHealth

Folgendes bedeutet es – wenn Lehrer jahrelange Erfahrung mit einem technischen Fach haben , sie haben bereits ein tiefes Verständnis des Themas geschaffen. Da sie von den Verbindungen in ihrem eigenen Gehirn geblendet sind, können sie nicht verstehen, wie ein Anfänger das neue Material sehen könnte.

Wenn Sie sich daran erinnern, wie Ihr Gehirn Erinnerungen von oben speichert, hat dies tatsächlich eine biologische Basis! Der Hippocampus des Lehrers hat Assoziationen gebildet, die im Gehirn der Schüler nicht vorhanden sind.

Um diese Herausforderung zu meistern, empfehle ich ein Tool wie FreeCodeCamp, das von autodidaktischen Webentwicklern für andere in einer ähnlichen Position geschrieben wurde! Es hat einen vollständigen Lehrplan, der speziell dazu gedacht ist, selbstgesteuerten Lernenden zu helfen, Hürden zu überwinden.

Fehler #4: Code lehren, als wäre es ein mysteriöses neues System

Kehren wir zum Kochvergleich zurück. Die meisten Menschen haben ihr ganzes Leben lang ETWAS gekocht oder die Grundlagen von den Eltern beigebracht bekommen. Sie sind bereits mit allen grundlegenden Tools aus jahrelangem Versuch und Irrtum vertraut. Wenn Sie also einer Person beibringen würden, ein professioneller Koch zu sein, hätten Sie bereits die Grundlagen, auf denen Sie aufbauen können.

Aber es gibt keine „grundlegende“ Version von Learning Web Development! Selbst wenn Sie in der Vergangenheit R oder Java gelernt haben, werden nicht viele Lektionen übernommen.

Wie berücksichtigen die meisten Online-Tutorials dies? Sie enthalten Lektionen, die Code lehren, als wäre es eine fantastische neue Welt voller HTTP-Server, kniffliger Browser und asynchroner Ereignisse. Sie wirken wie diese komplizierten Stücke sind die Grundlage für später fortgeschrittenes Lernen.

Stellen Sie sich vor, das Kochen erforderte eine so hohe Eintrittsbarriere. Wir würden alle Mikrowellen essen. Kochen greift alle 5 Sinne an und lässt das richtige und das falsche Verfahren schnell in Ihrem Gehirn haften. Das menschliche Gehirn lernt am besten, wenn es mehrere Sinne einbezieht. Es kann Systeme verstehen, wenn verschiedene Reize gut vs. schlecht offensichtlich machen.

Nun, ich weiß, das scheint unmöglich. Da der gesamte Code in einem Browser oder auf einem Server ausgeführt wird, wie kann er sich mit unseren Sinnen verbinden? Und ich meine nicht, ein <div> um einen Bildschirm zu zoomen, während Sie seine CSS-Eigenschaften umschalten. Das fördert das Lernen nicht.

Ich hätte auch gedacht, dass imaginäre Zahlen aus der Mathematik unmöglich mit menschlichen Sinnen zu verbinden sind. Erinnerst du dich an i, i2, i3 und i⁴? Scheint ein neues System zu sein, das Sie sich nur merken müssen, um es anzuwenden.

Stattdessen verwendet Kalid Azad von BetterExplained ein Diagramm mit einer x- und y-Achse, um die „imaginäre“ Dimension zu visualisieren. Nun ist das Konzept der imaginären Zahlen direkt an ein bekanntes Konzept gebunden. Kein Auswendiglernen erforderlich.

Fehler # 5: Mangel an unmittelbarem Feedback

An der Oberfläche scheint es, als hätte die Webentwicklung bereits ein perfektes System für Feedback. Sobald Sie Ihren Browser aktualisieren oder „npm start“ in die Konsole eingeben, erhalten Sie eine sofortige Antwort.

Nehmen wir in der Kochanalogie an, Sie versuchen, eine Hühnerbrust perfekt für Ihre Mahlzeit zuzubereiten. Stattdessen verbrennen Sie es. Was hätte schief gehen können?

  1. Zuerst zu dünn geschnitten
  2. Die Hitze zu hoch gedreht
  3. Zu spät in die Pfanne gegeben
  4. Zu lange in der Pfanne belassen

Ihr verbranntes Produkt am Ende gibt Ihnen keine Ahnung, was schief gelaufen ist. Nur jahrelange Erfahrung oder unzählige Versuche mit Versuch und Irrtum helfen Ihnen herauszufinden, was schief gelaufen ist.

Hier ist die Fehlermeldung, die Sie erhalten würden, wenn dies in einer Eingabeaufforderung passieren würde:

Das wird nicht helfen mit Debugging! Es fördert das Lernen durch Versuch und Irrtum, bis Sie es Stunden später herausfinden. Stattdessen benötigen Sie ein Feedback-System, das Sie auf die Auswirkungen jeder Entscheidung hinweist:

Das obige Bild zeigt, dass bei Schritt 2, „Höchste Temperatur“, etwas schief gelaufen ist, das die Ausgabe ruiniert hat.

Dieses reichhaltige Netzwerk möglicher Entscheidungen ist bereits im Gehirn von Profiköchen eingebettet. Und selbst fortgeschrittene Webentwickler können eine Fehlermeldung lesen und ihre Debugging-Bemühungen auf einen Teil des Skripts konzentrieren. Aber Anfänger haben keinen ähnlichen Instinkt, und heute lernen sie nur aus stundenlangem Ausprobieren mit intermittierendem Feedback.

Auch dies scheint in einem Texteditor oder Online-Editor wie CodePen unmöglich zu sein. Aber Bret Victors berühmter Aufsatz Learnable Programming hat bereits einen ganzen Rahmen skizziert, um neuen Programmierern zu helfen, Feedback zu jeder Codezeile in ihrem Skript zu erhalten, sobald sie eingegeben werden.

Autodidakten werden am meisten verletzt

Wenn Sie in der High School oder am College sind, können Sie mit einem unterdurchschnittlichen Unterrichtsniveau umgehen. Sie müssen sich nur auf den nächsten Test vorbereiten und verfügen über ein Unterstützungsnetzwerk von Kommilitonen. Sie werden danach bewertet, ob Sie bei einem Test eine Punktzahl erzielen können, nicht, ob Sie dafür bezahlt werden können, die Fähigkeit im wirklichen Leben zu üben.

Aber wenn Sie ein autodidaktischer Webentwickler sind, stehen Sie wahrscheinlich vor anderen Umständen. Sie haben nur eine begrenzte Zeit und müssen Ihre gesamten Fähigkeiten unter Beweis stellen, indem Sie eine echte App erstellen oder einen Test während eines Vorstellungsgesprächs bestehen. Es gibt kein Konzept, für einen Test zu lernen und dann weiterzumachen.

Da die Online-Bildungsbranche wächst und mehr Erwachsene gezwungen sind, neue Fähigkeiten online zu erlernen, sage ich voraus, dass sich die Macht auf die Lernenden verlagern wird. Der Druck auf Online-Bildungsunternehmen wird zunehmen, die Lernerfahrung selbst zu verbessern. Die besten Lehrstrategien werden mit Hunderttausenden zahlender Abonnenten belohnt.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.