新米エンジニアは実はコードを書けない?!
原文リンク:https://nmn.gl/blog/ai-and-learning
最近、新米エンジニアと話すたびに気になることがある。
今、ソフトウェア開発の世界は大きな転換点を迎えている。話を聞く限り、今のジュニアエンジニアは皆、CopilotやClaude、GPTを常に使っていて、かつてないほどのスピードでコードを書いている。でも、彼らが本当に理解しているのかを深掘りしてみると、ちょっと不安になってくる。
確かにコードは動いている。でも、「なぜこの方法なのか?」と聞くと、沈黙。「この処理のエッジケースは?」と聞くと、ポカンとした顔。
昔なら、試行錯誤しながら学んできたはずの基礎知識がごっそり抜け落ちている。
僕たちは「深い理解」を「素早い解決」と引き換えにしている。確かにその場では気持ちいいけど、あとでそのツケを払うことになる。
昔はもっと考えながらコードを書いていた
最近気づいたんだけど、今の新しい世代のエンジニアの中には Stack Overflow を知らない 人さえいるらしい。
昔、「Claude」と言えばチャットボットではなく、情報エントロピーの概念を作り出したクロード・シャノンのことを指していた時代、プログラムのバグを解決する方法は違っていた。
まずは Google で検索。それから、自分と同じ問題に悩んでいた誰かが質問を投稿していないかを探す。もし見つかったら、そこには Stack Overflow の "賢いおじさん" たちが書いた詳細で丁寧な(時には上から目線な)回答があった。
たとえば、これは12年前に僕が投稿した質問だ。そして、Nathan Wall という人が書いたトップ回答を見てほしい(彼は1万ポイント以上の評価を受けていて、2015年からCTOをやっているらしい)。

ぜひ読んでみてほしい。きっと何か新しいことを学べると思う。
驚くべきことに、こんなに詳細な回答を、AIなしで、しかも無料で書いてくれた人がいたのだ。
もちろん、僕の質問には完璧に答えてくれていた。でも、それだけじゃない。そこからたくさんの新しい知識を得ることができた。中には「そんなこと知りたくなかったのに!」っていう情報まで、脳に刻み込まれてしまった。
これは、質問をしたときの「ベストケース」だ。もし同じ質問をした人がいなかったら? そのときは運が悪かったと思って、ひたすら試行錯誤するしかなかった。

便利になったけど、失われたものもある
今のジュニアエンジニアは楽をしすぎている。エラーが出たら、とりあえず chat.com にコピペして解決策をもらう。さらにズボラな人は、ブラウザに切り替える30秒さえ惜しんで、エディタに埋め込まれたAIツールを使う。
確かに、これは速いし便利だ。
でも、Stack Overflow には AIにはない強み がある。
「経験豊富な開発者たちの議論を読むことこそが、一番の学習方法だ」
これを説明するために、ちょっとした図を作ってみた。

AIは「答え」をくれる。でも、その知識は浅い。Stack Overflow では、さまざまなエキスパートの意見を読みながら、問題の全体像を理解することができた。確かに時間はかかる。でも、ただ動くコードを書くのではなく、「なぜ動くのか」を理解できる。
考えてみてほしい。あなたの知っている「すごい開発者」は、ただコードをコピペするだけで上達しただろうか? 彼らが優れているのは、システムを深く理解し、他の開発者の思考プロセスを学んできたからだ。 でも、それが今、失われつつある。
別に「最近の若者は…」みたいなことを言いたいわけじゃない。僕自身も毎日AIツールを使っているし、むしろAIを開発する側にいる。でも、これが「便利だから」と何も考えずに使うと、大切なものを失うことになる。
どうすればいいのか?
AIはもう後戻りできない。だからこそ、どう付き合っていくかが重要になる。僕が実際に試して、効果があった方法を紹介する。
AIの回答をそのまま受け取らず、問い詰める。
AIがコードを出してきたら、「なぜこの方法なのか?」と聞いてみる。ただのコピペではなく、学習の機会にする。ディスカッションできる仲間を見つける。
Reddit、Discord、Mastodon… どこでもいい。賢い人たちが集まる場所に身を置いて、「なるほど、そんな考え方があるのか」と思える議論に触れる。コードレビューのやり方を変える。
「動くかどうか」だけでなく、「なぜこのアプローチを選んだのか?」をチームで話し合う。結果よりも思考プロセスを重視する。たまにはゼロから作ってみる。
AIを使えばすぐに認証システムを作れる。でも、あえて自分で作ってみる。うまく書けなくても、自分で考えて作る経験が知識の基礎になる。
これからのエンジニアリング
これが現実だ。開発のスピードは加速し、もう止められない。オープンソースのAIモデルがどんどん進化し、気づいたら AGI(汎用人工知能)がポケットの中にいる 未来が来るかもしれない。
でも、それを理由に 「考えること」を放棄する必要はない。
未来は「AIを使うかどうか」ではなく、「どう使うか」 で決まる。AIのスピードと、人間の深い理解、その両方を手に入れる方法を見つけるべきだ。
もし、他にも「AIとどう付き合うか」についてアイデアがあれば、ぜひ教えてほしい。もしくは、「ただの老害の戯言だ」と思うなら、それでもいい。
どちらにせよ、一緒に考えていこう。
コメント
コメントを投稿