プログラミングでの検索テクニック集

公開:2020/10/24
更新:2020/10/24
5 min読了の目安(約4700字TECH技術記事

この記事について

プログラミングする際には必ずと言っていいほど、エラーやツールの使い方について検索すると思います。しかし、検索すると言っても「 どういう単語を使えばいいか分からない 」、「 サイトから必要な情報を見つけられない 」など、検索に困ったことのある人は結構いると思います。

この記事では、筆者がやっている検索テクニックを少しだけご紹介したいと思います。
あくまで筆者の解決方法なので、必ず解決できるようになるわけではありませんが、参考になるとは思います。

もし間違いや、他のテクニックを知っているい人が居ましたら、コメントで教えて頂けると嬉しいです🙏

検索テクニック1 : エラー文をググる

エラー文をググるのは基本中の基本ですが、エラー文ってごちゃごちゃしていて、どこからどこまでを検索したらいいか分かりにくいですよね。

私はよくReact.jsを使うのですが、React.jsのエラー文を例に解説したいと思います。

React.jsエラー文サンプル

Warning: Can't perform a React state update on an unmounted component. This is a no-op, but it indicates a memory leak in your application. To fix, cancel all subscriptions and asynchronous tasks in a useEffect cleanup function.

in Test (at src/index.js:65)

上記はエラー文( 正確には警告文 )は、結構な文字列がありますね。
これを丸々コピーして、検索欄に張り付けて検索するのも良いですが、より効率がいい方法があります。

それは、最初の文のみコピーして貼り付ける方法です。
上記のエラー文だと以下のようになります。

Warning: Can't perform a React state update on an unmounted component.

何故、最初の文のみで良いのか?
簡単な話です。既に同じような問題にあった人は、質問サイトやgithubのissuesなどに以下のようにして、投稿します。

Warning: Can't perform a React state update on an unmounted component. This is a no-op, but it indicates a memory leak in your application. To fix, cancel all subscriptions and asynchronous tasks in a useEffect cleanup function.

in Test (at src/index.js:65)

というエラーが出たんですけど、どうすればいいですか?

上記のように、全文を張り付けて投稿します。そのため、エラー文のような決まり文句的な文章は、最初の文のみで十分ヒットします。逆に全文コピーしてしまうと、マッチする条件が厳しくなってマッチしづらくなります。

検索のコツは、なるべく短い文章にすることです。
しかし、短すぎると検索対処が多くなりすぎて探すのが大変です。なので、最初の文章ぐらいがベストな長さなのです。

検索テクニック2: 簡単な英単語で検索する

情報の絶対数で言えば日本語よりも英語の情報量の方が圧倒的に多いので、英語の情報を探した方が知りたい情報を手に入れやすくなります。しかし、英語の情報を検索するとなると、英語で検索しなければなりません。

英語で書いてある情報は翻訳アプリで何とかなりますが、英語で検索するのは自分で英語を考える必要があるため、とても大変です。

そこで、誰でもすぐに使える英語での検索方法をご紹介します。

「 〇〇 not working 」または「 〇〇 doesn't work 」

何か使っているライブラリが、なぜだか動かない場合にこれが使えます。
( 使っているライブラリ名 ) + not workingまたは、( 使っているライブラリ名 ) + doesn't workと検索するだけで、情報量が飛躍的に向上するので、とてもお勧めです。

ポイントとして、ライブラリ名と「 not working 」などの状況を説明する文章が重要なので、正しい英文するのではなく、必要な情報のみ記述しましょう。 ( これは日本語でも言えることですね )

「 How to ~ 〇〇 」

ライブラリをどのように使っていいか分からない時や、挙動などが分からない時に、これが便利です。使い方が知りたいなら「 How to use 〇〇 」、どのように動いているか知りたいなら「 How to work 〇〇 」 で大体行けます。

こちらのポイントも正しい英文するのではなく、必要な情報のみ記述しましょう。 なんなら、「 How 」は抜かして、「 〇〇 use 」でも簡単な情報なら大丈夫です。

またこの応用として「 What 」や「 When 」などでも、同じように検索できます。

検索テクニック3 : Google検索の言語設定を英語にする

多くの日本人はGoogleで検索する時、日本語の設定で検索していると思います。しかし、検索テクニック2のように英語で検索する時、日本語の設定のままだと日本語圏から英語の情報を引っ張って来ようとするため、本来ヒットするはずの情報がヒットしなくなったりします。

なので、もし検索テクニック2で検索したのに欲しい情報が手に入らなかった時は、Googleの言語設定を英語に変えてみると良いかもしれません。 結構、検索結果が変わるので、私は良く多用しています。

検索テクニック4 : ページ内検索を活用する

これをやっている人は結構いると思いますが、一応紹介しておきます。
ブラウザで「 ctrl + f 」( macなら「 cmd + f 」)で、ページ内検索が出来ます。

この機能を使う事で、サイト内の情報すべてに目を通さずに、必要な情報だけを見ることが出来ますので時間の節約ができます。

また、これの応用としてChromeだと検索にヒットしたモノがどの位置にあるのかがスクロールバーに表示されます。

そのため、

  1. 検索する
  2. サイトに訪問する
  3. まず初めにサイト内検索を実行
  4. スクロールバーから必要な情報があるか確認する
  5. あったらその箇所を見る、無ければ他のサイトに行く

という感じで、一つあたりのサイトの閲覧時間を短くして、複数のサイトの情報をいっぱい見る事が出来ます。これによって、サイト内の情報が間違っている事に気が付きやすくなるので、サイト情報からのバグなどを防ぐことが出来ます。[1]

検索テクニック5 : Githubのissuesを見る

自分が使っているライブラリがOSSで開発されており、それがGithubに公開されているというのは珍しくありません。そのため、Githubのissuesに自分の問題の解決方法がある事も多いと思います。

しかし、issuesは基本英語ですし、使ったことが無い人も多いのではないでしょうか?
そこで、issuesから必要な情報を取り出すために必要なテクニックをご紹介します。

in:bodyで大体OK👌

Githubのissuesには検索欄があります。画像の赤枠で囲ったところがそうですね。

Search form of github issues

この検索欄に 検索したい単語 in:body とすると、その文章を含むissuesを検索することが出来ますので、issuesが大量にある有名なOSSでもin:bodyを使う事で目的のissueを見つけやすくなります。

私が使っている中では in:body で大体の事は解決しますが、他の検索用修飾子もありますので、もっと知りたい人は公式ページから確認すると良いと思います。

Emojiを見れば、解決方法が分かる😀

in:bodyを使って必要な情報が載って良そうなissuesを見つけ出せたとしても、そのissueの内容が長ければ、またそこから探す羽目になり大変です。しかし、Emojiを見ればどんなに内容が長くても一瞬で解決策を見つけることが出来ます。

awesome github issue

上記の画像のように、issueの回答にはEmojiを付けることが出来ます。そして、良い解決策を書いている回答には大体Emojiが付いているので、Emojiが付いている回答を探すだけで解決策を見つけることが出来ます。 また、Emojiは目を引く派手さがあるので、結構な速度でスクロールしても見分けることが出来るところも良い点ですね。

上記より、Githubのissuesは大体以下の流れで解決策を見つけることが出来ます。

  1. in:bodyを使ってissueを探す
  2. 検索結果から気になるissueを開く
  3. 開いたissueからEmojiの付いた回答を探す
  4. Emojiがあったらその解答だけを読む、無ければ他のissueを見る

因みに、付けられるEmojiには種類があるのですが、大体は "👍" が付いているので、それを目安に探せば大丈夫だと思います。あと、Emojiの横に何人がEmojiを付けたかが分かるので、それも考慮して探すのも良い方法です👍

検索テクニック6 : 数撃ちゃ当たる作戦

今まで紹介してきた方法でも見つからないなら、もう残された方法は一つです。。。

表示されたサイトを、片っ端からチェックする!

以上です!

脚注
  1. 例えばコピペしたソースコードが間違っていたなど ↩︎