Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
AIと協業する開発の進め方
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Kohei Tabata
January 31, 2025
Programming
190
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AIと協業する開発の進め方
Kohei Tabata
January 31, 2025
More Decks by Kohei Tabata
See All by Kohei Tabata
営業活動なしで継続的に案件を受注する方法 / how to get a contract without sales as a freelance
nerd0geek1
2
1k
生体データを取り扱うアプリ開発の勘所
nerd0geek1
1
160
動線改善とステータス可視化で家庭内のストレスを軽減した話
nerd0geek1
3
4.6k
家庭をプロジェクトとして運営した話
nerd0geek1
2
4.4k
fastlaneの勉強会を主催して学んだこと、得たこと、悩んだこと
nerd0geek1
1
1.3k
みんなで育てるprecheck
nerd0geek1
1
860
matchとは?match導入のメリット
nerd0geek1
4
650
Improve your workflow with Sketch plugin
nerd0geek1
3
1.6k
Looking back try! Swift 2017
nerd0geek1
0
710
Other Decks in Programming
See All in Programming
UnityでSystem.Net.WebSocketsなWebSocketサーバが動かないのでUnity Monoのコードを覗いてみた / about implementing websocket server with unity mono
drumath2237
1
510
モジュールの視点からSwiftを読み解く #iosdc
s_shimotori
0
260
KiroのSpecで「五目並べ」を作ってみる
satoshi256kbyte
1
310
WebRTC映像をAirPlayに対応させる挑戦.pdf
monolithic_adam
0
330
テストを司るデーモンに会いに行く 〜隔離した仮想マシンでテストを通すまで〜
h1d3mun3
1
600
Go × SIMDで高速化するベクトル検索 ~ルーフラインモデルでSIMDが効く境界を探れ! ~
po3rin
1
5k
Streamlitで実現する自然言語データアプリ開発
ayumu_yamaguchi
1
330
[2026-09-26]空論ジェネリックプロセス~テスト資産とAIで紡ぐ、再現可能なパフォーマンスチューニングの話~
tosite
0
240
AI時代のコードレビューは人に向けるな、仕組みに向けろ
texmeijin
5
3k
標準パッケージに uuid が追加された 背景から見る Go らしい意思決定 / go_127_uuid_decision
convto
5
9.2k
Security issues being discussed on Web Platforms
petamoriken
0
1.4k
JAWS-UG 東京支部が始める、JAWS-UG支部コラボ / JAWS-UG lunchtime LT Collaboration
y0hgi
0
170
Featured
See All Featured
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
420
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
310
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.7k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.8k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.7k
How GitHub (no longer) Works
holman
316
150k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
120
120k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
510
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.6k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
270
AI Search: Where Are We & What Can We Do About It?
aleyda
0
8k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.6k
Transcript
AIと協業する 開発の進め方 2 0 2 5 / 0 2 /
0 1 沖 縄 モ バ イ ル ア プ リ 開 発 勉 強 会 K O H E I TA B A T A
自己紹介 • 田畑浩平(@nerd0geek1) • 元iOSエンジニア • 今は都内の医療系スタートアップで、 Flutter x Firebase(Node.js)を用いてプロダクト開発を行っています。
• 最近、主に使っているエディタはCursor。
AI? Browser Use OpenAI Operator
AI x サービス ・Browser Use OpenAI Operatorと同じようにブラウザ上でのAIエージェントの動作を実現する、 Pythonのライブラリ ・OpenAI Operator
ChatGPTなどを開発するOpenAIの提供するAIエージェント。ブラウザを操作する (Gemini) 中国発のAIサービス。 サーバが中国にあること、プライバシーモードの設定がないことなどから、 業務での使用は避けたほうが良いと考えられる。
AI x 開発 完全自立型のAIエンジニア($500/月) 新メンバーのオンボーディング同様、 小さいタスクから渡す、などの配慮が必要 GitHub・Slackと連携可能 CodeRabbit:コードレビューをサポートするAI Cursor:AIが統合されたエディタ。VS Codeをベースとしている。
CLINE:VS Codeのプラグイン。Cursorより柔軟性が高いと言われる。 Windsurf:最近新しく聞くようになったAIエディタ。 opencommit:commit messageを考えてくれるOSS
開発には、何を使えば良い?
なんでも良さそう
なんでも良さそう、と考えた理由 • 自己紹介でも言及した通り、日常的にはCursorを使用している • 今回の登壇に際してCLINEとWindsurfを軽く調査してみたが、 「XXXが飛び抜けて優秀」といったものはなく、どれも同程度に改善が早そう。 – ただし、CLINEはMCP連携を通じて様々な連携が可能とのことなので、そういった点では 頭一つ抜けているのかも(発表日追記 Cursorでも0.45.x系で追加されました…)。
• Rules for AIの仕組みは、いずれも単純なテキストファイルであるため、 移行も簡単にできそう。
Rules for AIって? • ChatGPTの「カスタム指示」と同じく、AIが常に参照すべき内容を記述したもの。 • Cursorであれば、.cursorrules、CLINEであれば.clinerulesが存在している。 – (追記).cursorrulesは、0.45.xから.cursor/rulesに細分化できるようになりました… •
(個人的な考え)Rules for AIに関しては、以下のようにまとめると良さそう。 – Cursorに対する指示であれば、Rules for AIのファイルに記述する – (前提を理解させるための)仕様を解説する内容であれば、documents/といったディレクトリに 集約し、その中のファイルに記述する。 – 具体例を次のページに。
None
つまり? • ある種、新メンバーをオンボーディングで迎える場合と同じ。 • メンバーに関係なく、プロダクトに関する内容(仕様)、技術スタック – ドキュメントに記載する • そのメンバーに期待する、固有の内容 –
Rules for AIに記載する
(たまにポンコツになる)AIとうまくやるために • Sourcery(iOS)やmason(Flutter)で生成できるコードはそちらで生成させる。 – ボイラープレートの元ファイルを読ませてAIに生成させようとしたが、 抜け漏れが発生するなどして、あまり効率的ではなかった。 – ボイラープレートで生成したファイルの一部について、意図に沿った修正を施す、といった アプローチが最も効率的かもしれない。 –
(上記、.cursor/rulesが追加される前に検証した内容であるため、今は変わっているかも)
(たまにポンコツになる)AIとうまくやるために • (実装者として)実装力はあるが、俯瞰的に物事を考えられないメンバーとみなす。 – 要求を明確に言語化すると、なかなか良いアウトプットをしてくれる。 • AIと協業すると、エンジニアよりディレクター的な動き方が多くなる。 – しかし、「Aということを実現したいが、Bという問題に遭遇したため、それを修正したい」と 伝えても「Bは解決できるが、そもそもAに寄与しないアプローチ」を提案することがしばしば。
• そういうものだと考えて、都度フィードバックする。 • Rules for AIに「大目標と目前の解決すべき問題が与えられた場合、アプローチを即座に提案するのではなく、 大目標にそのアプローチが寄与するか、確認してください」といった記述をしても良いかも(未検証)
(たまにポンコツになる)AIとうまくやるために • (壁打ち相手・教師として)6-8割くらい信用できる家庭教師とみなす – AIを使う都合上、ハルシネーションが発生するのはやむをえない。 • そのため、100%信用することはできず、しれっと嘘をつくことがある。 • なので、疑問があればAIを詰めて深堀りすることが大事。 –
その一方、自分が不慣れな領域において、全体像をキャッチアップするには大いに役に立つ
まとめ • AIとハサミは使いよう。 – テストコードの生成や似た機能を参照しながらの実装などではかなり生産性を上げられる – その一方、抽象度が上がった問に対しては、適切なガイドが必要 • 賢いモデルを使えばよしなにやってくれるかもしれないが、その分、費用が… •
進化早すぎ – 先週末に登壇資料を作ってから、この1週間で追加された機能も多い。 – 最新の情報は、キミの目で確かめてくれ!