「アンチAI」AI駆動開発勉強会の沖縄支部第1回の登壇資料

2025年5月30日、Microsoft Base 那覇にて、AI駆動開発勉強会 沖縄支部 第1回が開催されました。

この記事は「アンチAI」というタイトルで登壇した筆者の発表をブログとして残したものです。

発表当初の内容に加え、いくつか補足情報(リンクなど)を加えています。

スライド0ページ目

自己紹介

スライド1ページ目

eetann(えーたん)というニックネームでブログを書いたりしてます。
仕事ではアプリやサイトを作ったりインフラ触ったり。いろいろやっている人間です。

話したこと

スライド2ページ目

前半はAIとの距離感について。後半はそれを踏まえて、AIによるコード編集の裏側について話しました。

イライラしてた

スライド3ページ目

この1年でAIはめちゃくちゃ普及しましたが、筆者はAIに対してイライラしてました

スライド4ページ目

たとえば「AIに生成させた文章」をただ垂れ流すだけの記事が増えたり。

スライド5ページ目

「このツール以外は時代遅れだ」みたいな煽る投稿や発言も増えました。

スライド6ページ目

チャットの入力画面で、「改行したかったのにEnterで送信されてイライラ……」というのもかなりあります。

スライド7ページ目

他にも細かいイライラが積み重なり、 「AIなんて、AIなんて……!」 という気持ちでした。

スライド8ページ目

AIを使ったら生産性が上がるのは分かってました。でも皆みたいに盛り上がれないしイライラする……。

「……このままじゃ置いてかれる……!」

イライラの原因を整理してみる

スライド9ページ目

というわけで、いったん落ち着いて一つひとつ整理してみました。

スライド10ページ目

たとえば生成記事の問題。
「どうせAIに書かせるんならプロンプト工夫すればもっと読みやすくなるのに!」などなど。

よく考えると、AIが書いているからじゃなくて、「AIの使い方」に対してイライラしてました。

スライド11ページ目

他のイライラポイントについても一つひとつ整理していくと、だいたいはAIを使う 「人間」や「インターフェース」に対しての不満 でした。

スライド12ページ目

AIに対しては、申し訳なく思ってます。

もっとAIと仲良くなるために

スライド13ページ目

一応AI検索やチャットは使ってはいましたが、もっとAIと仲良くなるために試行錯誤してみました。

スライド14ページ目

まず、1週間毎にAIツールを変えてみました。

スライド15ページ目

モデルもいろいろ試しました。

「このモデルは言われたことだけキッチリやるタイプだな」「この子めっちゃコメントアウト追加してくる」みたいな肌感が分かってきました。

※ モデルの支払いをいろんなところでやるのは面倒であるため、筆者はOpenRouterを使っています。詳しくは別の記事【画像付き】OpenRouterのAPIキー取得・支払い方法・使い方をご覧ください。

スライド16ページ目

AIの「口調の変更」も仲良くなる施策として良かったです。
これは単にモチベーションが上がるだけじゃなくて、「自分にとって読みやすい文章」になるメリットがあります。

たとえばギャルとかおじさん構文だと絵文字が多めになります。

筆者は「快男児でフレンドリーな先輩」にしています。

スライド17ページ目

さらに仲良くなりたい

スライド18ページ目

どうせならもっと仲良くなりたいので、AIコード編集ツールの実装を追って自作してみました。

GitHub:eetann/senpai.nvim
紹介記事:Neovimの履歴管理ができるAIプラグインsenpai.nvimの使い方

ここではその開発で得た「学び」の一部を紹介します。

AIにコード編集をさせるとは?

スライド19ページ目

AIにコードを編集させるということは、「どのファイル」の「どの部分」を「どう編集するか」をテキストで表現してもらうことになります。

これだけでもかなりの実装パターンがあります。

スライド20ページ目

一番単純なのは編集後のファイル全体を吐き出させる方式です。実装は本当に楽ですが、ファイルが大きくなればその分時間もお金もかかります

スライド21ページ目

「8行目を編集」のように「行番号」を指定させる方式はうまくいきませんでした。AIは行数をカウントするのが苦手なようです。

スライド22ページ目

一番メジャーなのが、検索して置換する方式です。

この検索する「もともとのテキスト」の「スペルミス」なども「そのまま出力」してもらえるように念押しをしたり、意外とプロンプト側の工夫も必要です。

スライド23ページ目

ここまでの例では分かりやすく日本語で表現しましたが、実際には上の画像のように特定のフォーマットに沿って出力させます。

スライド24ページ目

よく見かけるのがXML形式の出力です。コンフリクトマーカーと組み合わせているケースが多いです。

スライド25ページ目

単純にdiff形式のパターンだったり、独自の形式もあります。

スライド26ページ目

まだまだおもしろい部分はありますが、発表としてはこのぐらいです。興味が湧いた方は別の記事AIコード編集ツールの開発備忘録をご覧ください。

スライド27ページ目

まとめ

スライド28ページ目

まだ全然AIを触っていないという人は今のうちに触り始めましょう。
すでに触っている人は裏側を覗くと「かなり楽しい」ので、どうですか?。


登壇の感想

久々の登壇でした。「自分がいいな・面白いなと思ったこと・その手法」を発表するのは好きなので登壇の機会をいただけて感謝です。

筆者は前職では会社のブログを書いていたのですが、その記事を覚えていて発表後に声をかけてくださった方がいてうれしかったです。

懇親会で「プロンプトをどう書いているのか」という点について、抽象的ではなく具体的な会話ができました。これについては後日別の記事として書きます。


以上、AIDDの沖縄支部第1回「アンチAI」の登壇資料でした。

今回の登壇資料はSlidevを使って作りました。AIとの相性がめちゃくちゃいいので後日ブログに書きます。
この記事の画像の右側に黒い線が見えるのはSlidevのエクスポート機能で「ブラウザをスクショ」しているためです。