ラバーダックAI
デバッグのすゝめ
自己紹介
オカダゲンヤです。
フロントエンドのプレイングマネージャーをしていることが多いです。案件の交通整理や中長期で続くチームづくりをしています
まず始めに
ラバーダックデバッグ is…?
ラバーダックデバッグ is…?
ラバーダック・デバッグ(英語: Rubber duck debugging)とは、ソフトウエア工学におけるコードのデバッグ手法である。ラバーダック・デバッグは、アンドリュー・ハントとデビッド・トーマスの共著によるThe Pragmatic Programmer[1]という本で紹介された、(中略)しばしば様々な無生物が用いられている。
プログラマーの多くは誰かに問題を説明した経験があり、その相手はプログラミングの知識が全くないこともあり得るが、問題を説明している過程で解決策を思いつくことがある。
引用: ラバーダック・デバッグ - Wikipedia
https://ja.wikipedia.org/wiki/%E3%83%A9%E3%83%90%E3%83%BC%E3%83%80%E3%83%83%E3%82%AF%E3%83%BB%E3%83%87%E3%83%90%E3%83%83%E3%82%B0
問題を説明している過程で解決策を思いつくことがある
答えを見つけられそうな場合は仮定の詳細を壁打ちするだけで問題が解決することが多い
それではラバーダックAIデバッグをどう捉えればいいのか?
ラバーダックAIデバッグ is…?
「知らんけど」と言ってくれるアヒル。
Deno+Prisma+PlanetScaleで
接続エラーになる
エラーの内容を投げてみる
例えば
原因
PlanetScaleのread/write権限のみのユーザーが原因だった。(scheme変更権限がなかった)
「知らんけど」の価値
エラーが起きている時に当事者は近視眼的に問題と捉えていることが多い。
意見としての質を問わないが頓珍漢ではない意見は思考の幅を作る
三人寄れば文殊の知恵
まとめ
Next Googleとして課題に対して「いい感じに」サジェストされるようになっているので
道具をうまく使いこなして楽しみながら技術と向き合っていきましょう
おまけ1
プロダクトのコードをChatGPTに投げていいのか問題
OSS上のエラーや質問なら問題はない。
プロダクトのコードを質問のテキストに入れるやり方はテキスト自体をOpenAIが閲覧、利用できる規約になっているのでやってはいけない。
おまけ2
Insights are often found by simply describing the problem aloud.
多くの場合、問題を声に出して説明するだけで洞察が得られます。
引用: ラバーダック・デバッグ - Wikipedia
https://ja.wikipedia.org/wiki/%E3%83%A9%E3%83%90%E3%83%BC%E3%83%80%E3%83%83%E3%82%AF%E3%83%BB%E3%83%87%E3%83%90%E3%83%83%E3%82%B0
ご清聴ありがとう
ございました!