これは、あなたの脳が関連付けを 海馬は、関連する概念を持つ新しい概念を格納するために文脈を必要とする。 この場合のコンテキストは、個々の説明を含む隣接するコード行ではありません。
代わりに、新しいweb開発者は、HTTPサーバーの概念をすでに理解しているものに関連付けることによって、HTTPサーバーの概念を保存する機会がはるかに高 あなたの脳が正常に新しい挑戦的な概念を格納するための接続の豊富なネットワークを作成する必要があります。
あなたの脳がHTTPサーバーのコンポーネントをよりよく理解できるいくつかの方法があります。
- コードブロックのさまざまな部分を説明し、既存の関係を使用してこれらの新しい関係を説明するアナロジー。
- アプリケーションのライブ状態を示す対話型バージョンのコードスニペット。 行を変更すると、あなたの要求に何が起こったかに瞬時に応答を取得します。
間違い#2:80/20ルールを考慮しない
web開発の先生や10人の新しいweb開発者にインタビューすると、同じ課題について何度も何度も聞くことがで CSSのポジショニング。 浮く。 コールバック。 これらは、過去10年間の最も一般的な課題でした。
何らかの理由で、しかし、チュートリアルはまだ同じ時間のために各概念を教えます。 入門CSSのレッスンが10レッスンで構成されており、合計5時間かかると予想される場合、各レッスンは約30分になります。 簡単なものは、過酷なトピックに関する十分に文書化されたコンセンサスがあるにもかかわらず、厳しいものと正確に限り教えられています!卵を砕く方法と、グルメな鶏の胸肉を慎重に焼く方法を教えるようなものです。
卵を砕く方法を教えるようなものです。
卵を砕く方法 どちらも偉大な食事を作るためにも同様に重要ですが、一つははるかに多くの練習が必要です。 しかし、あなたは鶏の胸肉を調理することは完全に簡単な仕事であることが外部から表示されますので、彼らは同様に困難であると信じて誤解さ
新しい開発者はこの問題をいくつかの方法で解決します。
- 彼らは愚かなものであると仮定し、あきらめます
- 同じトピックに関する他のチュート “スプレーと祈り”のアプローチ。
- 次のトピックに進み、”後でそれを理解する”と仮定します
他の分野の教師は、80/20の分析を使用して努力に焦点を合わせます。 これは、新しい概念の20%が学生の学習時間の80%を消費することを意味します。
6つのCSSトピックは、美しいウェブサイトを構築するためにも同様に必要かもしれません。 しかし、彼らは学ぶのが同じように簡単ではありません。 いくつかの闘争の時間を作成します。
理想的な世界では、完全なCSSカリキュラムには、これらの一般的な挑戦的なトピックに関する2–3倍の資料が含まれています。 それには肯定的な励ましが含まれます(”誰もがこれに苦労しています!”)と余分な練習の機会。 しかし、これはまだ起こっていない、と私はそれが今まで最も人気のあるサービスのために起こることを期待していません。あなたは何時間も新しい概念を学ぼうとしているときにこのマンネリに陥っていることを知っていますが、1行のコードを微調整した場合に何が ファインマン手法を使用して、完全に理解していないトピックを決定することができます。
- 概念を選択する
- 幼児に教える
- ギャップを特定し、ソースマテリアルに戻る
- レビューと簡素化(オプション)
間違い#3:経験豊富なエンジニアの視点から教える
多くの入門的なコーディングチュートリアルは、10年以上の経験を持つエンジニアによって書かれています。 どうやって分かる? 私は私が実現するまで、何度も何度もチュートリアルを再見たり、再読しなければならなかったので、”彼らはこの重要な概念を説明するつもりはあり 続行する前に、インターネットで説明を検索する必要があります。”
これは実際には”知識の呪い”と呼ばれる十分に文書化された認知バイアスであり、すべての技術分野で起こります。
ここでは、それが何を意味するかです-教師は技術的な科目で長年の経験を持すでに主題の深い理解を作成しています。 彼らは自分の脳内の接続によって盲目にされているので、彼らは初心者が新しい材料を見るかもしれない方法を理解することはできません。あなたの脳が上から記憶を保存する方法を思い出すと、これは実際には生物学的基礎を持っています!
あなたの脳が上から記憶を保存する方法を 教師の海馬は、学生の脳には存在しない団体を形成しています。
この課題を克服するために、私は同様の立場で他の人のために独学のweb開発者によって書かれたFreeCodeCampのようなツールをお勧めします! これは、具体的には、自己指向の学習者がハードルを克服するためのものである完全なカリキュラムを持っています。間違い#4:それは神秘的な新しいシステムであるような教育コード
のは、料理の比較に戻りましょう。 ほとんどの人は、彼らの一生何かを調理されている、または親によって基本を教えられました。 彼らはすでに試行錯誤の年からのすべての基本的なツールに精通しています。 あなたがプロの料理人になるように人を教えていたのであれば、あなたはすでに上に構築するための基本を持っているでしょう。しかし、web開発を学ぶのは”基本的な”バージョンはありません! 過去にRやJavaを学んだことがあっても、引き継がれる教訓はまだ多くありません。
だから、どのようにほとんどのオンラインチュートリアルでは、これを考慮に入れていますか? それらには、HTTPサーバー、厄介なブラウザ、非同期イベントでいっぱいの幻想的な新しい世界のようなコードを教えるレッスンが含まれています。 これらの複雑な部分は、後の高度な学習のための基礎であるように彼らは行動します。
調理がエントリにこのような高い障壁を必要とした場合を想像してみてください。 私たちは皆、電子レンジの食べ物を食べているだろう。 料理は、すべての5つの感覚に係合し、右の手順と間違った手順はすぐにあなたの脳に固執します。 人間の脳は、複数の感覚を従事するときに最高の学習します。 異なる刺激が良いものと悪いものを明白にするとき、それはシステムを理解することができます。今、私はこれが不可能と思われることを知っています。
すべてのコードはブラウザまたはサーバー上で実行されるため、どのようにして私たちの感覚に接続できますか? そして、私は見ているわけではありません<div>CSSプロパティを切り替えながら画面をズームします。 それは学習を奨励しません。私はまた、数学からの虚数は人間の感覚に接続することは不可能だと思っていたでしょう。
私はまた、数学からの虚数は人間の感覚に接続するこ I、i2、i3、およびi†を覚えていますか? あなただけの適用するために暗記する必要がある新しいシステムのように思えます。代わりに、BetterexplainedのKalid Azadは、x軸とy軸を持つグラフを使用して、”想像上の”次元を視覚化するのに役立ちます。 さて、虚数の概念は、よく知られた概念に直接結びついています。 暗記は必要ありません。
間違い#5:即時フィードバックの欠如
表面上、web開発はすでにフィードバックのための完璧なシステムを持っているように見えるかもしれません。 結局のところ、ブラウザを更新するか、コンソールに”npm start”と入力するとすぐに、すぐに応答が得られます。
料理の類推では、あなたの食事のために鶏の胸肉を完全に調理しようとしているとしましょう。 代わりに、あなたはそれを燃やす。 何が間違っていた可能性がありますか?p>
- 最初は薄すぎてスライスしました
- 熱を高すぎてしまいました
- 鍋に入れて遅すぎます
- 鍋に入れて長すぎます
最後に焦げた製品は、何が間違っていたかについての手掛かりを与えません。 経験や試行錯誤を使用して無数の試みの唯一の年は、あなたが間違っていたかを把握するのに役立ちます。これがコマンドプロンプトで発生した場合に表示されるエラーメッセージは次のとおりです。
デバッグ! それは、時間後に、あなたがそれを把握するまで、試行錯誤によって学習を奨励しています。 代わりに、各決定の影響を警告するフィードバックシステムが必要です:div>
上記のビジュアルは、ステップ2で”最高温度”、何かが間違って出力を台無しにしたことを示しています。
可能な意思決定のこの豊富なネットワークは、すでに専門家のシェフの脳に埋め込まれています。 また、中間のweb開発者でさえ、エラーメッセージを読んで、スクリプトの一部にデバッグ作業を集中することができます。 しかし、初心者は似たような本能を持っていない、と今日、彼らは断続的なフィードバックと試行錯誤の時間から学ぶだけです。
ここでも、これはCodePenのようなテキストエディタやオンラインエディタでやってのけることは不可能に見えるかもしれません。 しかし、Bret Victorの有名なエッセイLearnable Programmingは、新しいプログラマが入力されるとすぐにスクリプト内のコードのすべての行にフィードバックを得るのを助けるためのフレームワーク全体をすでに概説しています。あなたが高校や大学にいる場合は、教育のサブパーレベルに対処することができます。
独学学習者が最も傷ついています。
あなたは高校や大学 あなただけの次のテストの準備をする必要があり、あなたは仲間の学生のサポートネットワークを持っています。 あなたは、あなたが実際の生活の中でスキルを練習するために支払われることができるかどうかではなく、テストでスコアを得ることができるかどしかし、あなたが独学のweb開発者であれば、あなたはおそらく異なる状況に直面しています。
あなたは限られた時間を持っており、あなたは実際のアプリを構築したり、就職の面接中にテストに合格することによって、あなたの全体のスキルセ テストのために勉強してから進むという概念はありません。
オンライン教育業界が成長し、より多くの大人がオンラインで新しいスキルを学ぶことを余儀なくされるにつれて、私は力が学習者に向かってシフト 学習体験自体を向上させるために、オンライン教育企業に圧力が増加することになります。 最高の教育戦略は、数十万人の加入者を支払うことで報われるでしょう。