つまずいたらラバーダッキングするという選択肢
ラバーダッキングとは何か
ラバーダックつまりゴム製のアヒルのおもちゃに話しかけることによって問題点を明確にしたり
問題解決の手助けをすることをさす。
主にプログラマーが自分のコードのデバッグをするときに用いることが多い。
ラバーダッキングの効能
ラバーダッキングには
強制的なアウトプットをするため言語化をする→言語化によって解決への道筋が明確になる
というサイクルがある。
ポイントは『言語化』だ。
質問に行くと問題が解決しやすくなるのは回答者のアドバイスもあるが、
大抵は自分が問題点を整理して理解し原因特定が可能になるためだ。
問題が起きたときに解決を阻む最大の要因は問題自身の本質が見えないことにある。
押さえるべきポイント(本質的な部分)がわかりさえすればあとは
原因を追いかけて潰すだけだ。
原因に対するアンサーはネットに膨大にころがっているが、問題に対するアンサーはないことが多い。
全ての問題解決の出発点は問題をどう定義できるかにかかっている。
それを助けるのがラバーダッキングだ。
質問力を磨く
ラバーダッキングを軽く紹介したが、これは問題を早く解決する技術の一端であり、個人の問題解決能力が高まる訳ではない。 仕事とかしてると忘れがちだが、質問力が高いと問題解決の手段が乏しい場合でも 適切な解を他人の脳みそと経験から拝借でき、解決を生み出すことができる。
独り相撲で問題を取り回すのはかっこいいが、せっかくの集団で仕事をすうる訳だから 集合知をうまいこと引き出して結果として問題解決されることの方が多い。
つまりは相手からもしくはチームからベストな解決策を引っ張るための質問が必要なのだ。 コミュニケーション能力とは質問であると言い換えてもいい。
なんだか乱雑な文章になってしまったけど、質問がうまくできないという人へ向けた練習方法を書いておく。
質問力の磨き方
まずはぬいぐるみとかマスコットを用意する そして心の中で以下のものを自分なりにまとめてぬいぐるみに話けるのだ。
1.実現したいと思っていることは具体的になんなのか ex) hello worldをコンソールに出力したい。 2.今現状どういう状態なのか ex)出力のためのメソッドがわからない。 3.それを実現するために調べたものはなんなのか ex)ネットの記事を読んだ。
まずはこれをぬいぐるみに話しかける。 そうすると自分のよく言語化できな部分がわかるはずだ。
例えば実現したいと思ってることが曖昧 上の例で行けばhello worldと出したいのが ブラウザなのかコンソールなのかでやるべきことは変わって来る。
そして言語化できない部分がわかると現状とや入りたいことのズレがチグハグなことや、 見るべき資料が違うのでは?となる訳だ。
まずここまで来るのにかなり練習がいるのでなんども言語化にチャレンジすることだ。
まとめ
- 質問の力でチームとしてのベストな回答を引っ張り出すことができれば問題解決のスピードは格段に上がる。
- ラバーダッキングを実践することで問題解決を人に頼る部分が少なくなる。
- 問いの建て方がうまくなり、問題解決スピードが上がる。
まあみんな騙されたと思って職場でも家でもラバーダッキングをしてみてほしい