日々成長したい開発者のためのAI活用法(290ページのスライド)
(stdy.blog)先週、LINE Plusで「日々成長したい開発者のためのAI活用法」というタイトルで特別講演を行いました。
今後はYouTubeにも公開するつもりで、この数か月(あるいは数年)のあいだ考えてきたことをできるだけ全部盛り込んだところ、230ページほどになり、実際に扱えた内容はそのうち2/3ほどでした。
その後さらにしっかり修正を重ね、最終的に290ページのバージョン2が完成しました。
以下にはGeminiで要約した内容を残しておきます。
はじめに
- AIリテラシー格差: 人と人のあいだでAI活用能力の差は非常に大きく、最新のAIが何をどこまでできるのかを認識するだけでも、その差を大きく縮められます。
- 継続的な学習の重要性: さまざまなAIツールを継続的に使いながら学び、忘れる(learn & unlearn)姿勢を保たないと、差は再び広がります。
- 開発の拡張: 以前の開発者は主に「実装」の段階に集中していましたが、今ではAIを活用して、アイデアからマーケティング、運用まで、プロダクト開発の全工程に関わることが可能になりました。
第1部: コーディングアシスタントとしてAIをより賢く使う方法
- コーディングアシスタントの進化: 単純な自動補完(VSCode IntelliSense)から始まり、AIベースのコードスニペット生成(TabNine, GitHub Copilot)を経て、いまや自然言語で対話しながら0から1を生み出す「バイブコーディング」と「コーディングエージェント」の時代へと進化しています。
- AI性能とコストの変化: LLMの性能は急速に向上し、コストは素早く低下しており、AIが自律的に完了できる作業の長さや複雑さも急速に増しています。
- 開発の本質: 「コーディング」の道具はパンチカードから自然言語へと変わりましたが、「コーディングで問題を解決する人」という開発者の本質は変わっていません。
- AIへの委任と管理: AIとの協業は、人に仕事を任せることに似ています。AIの能力レベルに応じて委任の段階を調整し(通報、説得、相談、合意、助言、質問、委任)、ブラックボックスであるLLMの挙動を観察しながらモニタリングすることが重要です。
- コンテキストエンジニアリング: AIには「どうやって(How)」よりも「何を(What)」と「なぜ(Why)」を明確に伝えることが重要です。そのために、Situation、Task、Intention、Concern、Calibrationを含むSTICCフレームワークが有用です。
- ツール(MCP)の活用: コーディングエージェントの能力を最大化するために、MCP(Model Context Protocol)サーバーを活用できます。ただし、あまりに多くのツールを接続すると性能が低下する可能性があるため、ブラウザ操作(Playwright)やコード理解力向上(Serena)のような中核機能だけを選んで使うのが効果的です。
- バージョン管理の拡張: コードだけでなく、コード生成のためにAIへ渡したプロンプトやコンテキスト(計画文書など)まで、バージョン管理の対象にする実験が必要です。
第2部: プロダクト開発プロセス全体でAIをより賢く使う方法
- 問題解決フレームワーク: プロダクト開発は「問題定義 → 解決策の実装 → 変化を生み出す」という3段階のプロセスとして捉えられます。
- 「自分で使うものを自分で作る」の重要性: 「自分が使うものを自分で作る」というアプローチは、特にAIコーディング初心者にとって最高の戦略です。作りやすく、実力が素早く伸び、拡張もしやすくなります。
- ユーザー中心アプローチ: 「誰の(ユーザー)どんな問題(目的)をどう(複雑さ)解くのか」を明確に定義しなければなりません。まず最初に「自分」の問題を解決すること(ドッグフーディング)が重要です。
- プロダクト検証: アイデアの有効性検証(MVP)、市場性検証(MMP)、顧客ロイヤルティ検証(MLP)を通じてプロダクトを発展させるべきです。初期にはスケールしなくても、直接足を運びながら顧客の問題を解決する過程が重要です。
- Build in Public: プロダクト制作の過程を透明に公開しながらファンを作る戦略です。小規模な起業家に効果的で、「なぜ」と「どうやって」を中心にストーリーを伝えることが核心です。
第3部: このすべての過程で、AI時代に合わせてジュニア/シニアが効果的に学習・成長する戦略
- 重要性が下がったものと上がったもの: 特定言語の文法のような知識の重要性は低下した一方で、大きなビジョンを設定し複雑さを管理する能力、AIのミスを認識して調整する技術、深いドメイン理解、設計、学習能力などはさらに重要になっています。
- 心構え(FOMOの克服): すべての新しいツールを追いかける必要はありません。関心のあるカテゴリを決め、SNSやニュースレターなどを通じて情報が自然に流れ込むようにし、健全な好奇心を保つことが重要です。
- 学習戦略:
- 信頼できるリソースの活用: 公式ドキュメント、専門家との対話、洞察に富んだ文章を深く学ぶべきです。
- 生成的知識の追求: 「結果(完成形の知識)」よりも、その結果を生み出す「過程(生成的知識)」に集中し、ツールの使い方をツールそのものから学ぶ姿勢が必要です。
- 達人から学ぶ: 専門家には単に答えを求めるのではなく、「どんなシグナルでパターンを認識したのか」「なぜそう判断したのか」などを尋ね、思考プロセスを学ぶべきです。
- シニアの役割: 自分の暗黙知を明示知(ガイド、サンプルコード、AIルールなど)にして組織で共有し、さまざまなドメイン経験を融合して創発的なアイデアを生み出すことが重要です。
- 習慣形成: 良い習慣を一度に作ろうとするのではなく、「習慣を作る習慣」(例: 顕微鏡ふりかえり)を通じて、段階的に自分を変えていくべきです。
- 実行意図: 「明日から〜しよう」といった漠然とした決意ではなく、「いつ、どこで、どうやって」行うのかを具体的に計画する(「実装意図」)ことで、実行可能性は大幅に高まります。
結び
- 核心的な徳目: AI時代でもっとも重要な徳目は「健全な疑い」と「好奇心」です。
- AIの限界認識: AIには、コンテキスト不足、ハルシネーション、セキュリティ、コストなど、依然として明確な限界があることを認識しなければなりません。
- 最高のツール: 現存するどんなAIより優れたツールは、結局のところ人間の「頭脳」であり、これを積極的に活用すべきです。
6件のコメント
YouTubeにも投稿しました! https://www.youtube.com/watch?v=CAgn60EWDmw
YouTubeも楽しみにしています(笑)
コンテキストエンジニアリング - What+Whyで賢く指示を出す!
それだけでなく、普段から気になっていた多くの点についても明快に指摘してくださっています :)
このような質の高い情報を無料で見られるなんて、申し訳ない気持ちになるほどありがたかったです!!!!
いえ、謝るほどのことでは…(笑) もったいないお言葉、ありがとうございます。
最初のバージョンで、agent に命令を出す方法をたくさん学びました。
ありがとうございます。