🔍

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

2020/10/24に公開

この記事について

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

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

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

検索テクニック 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)

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

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

何故、最初の文のみで良いのか?
簡単な話です。既に同じような問題にあった人は、質問サイトや 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. 例えばコピペしたソースコードが間違っていたなど ↩︎

GitHubで編集を提案

Discussion