Androidエンジニアは働かないで稼げるか試してみた(生成AI)
生成AIの進化が早く普段の業務でもお世話になっている人は多いのではないかと思います。
僕も普段からChatGPTやCopilotにお世話になっているのですが、
主導権は僕が持ってサポートしてもらう関係性となっています。
働きたくない!! 強い意志でそう考えている僕は生成AIのみでアプリを作らせて僕は寝てたらお金が入ってくる状態にできないか検証しました。
結論
無理
ChatGPTに丸投げしてみた(GPT-4o)
あなたは天才的にかっこいいデザインを考えられるうえにマテリアルデザインも極めており、
ユーザビリティも考えられる超優秀なAndroidエンジニアです
的な設定にしました。
そして
以下のapiを利用したアプリを作成してください
モジュールの分割など全てお任せします。
仕様としてはおしゃれな一覧画面と一覧画面の要素をタップしたら詳細画面へ遷移することです。
https://dog.ceo/dog-api/
成果物はzip形式でプロジェクト一式をください
と依頼します。
その成果物がこちら
※正確にはこれより酷い状況だったから何回か修正依頼してこれになった
初回からそうだけどGradle関連がボロボロでちょっと厳しいのでそっ閉じしました。
※なんならGradleファイルが入ってないことすらあった
明確な1処理を作ってもらうには便利ですが、アプリを丸っと作ってもらうのは難しそうです。
※o1-previewだとzipでプロジェクト一式の作成ができないので4oにしています。
ただ、作成してもらうのは微妙でしたがモジュールの切り方や必要なクラスやライブラリの設定はそれほど変ではなかったので人間が手を動かすなら引き続き役立つ認識です。
Cursorを使ってみた
※こちらは初体験なので使い方が微妙だったりするかもなので、その点ご注意ください
プロジェクト一式の作成は依頼できなさそうなのでAndroidStudioで新規アプリ作成までやってからCursorで開きました。
まず初めに@Docsを使ってnow in androidとDroidKaigi/conference-app-2024と公式を学習させました。
僕より圧倒的に優秀なAIが完成したので依頼します!
@Codebase
以下の仕様でAndroidアプリを作成してください
以下のAPIを使って一覧画面と詳細画面を作ってください
@https://dog.ceo/dog-api/
一覧画面は20件ずつページング
詳細画面は画像を大きく表示して、APIから取得した犬の情報を表示してください
どこまで依頼すればいいのか分からなかったので雑に依頼しています。
- gradleへ必要なライブラリの記載
- Retrofitを使った通信処理〜ViewModelまで用意してくれた
- 指定しなくても画面はフルComposeで出力してくれた
が、ここから地味に長い戦いが始まる
- import文が書かれていないため、ほぼ全クラスでエラー(人間が直してしまった)
- Navigation関連は何も作ってくれていなかったので追加依頼
- manifestにActivityの指定がなくて起動しない
- packageの記載がない
- packageの記載がないのにmanifestの指定が.MainActivityになってるからクラッシュ
- 使用しているライブラリがgradleファイルに記載されていない
など人の手で作ったら発生しないような問題がちょいちょい出てきました。
が、ページング動作もしてAPIキックして画面に表示するアプリは本当に(ほぼ)人の手を使わずに完成しました。
※発生したエラーを貼り付けて直してって依頼を繰り返すので人の手で直した方が早い可能性もあるレベルではあるけど
生成したアプリ
ソースコード
※一覧画面で画像をタップするとNavigationの問題でクラッシュします。(もう面倒になった・・・)
最後に
- 完全自動生成に近づきつつあると思うが知識がある人間が対応した方が早くて安心
- ほぼ知識の無い人が思った通りの動く物を作れる世界に突入してはいる
- 学習させたつもりになっているnow in androidなどのRepositoryをしっかり活用できればもっと制度が上がる可能性はある(今回は上手く使えていない可能性が高い気がする)
人の手を入れずに動く物を作るだけが目的なのでコードレビューなどしてないので、
その辺のツッコミはなしでお願いします。
※気が向いたらコードレビュー記事でも書くかもしれません
Discussion