私はリサーチのプロではありませんが、新入社員向けに「リサーチのコツ」について話してくれと言われてしまったので、自分なりに考えてみました。
最初はとりあえずググるでもいい
例えばポインタを使った課題が出されたとしたら、「C言語 ポインタ」で検索して、必要な情報を得て、課題を解くとします。
もちろん「C言語 ポインタ」の検索で必要な情報は得られると思います。
プロからすると「ググる前にリサーチ設計をすべきだ」といったことが書かれている記事を拝見しましたが、プログラマーのリサーチとしては、まず行動をしてみるというのが良いかなと思っています。
ところでなぜ「C言語 ポインタ」で検索すると判断したのでしょうか?
この検索には以下の要素が含まれていると思います
・単語を知っている。
→そもそも単語を知っていないと検索できませんし、適切な言葉でないと適切な検索結果は出てきません。
・日本語である
→日本語でC言語の基礎的な知識をまとめたサイトがあることを知っているからこその日本語での検索だと思います。
・期間を問わない。
→Googleでは「令和 before:2019」と期間を指定することができます。期間を指定していないのはC言語の仕様がコロコロ変わることはないと知っているからこそ、指定していないとも考えられます。
ほかの言語では違う部分もありますが、C言語では「C言語の基本の単語で」「日本語で」「C言語の仕様は変わることない」情報がインターネットにまとめられているからこそとりあえず検索してみるのはいいのかなと思います。
ググるために広く浅く情報収集・勉強も必要
前述したとおり、ググるためにはそもそも単語を知っていないと検索できませんし、適切な言葉でないと適切な検索結果は出てきません。
先輩や有識者に教えてもらいに行くにしても、使う単語が共有できていないと会話が成立せず、なんとなくわかった気になって、自席で頭を抱えることになるかもしれません。
こういったことを避けるためにも、基礎レベルの勉強も多少は必要だと感じます。
また、普段から先輩や有識者が使う言葉に耳を傾け情報収集しておくことも必要になると思います。
時にはその先輩が間違った言葉を使っていることもあるかもしれません。
ともかく、単語を知っておくというのはリサーチに役立つと思います。
リサーチ対象の背景を知ると効率がいい
以前、とあるライブラリについて調査していたのですが、英語の掲示板が検索結果に出てくるので、一応は見てみるのですが、翻訳してみて意味が分からず、後回しに。。。
数時間たった後、その掲示板を英語のまま読み解いていくと、欲しい情報が書いてあり、遠回りした経験があります。
あとあとわかったことですが、日本ではあまり使っている事例がなかったライブラリだったようです。
もし、最初から英語圏で情報交換が盛んに行われていることを知っていれば、検索単語を英語にすることもできたでしょう。専門性の高い掲示板を最初から知っていると効率がいいかもしれません。
また、使うライブラリが最近、大幅に仕様変更があったことを知っていると、期間指定の検索を使って効率よく検索できるかもしれません。
検索以外では業界の業務知識だということを知っていると、インターネット検索ではリサーチできない内容だとわかり、無駄に時間を使うこともないでしょう。
その場合は誰が詳しいとかどこに資料があるかなどの情報があると効率よくリサーチできると思います。
チームのメリットを生かそう
会社であれば先輩がいて、先輩に聞いた方が話は早いことも多いでしょう。
最初は聞きづらいかもしれませんが仕事頼む立場からすると、自席で頭抱えられるよりもさっさと聞いて仕事進めてほしいと思うことも多々あります。
チームで仕事していることを意識して、有識者に質問することに慣れてほしいと思います。
また、チームですでにリサーチ済みの内容を悩んでいるかもしれません。すでにまとめられた資料の場所を聞くとか、作成済みの便利なスクリプトなどはわざわざ自分が調べる必要はないでしょう。車輪の再開発といわれないようにすでにあるものは活用しましょう。
リサーチの目的を明確にし予測を立てられるようになるのが理想的
この記事を書く前に、リサーチって何?と思って検索してみたら「リサーチ設計」という言葉が出てきました
リサーチの課題の目的を明確にして、事実確認と仮説検証をしていくみたいな感じで認識しました。
意識したことはなかったですが、無意識に「こういうことがしたい」「こういう情報があるはずだ」といったレベルで考えていたかもしれません。
実業務でリサーチを頼まれたら、頼んだ人の背景は何か?を想像してみる必要があると思います。
さらにその裏で頼んだ人のためのリサーチかもしれませんし、やってもらいたい仕事が決まっているのかもしれません。もしかしたら、単純な時間稼ぎで何も考えてないかもしれません。
勉強がてら出される課題の目的は「基礎的な知識をつけてもらいたい」と想像できますが、もし「埋めて提出する」ことが目的だったとしたら誰かの答えを写すことも正しい手段ということになるのではないでしょうか。
実業務でどんなリサーチ方法があるのか考えよう
最後に実業務でリサーチとしてとる行動をいろいろ考えてみました。
①インターネット検索
インターネット上に情報があれば、一番にとる方法かと思います。
②先輩・先駆者の資料を探す
誰かが調べ済みなことを知っていたらこれも有力な方法です。
③先輩・先駆者に聞く
資料がなくとも詳しい人に聞いた方が早いことは多いです。
④専門性の高い掲示板を探す。
インターネット検索と似ていますが、専門性の高い掲示板、便利サイトから情報を得る必要もあります。
⑤文献を見る
私は無いですが、論文のような専門的な文献から情報を得る必要があるかもしれません。
⑥仕様書読み込む
要求仕様書などにそもそも書いてあるかもしれません。
⑦調査メディアをいろいろ試す
グーグル検索をメインに書いてきましたが、映像や音声で知識を得たければYoutubeなどの動画サイト、障害など最新情報を得たい場合はtwitterなどを活用した方がいいこともあります。
⑧アンケート
リサーチということで考えてみましたが、プログラマーのリサーチと考えると、使うことはなさそうです。