Vibe Coding を2週間くらい続けてみた
Vibe Coding を2週間くらい続けてみた
CursorやClaudeなどのAIツールを取り入れながら、CameraXベースのカメラアプリを2週間かけてリビルドした記録です。技術的なアップデート内容(Camera2→CameraX、DataBinding→Compose など)から、Vibe Codingによる開発スピードの向上、AI活用のメリット・注意点、そして今後の展望について率直にまとめました。「AI時代における個人開発のリアル」が気になる方におすすめの記事です。
作っているもの
CameraXを使ったカメラアプリ
こちらは私が一人で終業後に小さく作っているカメラアプリです。
もともとこのアプリは2年ぐらい前にCamera2を使ったカメラアプリとして作成していました。
しかし、その後モチベーションがなくなり、2年ほど放置。
ところが最近になってVibe Codingの波が来て、私個人でもCursor、Claudeなどを導入したため、このアプリを育て直すことに決めました。
使っているツールと役割
ここでは私が開発で使っているツールと、それぞれの果たす役割をご紹介します。
-
Cursor
主に素早くソースコードに変更を加えたいときに使用するエディタ。これによって、手作業で行ったら30分はかかる作業が2〜3分で完了するようになりました。 -
Claude
Cursorでは拾いきれなかったバグの検出や、プロジェクトファイルを読み込ませて修正したり、リファクタリング計画を立てる際に使用しています。現状の理解と今後の計画がよりスムーズに立てられるようになりました。
2週間でやってきたことはこちら
この2週間で行ってきたことは以下のとおりです。
- Camera2 → CameraX への置き換え
- DataBinding から Compose への置き換え
- Coil 導入
- MVP → MVVM への変更
- Android 15 への対応
- フラッシュライト対応
- その他、ライブラリのアップデート
Camera2は実装のために複雑なコードを必要とし、端末の互換性にも若干問題があります。そこで、より新しいカメラライブラリであるCameraXに置き換えました。
また、UIは従来のXMLベースの命令型から、Jetpack Composeを使った宣言型UIに変更。これにより、より現代的な画面を簡単に実装できるようになりました。
感じたメリット
AIツールを導入して感じられたメリットは以下のとおりです。
- 作業スピードの大幅な向上
- 現状の実装から、どこを対応すべきか目星がつけやすくなった
- READMEなどのドキュメント更新の手間がかなり軽減された
- 精神的な負担が減り、終業後の個人開発が継続しやすくなった
特に全体のスピード感は大きく向上しました。XMLからComposeへの移行では、通常2日がかりで行うような作業を即日で完了できたほどです。
また、開発の中で後回しにされがちなドキュメント更新もスムーズに行えたおかげで、過去最高に整ったREADMEが作れたと感じています。
行う上での注意点
ただし、Vibe Codingにもいくつか注意点があります。たとえば、以下のようなことです。
- 指示の仕方が悪いと、既存の機能にまで影響が出てしまう
- 例:カメラ切り替え機能を指示したとき、カメラ画面が真っ暗になってしまった
- 開発者がある程度の仕様や技術知識を持っていないと、AIの提案を適切にレビューできない
- 理解しないままコピペすると、エラー解消でつまずき、かえって開発が進まなくなる
- 例:Android 15 対応時にコピペしすぎて、エラー連鎖に陥った
特に、自分が理解しきれていないライブラリや権限まわりについては、しっかり読み込んだうえで判断する必要があると反省しています。
Android 15 対応のときには、エラーを解消しても別のエラーが出るという無限ループに陥り、その日は作業を断念しました。
翌日はその反省を踏まえ、AIの提案を理解したうえで作業したところ、無事に作業を完了できました。
今後もうまくAIとバディで開発するために
今後もAIと良好な関係を保ちながら開発を進めていくために、以下の点を意識しています。
- 変更履歴を毎日記録する
- AIからの提案は、自分が納得するまで繰り返し読み込む
- 今後も人間側が学習し続ける
- 「AIはアシスタントであって外注先ではない」ことを意識し続ける
最近は「AIに丸投げしてアプリを完成させた」といった話題が注目を集めていますが、私としてはそれには慎重であるべきだと考えています。
AIの提案を開発者自身が正しく評価できないと、大きな落とし穴にはまるリスクが高まるためです。
したがって、AIはあくまで「頼れる相棒」であり、「責任を取ってくれる外注先」ではないという姿勢を忘れないようにしています。
今後やりたいこと
現在もリポジトリの更新を継続中です。「VtuberCamera」と名付けたこのプロジェクトでは、アバターモデルの導入を視野に入れながら、以下のような機能を追加していきたいと考えています。
- 顔認識機能の追加
- Hiltの導入
- アバターモデルの導入
もちろん、やりたいことリストは今後もアップデートされていく予定です。より楽しく、実用的なアプリに育てていければと思っています。
Discussion