AI駆動開発でSTEPNデータを取得

Web3

突然思い立ってAIでWebアプリ開発しました。いつものように組み合わせでアイデア発動です。ちょっと前から仕事の関係でAIを使った開発スタイルの見直しを考えていました。やっぱり世の中人材が集まらないんですよ・・・そうなると、世の中の流れに乗るしかないんですね、いかに自社が古臭くてもです。

AI-DLCを採用した開発サイクル

いきなり難しい単語ですね。AI-Driven Development Lifecycleといいます。私が大好きなAWS(Amazon Web Services)が提唱する新しいソフトウェア開発手法なんです。ちょっと前からAIに詳しい方たちが「アプリがあっさりできた!」とか「AIでこんなサービスできた!」と話してるのを聞いたことはありませんか?AIの性能があがり人間がプログラミングする時代が消えそうな雰囲気すらあるんです。

でも、いままでの開発スタイルはバイブコーディングと呼ばれていました。人間が手作業でプログラミングする代わりに自然言語で「こんな感じの機能が欲しい」「デザインはブルー基調で差し色としてオレンジを入れて」と指定して開発をしていきます。ただし、これは何度もAIと会話をしながら進めていくのが主体となり、コードに脆弱性が含まれている可能性がありますし、どこをどう直したがブラックボックス化しているんです。個人の便利ツールとしてアプリを作るのはいいのですが、とてもB2CやB2Bの世界には持ち込めず、部分的な採用になっていたと思われます。

そこで出てきたのがAI-DLCなんですね。といっても私も学びはじめたところなのでここでは語れませんw 簡単にいうとAIと人が会話をしながらAIが計画を作成→人が検証・許可→AIが実装→人が確認・確定 のような流れになります。

さらに旧来の技術 Gitを組み合わせることで威力を発揮します。GithubじゃなくてGitですからね!Gitを使ってブランチによる開発管理をしていきます。私もプログラミングする時は必ず使用します。解説されたブログ記事はこちらの記事が参考になるので興味ある方は読んでみてください

なんだか難しそうだね・・・でもGitは同時に複数の機能を開発したり、後戻りしたりとバージョン管理した開発ができるから重要だね!

STEPNに関するアプリを作ろう

さて、スノウはだいぶまえにiOSの個人デベロッパーでした。いくつかアプリを作ってリリースしましたが今はもうやめています。アプリ市場が飽和してますし、AIと組み合わせたWebサービスがやっぱりパワフルですしWebアプリ作ってみたかったんですよね。

AWSの認定資格をいくつか持っていますが、インフラ周りは強いのにその上で動かすアプリを作れなかったんです。そこでこのAI-DLC手法と普段から楽しんでるWeb3 / STEPNに関する自分のためのアプリを作り、問題がなければ公開してみようかなと思ったのでした。STEPNをされてるかたらなご存知のSTEPN-MARKET.GUIDEのt2さんの影響も強かったです!

t2さんのサイトはこちら!

AWS Kiroとの出会い

AWS Kiroというものはこのように解説されてます

Kiro はタスクとサブタスクを自動生成し、それらを適切な順序で並べ、各タスクを要件に紐づけることで、抜け漏れがないようにすることで、全プロセスを簡素化します。Kiro は各タスクに対する単体テストの作成、ローディング状態の追加、商品とレビュー間の相互作用のための統合テスト、そしてレスポンシブデザインとアクセシビリティについても考慮しています。

KIROは昨年のAWS re:Invent でも話題になったものでAWSの全面推しツールです。ということで開発してみました!

開発中の画面はこんな感じ

こんな感じと言われてもわけがわからないと思います。この画面が全てではないのですが、私が今回一番使っていたレイアウトを例に説明します。

  1. Gitエリア
    • ここではバージョン管理をするGitの状態を表示しています。Kiroとは関係のない部分でブランチを切り替えてテストをしたり、リリースするブランチに切り替えたりします。
  2. プログラムソースエリア
    • プログラムのソースを表示するエリアです。開発はAIがしますが、どこを直したかどんな状態なのか人がチェックするには重要な部分です
  3. Kiroと会話するエリア
    • ここでKiroと会話をしていきます。Kiroからは「こんな修正をします良いですか?」とか会話形式で進めることができますし、実際に指示を出してるところも見えますね。

今回使用したクレジット

今回まともに動くアプリまで持っていくために13.29Creditsを使用しました。これは無料プラン50Creditsのうちの半分以下です。これでも余計なことをたくさん聞いたりもしたので、だいぶ使用した方だと思います。使い切ってしまうと思ってたので意外でした!

Webアプリの完成

今回作成したのはこんなWebアプリです。私が最近STEPNする時によくしていたのが、WalkerとJoggerのCommonとUnCommonとRareの最安値を知るということでした。とにかくUCやRare靴を増やすことで20エナに到達したかったんです。「Rare靴の方が後々いいかなあ?」「クオリティを下げた靴で揃えたほうがいいかな」などなど一目で見たかったのでこの画面に行きつきました。

STEPN Floor Price Check

さてせっかく作ったのですから、無料で動く範囲ではみなさんにも使ってもらおうということで色々と改造をしていました。

  • Solana以外のチェーンに関するデータも取得
  • ClassやQualityは選択しやすく
  • Sortは3種類
  • 1000人アクセスしても、データの取得はサーバで10分に1度のみ。サービス側には負荷を与えず。

これ、Kiroがいなかったら何日間かかってましたかね・・・たぶん私のレベルだと数ヶ月はゆうにかかったのでは。それがほぼ2日で終わりました。さすがにちょっと課金したくなりましたね!

さあ、最後まで読んでいただいた方にはリンクをお教えします。急にサービス止まったらすいません、なんせ初心者なのでw

注意:このアプリは予告なく機能やデザインの修正を実施したり、停止することがあります。Xで情報は発信していますのでXも是非フォローしてください!