このコメントを見て、私は短い文章を書く気になりました。「自己動機付け」に頼る学習を続けるのはなぜこんなに難しいのでしょうか? 答えは簡単です。一貫して肯定的なフィードバックを受け取っていないのです。 すべての自己駆動型学習は、その効果を上げるために、ポジティブフィードバックと学習ループという 2 つのコアエンジンに依存しています。 🆙 エンジン 1: ポジティブフィードバック(動力を供給する「燃料」) ポジティブなフィードバック、つまり気分を良くしてくれるものは、あなたが前進し続けるための根本的な動機となります。 例えば: - 「Hello World」と入力すると、コードが実際に実行され、結果が出力されます。 - あなたが書いた小さなスクリプトのおかげで、繰り返しの作業を 30 分も節約できました。 - あなたが作った小さなソフトウェアは、友人が難しい問題を解決するのに本当に役立ちました。 これらはすべて、非常に貴重な正のフィードバック ループです。 逆に、負のフィードバックとは何でしょうか? 例えば: - 環境設定に丸一日を費やしましたが、それでも実行できませんでした。 - 一晩中デバッグをしましたが、まだバグを見つけることができませんでした。 - ソフトウェアは長い期間をかけて丹念に開発されましたが、誰も使用していません。 人間は意志の力だけで継続的な否定的なフィードバックに対抗することはできません。肯定的なフィードバックが常に得られない場合、諦めることが最も人間らしい選択です。 ♻️ エンジン 2: 学習サイクル (スキルを内面化するための「エンジン」) 単に「快感」を味わうだけでは不十分です。それは一時的な興奮に過ぎないかもしれません。真の「学習」には、常に稼働しているエンジン、つまり知識を自分の真のスキルへと内面化する完全な閉ループが必要です。 プログラミング学習を例にとると、このサイクルには少なくとも次の 3 つのステップが含まれます。 1.理論的な知識を学ぶ(勉強する) これが基礎です。アルゴリズム、データ構造、デザインパターンなどを、書籍、動画、コースを通して学びましょう。これがあなたの「武器庫」です。 2. 実習(演習) これは最も重要な部分です。抽象的な概念を現実のものにするには、コードを書き、コンパイルし、実行し、デバッグし、バグを修正する必要があります。 なぜ今、「実践を通して学ぶ」ことが重視されているのでしょうか?それは、どんなに水泳のビデオを見ても、実際に水に入ってみなければ泳げるようになることは決してないからです。 多くの人がプログラミングの学習に失敗しますが、それは理論を理解していないからではなく、十分に練習していないからです。 3. 現実世界の問題を解決する(思考) 練習すれば必ず問題に遭遇します。それが初心者と熟練者の違いです。 問題を分析する→解決を試みる→壁にぶつかる→調査する→最終的に問題を解決するという、一連のプロセスを踏まなければなりません。問題解決への苦闘を通してのみ、真の経験を積み、知識を習得することができるのです。 注意: このステップは AI では代替できません。 AIはコードを書くのを手伝ってくれますが、「行き詰まりから突然の気づきに至るまで」の思考プロセス全体を体験することはできません。その経験は、自分で獲得しなければなりません。 それらのいわゆる専門家は、単にこのサイクルを何度も実行し、膨大な数の「問題解決」パラダイムを蓄積してきた人々であり、それ以上のものではありません。 鍵: 「ループ」に「フィードバック」を生成させる 次に、2 つのエンジンを接続します。 「学習サイクル」は「ポジティブなフィードバック」を生み出す最良の方法です。 完全なループを完了すると(たとえば、新しいフレームワークを学習し、小さな機能を作成し、すべてのバグを修正する)、受け取る肯定的なフィードバックは非常に大きくなります。 この達成感、つまり「できる」という感覚は、次のサイクルをワクワクしながら始めるための十分な「燃料」を与えてくれるでしょう。 独自の「ポジティブフィードバック学習サイクル」を作成するにはどうすればよいでしょうか? シナリオ1:「シンプルモード」(企業内) 会社で働くことには大きな利点があります。自分自身のサイクルを見つける必要がなく、会社がそれを「与えてくれる」のです。 - タスクを受け入れる(問題を特定する) - ニーズを理解する(理論を学ぶ) - 実践的な開発(実践演習) - 統合テスト(トラブルシューティング) - 起動してリリースします (肯定的なフィードバックを受け取ります: タスクの完了/ユーザーの使用状況)。 さらに、周りには同僚やメンターがいます。問題に直面しても、必ず助けてくれる人がいます。リーダーが優れたスキルを持ち、あなたに「ちょうど良い」仕事を任せてくれるなら、あなたの成長は驚くほど速くなるでしょう。 シナリオ2:「ハードモード」(単独探索) 一人で勉強する場合、物事ははるかに難しくなります。このサイクルを自分自身で意図的に設計する必要があります。いくつかの重要な提案を以下に示します。 1. サイド プロジェクトから始めます。そのプロジェクトは「小規模」である必要があります。 最初から「ChatGPT」を作ろうとしないでください。目標は、すぐに肯定的なフィードバックを得ることです。 - 自動チェックイン用のスクリプト。 - 画像をバッチ処理するための小さなツール。 - 本のリストを管理するのに役立つシンプルな Web サイト。 覚えておいてください: 行動を起こす前に、あなたやあなたの友人の周りの「本当のニーズ」を見つけてください。これにより、成功率が最大化されます。 2. AI を「運転手」ではなく「ナビゲーター」として扱う。 AI は革新的なツールですが、学習サイクルを簡単に混乱させる可能性があります。 ❌誤った使用法(配車サービスの場合):「xxx という関数のコードを書くのを手伝ってください。」 -> 単にコピーして貼り付けているだけで、「練習」と「問題解決」の段階が抜けています。 ✅正しい使用法 (ナビゲーター): 「エラー xx が発生しました。原因は何でしょうか?」 「関数 xx を実装したいのですが、比較のための解決策は何ですか?」 AI に任せっぱなしでは、知識を本当に習得することは決してできません。このサイクルは機能しません。 3. ファインマン学習テクニックを使用して理論的な入力を促進する。 長い間実践しながら学習している人の多くは独学になり、何をすべきかはわかってもなぜそうするのかがわからなくなり、すぐにボトルネックに遭遇します。 何をすべきか?「教える」ことで「学ぶ」ことを強制するのです。 プロジェクト中に考えたこと、落とし穴、解決策を記録し、ブログを書いたりプレゼンテーションを行ったりして共有しましょう。他の人にわかりやすく「説明」するには、基礎となる理論的な知識を復習し、それを本当に理解していることを確認する必要があります。 これは理論を学ぶ最も効率的な方法の 1 つです。 4. 自分で解決しようとせず、コミュニティからの助けや支援を求めてください。 一人で勉強する場合、最悪なのは、何日も問題に行き詰まり、解決できず、圧倒的な否定的なフィードバックにつながることです。 AI は一部の問題を解決できますが、多くの複雑な問題や特定のドメインの問題には依然として人間の介入が必要です。 私たちの世代のプログラマーは、CSDNフォーラム、Stack Overflow、Zhihuにどっぷり浸かって育ちました。コミュニティで質問をして回答をもらえれば、それはポジティブなフィードバックになります。そして、自分の経験を活かして他の人の質問に答えれば、さらに強いポジティブなフィードバックになります。 本当の成長は、動画を観たり AI にコードを書かせたりするような快適な環境では決して起こりません。「学習 -> 実践 -> 問題解決」という、苦痛を伴う完全なサイクルから生まれます。 身の回りの小さな問題から始めましょう。問題を解決するための行動を起こし、経験を積み、肯定的なフィードバックを得ましょう。
スレッドを読み込み中
X から元のツイートを取得し、読みやすいビューを準備しています。
通常は数秒で完了しますので、お待ちください。
