ラバーダック
ラバーダック・デバッグのことだよ
何かを考えるときの やり方だよ
ぬいぐるみとかに説明しながら考えるよ
声に出して説明することで頭が整理されて、意外に効果があるらしいよ
簡単に書くよ
ラバーダック(英:rubber duck)とは
「ラバーダック・デバッグ」の省略表現。
用語の中身としては
問題の解決法とかを考えるときの やり方のひとつ
であり
ぬいぐるみとかの無生物に「ここでは、こんな処理をやっていてさ~。でも、ここでこの操作をやると、こんな不具合が起きるんだよね~」みたいに説明しながら考えることで、状況を客観視できたり、それに対する理解が深まったりして、良い考えが浮かぶことを期待するやり方
です。
ちなみに「ラバーダック」自体の意味は
ゴム製のアヒル
です。
詳しく書くよ
順番に見ていきましょう。
まずは予備知識として
・ラバーダック
・バグ
・デバッグ
・ラバーダック・デバッグ
について簡単に説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。
ラバーダックは、直訳すると「ゴムのアヒル」です。
みなさんも実物を見れば「あぁ、こいつね!」となると思います。
普通は手のひらサイズで、お風呂にプカプカ浮かべたりする黄色いゴム製のアヒル、アイツですよ、アイツ。
バグは「プログラムのおかしいところ」です。
バグがあるとプログラムは期待した通りの動きをしてくれません。
変な動きをしたり、作ったデータの中身が変だったり、途中で処理を止めたりします。
バグの程度にもよりますが、バグがあるプログラムさんはラリラリです。
……というのが辞書的な説明です。
実際には、プログラムに限らず「おかしいところ」程度に、ゆるく解釈しておいた方が無難でしょう。
「バグ」という用語は結構アバウトな使われ方をしている用語です。
ちなみに「バグ(bug)」を日本語にすると「虫」です。
由来は知りません。
気になる方は他のところで調べてください。
デバッグは「バグの原因を探して取り除く作業」です。
プログラムに限らず「原因は分からないけど、なんか おかしい」な状況に対する原因の究明や不具合の解消を指して「デバッグ」と表現することもあります。
ラバーダック・デバッグは「ラバーダックやぬいぐるみ、あるいはピヨピヨの壺のような無生物に説明しながら考えるやり方」です。
声に出して説明することで、状況を客観視できるようになるでしょう。
その物事に対する理解が深まることも期待できます。
しかも!
相手は無生物です。
何時間でも黙って付き合ってくれますし、こっちが求めていない余計なアドバイスめいたことも言ってきません。
最高の相談相手です!
そんな感じで、無生物に対して説明・相談の真似事をすることで自分の頭の中を整理するのがラバーダック・デバッグです。
以上を踏まえて
「ラバーダック・デバッグ」の省略表現
が「ラバーダック」です。
上でも書いた通り「ラバーダック」自体の意味は「ゴム製のアヒル」ですけどね。
文字通りの意味で「ラバーダック」という単語が出てくることは少ないはずです。
特にプログラミングとかの話で出てきた場合は、十中八九「ラバーダック・デバッグ」の省略表現です。
一言でまとめるよ
まぁ「ラバーダック」って単語が出てきたら「ラバーダック・デバッグ
(ぬいぐるみとかに説明しながら考えるやり方)のことなんだな~」と お考えください。
おまけ
■訳してみるよ
「rubber(ラバー)」の意味は「ゴム」とかです。
「duck(ダック)」の意味は「カモ」とか「アヒル」とかです。
何となく くっつけると
ゴムのアヒル
となります。






