はじめに#
假名私塾(Kana Juku)は、私が初めて制作してApp Storeにリリースしたアプリです。
経験談としては一番まとまった流れがあるので、
本シリーズでは制作プロセス、AI活用とその変遷、公開コーパスの利用と著作権などについて書いていきます。
他のアプリで特筆すべき点があれば、別途記事にする予定です。
本記事では主に**[25年第4四半期]**から始まったチャットボットからエージェントへの転換プロセスについてお話しします。
関連する製品の変化はとても速いので、重要な時間軸はそのまま直接記載しています。
アプリ紹介#
Apple製品をお持ちの方は、ぜひダウンロードして遊んでみてください。
今後の記事でもこのアプリを例に使う予定です:
ETLコーパスの整理、Apple Create ML、PyTorch、VOICEVOX、端末上のローカル大規模言語モデルなど…
假名私塾: URL
開発タイムライン#
動機#
私も家族も日本語学習に興味があり、ずっと前から自分のニーズに完全に合った日本語学習アプリが欲しいと思っていました。
家族の悩みは英語がわからないこと。大半の教材や他のアプリのローマ字表記が読めないのです。
私自身は、仮名と字源を対照できる機能がとても欲しかったです(例えば「あ」の字源は「安」)。
そして地味な悩みとして、日本語キーボードをインストールしておくとたまに使うのですが、毎日の文字入力で入力方法を切り替える際に邪魔になり、日本語キーボードを一回余計にスキップしなければならないのです。
前期準備#
[24年第4四半期]
この時期は転職の合間で仕事がなかったため、Udemyの講座を見る時間がありました。JavaScriptの経験があったので、まずReact.jsとExpoから入りました。
この時点では講座の内容に沿って非常にシンプルなウェブ型コンテンツを作っていました。GPS制御やカメラ制御、リモートデータの取得といった機能も少し触りましたが、Appleの自社エコシステムではないため、管理すべきことが余分に多かったです。
[25年第1四半期]
長い間迷った末にMac miniを購入してからは、完全にApple純正のSwiftUIに切り替えました。こちらもUdemyの講座で学習しました。
時間の大半は基本的なUIコンポーネントとレイアウトの習得、そしてデータの永続化、データ取得、地図の組み込みなど、すべての基本機能に対応するSwiftUIの書き方の理解に費やしました。
SwiftUIはより現代的で、UIKitのようにXcodeと完全に結合しているわけではありませんが、レイアウトの最終的な見た目が予測しにくいという面もあります。最初はとても気になって、試行錯誤に多くの時間を費やしました。
[25年第3四半期]
普段は仕事があり夜しか書けず、毎日時間が取れるわけでもないので、進捗はとてもゆっくりでした。基本的なプロトタイプを作り上げて、日本語のデータを組み込んでいく作業です。
最初のアプリは完成形が予測しにくいので、頻繁に修正したり、必要だとわかった部分に戻って動画を丁寧に見直したりしていました。基本的には授業料を払っている段階ですね。
ここまで、**[24年第1四半期]**から含めると、実はChatGPTのような普通のチャットボットだけでもプログラミングにはかなり役立っていました。
しかし、コピー&ペーストと大量の背景説明にとても時間がかかり、結果は一発で上手くいかなかったり方向がずれたりすることも多く、
またコピー&ペーストの手順に戻るという繰り返しで、良い循環に入ることが難しく、学習の参考程度にしか使えませんでした。
この時期に最も流行っていたのはCursorエディタで、Tabキーによる自動補完機能が特徴でしたが、使用量に制限があり有料サブスクリプションが必要だったため、試しませんでした。
同時にClaudeもプログラミング能力の高さで人気が出始めており、ローカルPCで動作するAIエージェント「Claude Code」もリリースされていましたが、これもサブスクリプションが必要だったため試しませんでした。
AIエージェントへの転換#
[25年第4四半期]
この時点で、私はチャットボットのサブスクリプションは最大でも同時に一つだけと決めており、ChatGPTからGoogle Geminiに乗り換えたばかりでした。
ちょうどSpec-Driven Development(SDD)が話題になっていた時期で、GeminiもClaude Codeに対抗するエージェント「Gemini CLI」をリリースしたので、ついに試してみました。
エージェントを使うとコピー&ペーストの手順が不要になり、効率が大幅に向上することに気づきました。修正後にコードを貼り直してどの行を修改すべきか探す手間もなくなりました。
この時点で、プログラミングにはチャットボットではなくエージェントを使うべきだと確信したので、Claudeのサブスクリプションに切り替えてClaude Code(以下CC)を使い始めました。
CCのモデル能力は確かに強力で、対話の理解と実行が期待通りになる確率がすでにかなり高かったです。
コンピュータの操作とOpus 4.5#
ある時、Mac miniのストレージが満杯になって使えなくなりました。私はCCに直接「どうすればいい?」と聞きました。チャットボットのウェブ画面で聞くのと同じ感覚で。
CCは具体的な解決策をすぐに提示してくれました:どのディレクトリを削除できるか、どれを外付けハードディスクに移動すべきかなど…
コンピュータを壊されるのが心配だったので、一歩ずつ許可を出しながら操作させました。結果、すべて無事に完了しました。
私はmacOSやXcodeのビルド環境にあまり詳しくないのですが、この時AIはあらゆる分野において(私が詳しくない分野も含めて)80点以上の理解力を持っていると気づきました。そしてプログラミングができるということは、コンピュータを操作できるということとほぼ同義なのです。
CCは直接コンピュータを操作できるため、ディレクトリ間を自由に行き来し、コードを書いた後にエラーを自分で発見し、自分で修正する。完全に好循環に入っていました。
エージェントを使った開発速度は比較にならないほど速く、3ヶ月遅れてCCに切り替えた自分がとても愚かに思えました。
主観的にも客観的にも、この時間の浪費は相当なものでした。
主観的には、もし最新のツールをもっと早く採用していれば、最初の3ヶ月の作業量は2〜3週間で完了できたはずです。
客観的には、最新ツールを使っている他の人は、あなたより効率が高く、あなたより早くプロダクトをリリースしています。
前述の「試さなかった」判断は、30分か1時間の時間と、数百円のサブスクリプション代を節約しましたが、結果的には大切な人生の時間を大量に浪費してしまいました。
これが、今多くの人がAIの最新プロダクト情報を熱心に追いかけている理由かもしれません。
少なくとも私はそうです。常に最新プロダクトに注目し続けざるを得ません。時間管理におけるリスクヘッジのためです。
[2025年11月24日]
Opus 4.5がリリースされました。OpusはClaudeの最上位モデルで、この時4.5がリリースされました。
前バージョンと比べて各方面で性能が顕著に向上しましたが、最大の違いは意図の理解力です。
旧バージョンは「指示されたことをそのままやる」だけでした(実際にはそれでも十分優秀でしたが)。4.5からは、要求を受け取った後にある程度の要約と計画を行うようになりました。人間に例えるなら、「より機転が利く、経験豊富な人」になったということです。
どのファイルをどう修正するか具体的に指示する必要がなくなり、マネージャーや上司のように最終的な要求を伝えるだけで、CCが展開して次の1〜2ステップを計画してくれます。
この計画能力による効率の向上はさらに大きなものでした。前述の通り、AIはあらゆることについて8割以上の知識を持っており、次の1〜2ステップの作業を自主的に行い、しかもきちんとこなします。
これにより抽象度が大幅に上がり、CCに外注する範囲がどんどん広がり、次第に自分でコードを確認・修正する必要がなくなっていきました。
Opus 4.5の登場以降、コミュニティでの「AIにプログラミングを任せることの是非」に関する議論は終わりを迎えました。
フルタイムのソフトウェアエンジニアや熟練者にとってどうかは、私には想像がつきません。
少なくとも自分自身と比較すると、以前は1〜2年かかっていたことが2〜3ヶ月で完了するようになりました。
成果物は自分の認知の境界から少し外側に広がったレベルに留まり、むしろ私自身が最大のボトルネックになっています。
この記事はここまで
