はじめに
2025年、私は生成AIを活用しながら、プログラミング学習プラットフォーム「LTech」を個人開発しました。
この記事では、1年間の開発を通じて生成AIをどのように使い、どのようなことを学んだかを振り返ります。
なぜプログラミング学習プラットフォームを作ろうと思ったか
エンジニアの仕事の傍ら、プログラミング講師の仕事をしていました。数年前から「体系的に学べるプログラミング学習プラットフォームを作りたい」と考えていたものの、一人でサイトを作るとなると作業量が膨大で、現実的には無理だと思っていました。
記事執筆、コーディング、認証や通知などの機能開発。すべてを自分で回すには、時間が足りませんでした。
しかし、生成AIの登場により、その壁を越えることができました。
LTechとは
LTechは、プログラミング学習者のためのオンライン学習プラットフォームです。次のような特徴があります。
- HTML、CSS、JavaScript、Node.jsなどの基礎を段階的に学べる
- ブラウザ上で動くコードエディタで、実際に手を動かしながら学習できる
- 各レッスンにクイズと演習問題があり、理解度を確認しながら進められる
個人開発でありながら、200以上のレッスンとクイズ、演習問題を抱える規模になっています。
LTechにはこちらのリンクからアクセスできます。
https://learning-tech.jp/
生成AIをどのように使っているか
最初はClaude、ChatGPT、Cursorを使い分けていましが、今はCursorのみを使っています。一つのツールで記事作成からコーディングまで完結できること、プロジェクトの文脈を渡しやすいことが理由です。
記事を作成するまでの工程
LTechのメインコンテンツはプログラミングの学習記事です。記事を作成する際の流れと担当は以下の通りです。
| タスク | 担当 |
|---|---|
| 1. 学習テーマの策定 | 人 |
| 2. 技術情報の調査 | AI |
| 3. 記事の作成 | AI |
| 4. 記事の品質チェック | 人 |
| 5. コーディング | AI |
| 6. 最終的な品質チェック | 人 |
このうち、3. 記事の作成と5. コーディングは、人がやるととても時間がかかる部分でした。その部分をAIに任せることができるようになったことで、個人開発が現実的なスピードで進むようになりました。
生成AIが活かせる部分
出発点はAI
「ゼロから考える」のではなく、「AIの出力から始める」 という使い方が効果的だと感じています。
0から0.8を作るまではAIが活かせます。たたき台、下書き、初稿…こういった情報の生成はAIが高い生産性を発揮する分野です。
定型的な作業はAIが圧倒的に速い
記事ページ等、似たようなページの量産はAIが圧倒的なスピードでアウトプットを出してくれます。決まった形の開発については、AIを使った方がはるかにスピードが速く、精度も高いです。
こういった定型的な作業については、もはや人がやる必要性はほとんどないといってよいでしょう。
技術的な知識はAIの方が正確
言語仕様のようにすでに答えがある情報については人よりAIの方が正確です。
生成AIが活きない部分
0.8 → 1 にするのは人の仕事
AIが作った0.8を1にする作業は、人がやる必要があります。なぜなら、人間にとってわかりやすいかどうかは人にしか判断できないからです。
AIは情報を生成できますが、それが読む人間にとってわかりやすいかどうかの判断は、人にしかできません。「この説明の流れは初心者には伝わらない」「この表現は誤解を招く」。こういった感覚は、人間だからこそわかることです。
AIのコードは局所最適になりやすい
AIは目の前のタスクを解くコードを書くのは得意ですが、コードベース全体を俯瞰することはあまり得意ではありません。AIの生成したコードを積み上げていくと、複雑に絡み合ったスパゲティコードが出来上がります。全体最適を保つのは人間の役割です。
生成AIの限界
1年ほど生成AIを使い続けて気づいたのは、「人間が品質保証できる範囲がサービスとして提供できる上限だ」 ということです。
AIがどれだけ速くアウトプットを出してくれても、それをレビューして判断できる知識と経験がなければサービスとして公開することはできません。コードのセキュリティ問題、記事の誤った説明、保守性に問題のあるコード。これらを見抜けなければ、速さが逆にリスクになります。
「AIを使えば初心者が何でも作れる」というわけではなく、むしろAIを正しく使うには一定の経験が必要だと感じています。
どのように生成AIを使うのが有効か
全てをAIに任せるやり方は現段階では難しいというのが私の結論です。また、今後も全てをAIに任せるということはやらないでしょう。サービスを利用するのが人である限り、最終的な品質の担保は人がやる必要があると思います。
一方で生成AIを使ってLTechをリリースすることができたように、生成AIを有効に使えば以前は一人ではできなかったことができるようになります。私にとって機能した使い方は次のとおりです。
出発点はAI、仕上げは人。
- 調査 → AIに任せる
- 草稿・ひな形の生成 → AIに任せる
- コーディング → AIに任せるが、全体整合は自分が保つ
- 品質チェック・方針決定・全体設計 → 自分がやる
おわりに
生成AIがなければ、LTechは今も「いつか作りたいもの」のまま止まっていたと思います。
一人ではどうにもならなかった作業量を、生成AIを使うことで補うことができました。これは革新的なことであり、私の18年のソフトウェアエンジニアのキャリアの中で1番の変化だと言えます。
一方で生成AIは魔法のツールではなく、生成AIを効果的に使うには人間の知識と判断力が問われると感じます。AIが作るものの品質はAIを使う人間の知識に依存するのもまた事実です。
生成AIは開発のやり方を大きく変えましたが、その変化は人間を不要にするものではなく、人間の知識と判断力をより必要とすることになるでしょう。今後もこの姿勢で生成AIを活用していくつもりです。
LTechについて
LTechは、プログラミング学習者のためのオンライン学習プラットフォームです。HTML、CSS、JavaScript、Node.jsをコードを書きながら段階的に学べます。
この記事が、生成AIを活用した個人開発に興味がある方の参考になれば幸いです。質問や感想があれば、コメントでお知らせください!