ラバーダッキングで問題解決!

エンジニア、デザイナー、マネージャー、どの職種でも担当するプロジェクトや業務に悩みはつきものです。こういった悩みの解決法のひとつである「ラバーダッキング」を紹介します。

ラバーダッキングとはなにか?

ラバー・ダック(英語:rubber duck、ゴム製のアヒルのおもちゃ)を相談相手に見立てて悩みを相談するという解決方法です。

▼ラバーダックのイメージ(参照元:いらすとや

かすかな不安を覚える方も少なくないとは思いますが、古くから認知科学やIT開発の現場では用いられている解決法です。
ただし、職場でラバーダックに向かって真剣な表情でブツブツと悩みを相談していると、あなたの悩みが解決する代わりに何も知らない同僚の悩みを増やしてしまうことになるかもしれません。ラバーダッキングを実施する際には、あらかじめこういう解決方法があるのだと周知しておくと良いかもしれません。ご注意ください。

ラバーダッキングの由来は「The Pragmatic Programmer」という書籍に登場するラバーダックのエピソードで、プログラマーがゴム製のアヒルに自分のコードを説明しながら問題を見つける、というものです。この手法の本質は「誰かに説明することで、自分が無意識に持っていた前提や誤解を見つける」ことにあります。
誰かに問題を相談している途中で、自分自身の説明によってその問題の解決法に気づいた、という経験が誰しもあるのではないかと思います。このように説明する過程で志向が整理、され、新たな気づきを得ることがあります。このようにラバーダックを相手にすることで、わざわざ人に頼らずとも自分で問題できる場合も少なくありません。

ラバーダッキングの活用シーン

ラバーダッキングはプログラムのバグ修正や開発業務だけではなく、あらゆるプロジェクトや人生の悩みについても応用可能です。いくつか考えられるパターンを紹介します。

コードレビュー前のセルフチェック

他のメンバーにチェックしてもらう前に、自分で描いたコードをラバーダックに説明することで冗長な部分や見落としたバグに気づくことを期待するものです。この過程でコードの改善点を発見し、他のメンバーからのフィードバックをより効率的に受け入れる準備ができます。

チームメンバーとの議論前のアイデア整理

プロジェクトのアイデアや仕様をチームに共有する前に、まずはラバーダックに向けてそのアイデアを説明します。これにより、論点が不明確だったり説明があやふやだったりする箇所を自分で発見し、議論をよりスムーズに進めることができます。

問題の根本原因を見つける

トラブルシューティングにおいて、表面的な問題ではなく根本的な原因にたどり着くことが困難となることがあります。ラバーダックに対して「なぜこれが起きているのか」を丁寧に説明することで、問題の本質に気づくことができるかもしれません。

プレゼンテーションの事前準備

事前にプレゼンテーションを行い、プロダクトの説明をする過程で説明が不足している箇所や想定される質問が見つかることがあります。ラバーダッキングを通じてプレゼンテーション資料がブラッシュアップされます。

ラバーダッキングにChatGPTを活用しよう!

実際にラバーダックを用意して会話するのも悪くありませんが、AIツールであるChatGPTをラバーダックとして活用する方法をお勧めします。

単なるラバーダックの代わりとして機能するだけでなく、自身では見つけることのできなかった新たな観点からの指摘やアドバイスを受けることも期待できます。ただし、これは通常のラバーダッキングと比較すると大きなアシストを得られるため、ラバーダッキングの本質からは離れてしまうかもしれません。

ケース1:コードの改善

たとえば、複雑なコードの中で特定の関数が意図した通りに動作しない場合、ChatGPTに対してその関数の動作を説明します。その際、どこでエラーが起きているか、期待される出力と実際の出力を比較しながら、ChatGPTのフィードバックを基に修正点を見つけます。

ケース2:プロジェクトの課題整理

プロジェクトの進捗が滞っているときに、なぜうまく進まないのかをChatGPTに説明します。この過程で、プロジェクトのボトルネックや改善の余地が見えてくることがあります。ChatGPTは、その情報をもとに具体的なアクションを提案してくれる場合もあり、従来のラバーダッキングとは違った形で問題解決をサポートします。

▼ChatGPTに架空のプロジェクト進行の遅延を相談した例

ラバーダッキングによって得られるメリット

ラバーダッキングを活用したデバッグやアイデア整理は、自己表現力や論理的思考のトレーニングにもなります。特にプログラミングやプロジェクトマネジメントでは、他人に明確に説明する能力が求められます。ラバーダックに説明する練習を繰り返すことで、複雑なアイデアを分かりやすく伝えるスキルが自然と身につきます。

チームメンバーやクライアントに対しても、より効果的に説明ができるようになり、コミュニケーションの効率が向上します。結果として、プロジェクトの進行や成果物のクオリティにもポジティブな影響を与えるものと期待します。

たとえラバーダッキングで問題が解決しなかったとしても、間違いなく抱えている問題は整理されます。また、誰かに相談できたという事実から精神的にも落ち着くことができるものと思います。こうした安心感が得られるのも、ラバーダッキングを使ったメリットの一つとなります。

ラバーダッキングを習慣にする

ラバーダッキングはいつでもどこでも始められる手法です。
毎日の業務や人生の中で何か問題に直面した際には、まずはChatGPTやラバーダックに向かって考えを言葉にしてみましょう。ChatGPTを利用すればちょっとした休憩時間や移動時間に相談をすることもできます。ベッドやお風呂にラバーダックを置いてきて、一日の振り返りを話すこともできます。人には話しづらい、口にしづらいプライベートな内容でもChatGPTであれば伝えやすい場合もあります。
ありがたいことに、どれだけしつこく相談してもChatGPTやラバーダックはウンザリしたような表情を見せず、いつまでもあなたの相談に付き合ってくれます。遠慮なく相談しましょう。

この習慣を続けることで問題解決能力が向上するだけでなく、自己成長にもつながるはずです。

お問い合わせ

株式会社HumAInではフロントエンド開発、バックエンド開発、インフラ構築などを通じて様々なサービスやウェブサイトの制作を行っています。詳しくはお問合せください。


関連記事

カテゴリー:

ブログ

情シス求人

  1. チームメンバーで作字やってみた#1

ページ上部へ戻る