Vibe Codingで、株式投資管理ツールを作ろうと思った話(その1)

AIを本格的に使い始めた背景

ここ1年ほど、仕事でもAIの恩恵を受けている。
私が主に使っているのは半導体設計向けのEDAツール(シミュレーションなど)だが、エラーが出たときにエラーメッセージをCopilotやChatGPTに貼り付けて、原因や対処の当たりを付けることが増えた。

プライベートでも、2025年12月からGoogle検索の代わりにAIを本格的に使い始めた。
旅行に行くときは観光スポットの候補だけでなく、「どういう順番で回ると効率がいいか」までルート提案してもらえる。
ときどき事実と違うことを混ぜてくることはあるが、何度聞き直しても嫌がられないので、相談相手としてはかなり優秀だ。

YouTubeを中心に情報収集をしていると、AI活用事例としてよく紹介されていたのは、

  • 会議の議事録作成
  • スライド資料の作成
  • メール文章の作成

といった、いわゆる業務効率化の文脈だった。

どれも確かに便利そうではある。
ただ、正直なところ、それらに強い興味を持つことはなかった。

私が本当に興味を持ったのはプログラミング

AI活用の話題を追いかける中で、私が一番惹かれたのはプログラミングへの応用だった。

コードを書いてくれること自体よりも、
設計や考え方を一緒に整理してくれる存在としてAIを使えるのではないか
そこに強い可能性を感じた。

これまでプログラミングは、

「仕様を考える → 実装する → 詰まる → 調べる」

という流れが当たり前だった。
そこにAIが入ることで、「考えながら一緒に作る」という感覚が現実になりそうだと思った。

仕事でプログラムを書いているからこそ感じた違和感

私は仕事で日常的にプログラム開発を行っている。
要件を整理し、設計し、コードを書き、テストし、修正する。
そうした一連の流れには、ある程度慣れている。

そんな立場でAI界隈を見ていると、最近よく目にするのが
「Vibe Codingが流行っている」という話だった。

ノーコード開発が魔法のように語られる世界

YouTubeやSNSだけでなく、TVコマーシャルでも、

  • ノーコードでシステム開発ができた
  • プログラミング不要でアプリが完成した
  • AIに任せるだけで業務が変わった

といったメッセージをよく見かけるようになった。

技術的なハードルが下がるのは良いことだと思う。
一方で、プログラムを書く仕事をしている身としては、

「本当にそれで、作りたいものが作れるのか?」

という疑問も自然と浮かんだ。

手始めにC言語で小規模な関数を書かせてみた

いきなりVibe Codingで大きなツールを作る前に、まずは様子見として、C言語で小規模な関数を作らせてみることにした。

題材に選んだのは、メモリの動的確保と解放を行う処理。
いわゆる malloc / free を自前で実装するケースだ。

Geminiに投げたプロンプト

Geminiには、次のような指示を出した。

「指定したメモリ空間の中で、メモリ管理を行う関数を作成してほしい」

すると、ものの10秒ほどで、

  • my_malloc()
  • my_free()

といった関数を含むコードを提示してきた。

想像以上に“ちゃんとした”実装だった

単にメモリを確保・解放するだけでなく、

  • 管理用のメタ情報を持つ
  • 空き領域をリストで管理する
  • my_free() 時に前後の空き領域と自動でマージする(これは、メモリ断片化(フラグメンテーション)を防ぐための実装)

といった処理まで含まれていた。

「周辺全部」まで揃えてきたのが衝撃だった

驚いたのは、my_malloc()my_free() だけではなかった。

  • 空き領域を linked list で管理する構造体
  • デバッグ用にメモリ使用状況を表示する関数
  • 使用例を含む main() 関数

つまり、そのままコンパイルして実行できる最小構成が、まとめて提示された。

実際にすぐコンパイルして実行し、動かすことができた。
「動くところまで一式そろったコード」が10秒で出てくる。これは正直かなり衝撃だった。

実装方針まで提案してくるAI

さらに驚いたのは、コードの説明だけで終わらなかったことだ。

  • 4バイトや8バイト境界にアラインメント調整する機能は必要ですか?
  • 今回は First Fit(最初に見つかった空き領域を使う方式)で実装しています
  • Best Fit(要求サイズに最も近い空き領域を探す方式)にも変更できますが、処理時間は少し長くなります

正直に言うと、First Fit や Best Fit という用語自体、このとき初めて知った。

「コードを書くAI」ではなく「設計を議論できる相手」

この体験で感じたのは、AIはすでに「指示されたコードを書く存在」を超えている、ということだった。

実装方針の選択肢を示し、それぞれのメリット・デメリットまで説明してくる。
これはもう、コード生成ツールではなく、設計を一緒に考える相手に近い。

ここで「Vibe Codingいけるかも」と思った

この体験を通じて、

  • 細かい実装はAIに任せる
  • 自分は目的や要件に集中する

というやり方なら、「手間がかかる複雑な処理や、GUIを一から作るのが辛い」という問題も突破できそうだと思えた。

ここで初めて、Vibe Codingを本気で試してみよう、という気持ちが固まった。

次回は、もう少し大きな要件をVibe Codingで試してみる話をする予定。

 

スポンサーリンク