検索力を上げて技術力を鍛える


#技術力を向上させるコツは何か？
挙げていけばキリがない程ありますが、長期的にみてもっとも大きな効果が得られるのは「検索力」をつけることです。
事実、熟練したプロのエンジニアでも毎日、何度も何度も「検索」して情報を得ています。
今回は、なぜ「検索力」がエンジニアにとって重要であるのか、またどのようにして検索をすれば良いのか、その方法について考えてみたいと思います。

#検索のコツって？
どのように「検索」をすれば良いのか、いくつか例に出しながらご紹介しましょう。
例えば、プログラミングに関連する用語として、WEBフレームワークの「ライブラリ」という言葉がありますね。

あなたは、こちらの記事を見て、「ライブラリ」ってなんだろう？となったとしましょう。
意味や言葉の理解をするため、調べることにします。早速、Googleを開いてみましょう。
…と言いたいところですが、検索を始める前にいくつか注意点がありますので、そちらを確認します。

注意点は、2点です。

①検索をする時は、〜3、4語程度に抑える。
②検索したい単語を左から順番に並べてスペースで区切って入力する。
です。

#まず普通に検索してみる

上の2点を抑えた上で、早速検索してみましょう。
まずは「ライブラリ」とそのまま検索してみます。


上位のものは、大体知りたい「ライブラリ」について書かれた情報のようです。
しかし、2ページ目になると、関係なさそうな情報もかなり入ってきています。
![2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/482202/711dea5f-f72c-cd15-ee96-312b77a01742.png)


コツ①：周辺キーワードを絡める
既にお気づきだとは思いますが、「ライブラリ」という単語には、図書館の「ライブラリ」や、会社名や建物名の「ライブラリ」、その他名称の「ライブラリ」などなどが表示され、あなたが調べたい「ライブラリ」が正しく表示されない可能性があります。
その為、調べたい「ライブラリ」の「周辺キーワード」をうまいこと紐付けて検索するようにします。

例えば、「ライブラリ　WEBフレームワーク　用途」や「ライブラリ　WEBフレームワーク　意味」という感じで調べるのがベストでしょう。
![3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/482202/dfbe6e88-d2b4-54e1-3db6-3804ac9ced95.png)


コツ②：順番を変えてみる

「ライブラリ　WEBフレームワーク　用途」と調べる場合と「WEBフレームワーク　ライブラリ　用途」、「用途　ライブラリ　フレームワーク」と調べるのでは検索結果が全て異なります。

一度異なることを確認してみましょう。
欲しい答えを導き出すコツは、重要なキーワードから順番に並べてみることです。

なお、必ずしも単語である必要はありません。短めの文章になっても構いませんので、様々なキーワードを入力し、検索に慣れていくことも重要です。
これまで紹介してきた検索方法は基本中の基本になりますので、当然活用されている方も多いかと思います。
以下で、より高度な検索テクニックをご紹介します。

#「”」で検索の精度を上げる

検索したいキーワードをダブルクォーテーション「”」で囲むことでそのキーワードが「完全一致するWEBサイト」のみを検索できます。

例えば、「"WEBフレームワーク" 意味」と「WEBフレームワーク 意味」で検索をしてみてください。

↓ ダブルクォーテーション有りの場合 ↓
![6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/482202/91b75bf7-7fd3-4b28-1143-abab7de58949.png)


↓ ダブルクォーテーション無しの場合 ↓
![7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/482202/f00b6118-a86e-ae94-a3b7-c98216dae659.png)

この様に検索結果が違ってきますね。

これによりより「精度の高い答え」を導き出せます。

検索結果を見ていただくとその差は歴然です。ダブルクォーテーション有りの場合は「約51,900件」の検索結果に対し、ダブルクォーテーション無しの場合はなんと「約5,600,000 件」の検索結果が出ています。約100倍近い数の検索結果です。

なぜこの様な差が生まれてくるのかというと、ダブルクォーテーション無しの場合、「WEBフレームワーク」は「『WEB』『フレームワーク』」で検索をしていることになるからです。
その為、「WEBフレームワーク」に関連していないウェブページをグーグルが検知し、表示させていることになります。

つまり、ダブルクォーテーションを巧みに使うことで、より精度が高く、答えまで最短スピードまでたどり着けるわけです。


#「-」で無駄を省く

除外したいキーワードの前にハイフン「-」を入れると、ハイフンの後に書かれたキーワードを除外したサイトを検索できます。
例えば「Mac ラップトップ　-Pro」と調べると、Macのラップトップの内、「Pro」以外のラップトップを検索することができます。

![pro.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/482202/1e4f26f7-c15d-27e7-a3bc-6ca6fda66ed6.png)




#「OR」で検索結果を2択に絞る

「プログラミング学習のコツ PHP OR Ruby」で検索すると、 「PHP」もしくは「Ruby」というキーワードが存在する「プログラミング学習のコツ」について書かれたページのみ表示されます。

![OR.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/482202/c758759a-a3b1-d941-585d-a3c879b6a7f6.png)


※「OR」を記載する時は、必ず半角大文字で入力し前後に「スペース」を入れて下さい。




#タイトル検索

WEBサイトには、「タイトル」と「本文」がありますが、タイトルのみで検索をすることができます。
その場合「intitle:」を用いて、「intitle:Ruby」の様に入力をしてください。
![RubyTitle.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/482202/f70ea45a-b926-2acf-3073-a55d4c48a1d2.png)


こうすることで、タイトルに「Ruby」というキーワードが入ったサイトのみを検索することができるので、「Ruby」に特化したサイトを見つけることができます。



#検索ツールの活用

検索窓の下にある「検索ツール」を活用することでさらに精度の高い検索をすることができます。


検索ツールの「期間を指定」を選択し、「1年以内」をクリックしてみましょう。
すると、直近1年以内に更新されたページのみ検索結果として表示されます。

Webに限らず技術は日々進歩していきます。

そのため、更新された期間を絞って検索することでより最新の情報を得られ、求めている答えに辿り着ける可能性が高まります。
![期間.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/482202/46188b46-899f-4cfd-ff9a-78ecaa948ebf.png)



それ以外では、「言語指定」もよく使う機能です。日本語のみのサイトを表示したい時などに使用しましょう。
![日本語.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/482202/056a08d1-3710-b171-32ba-bfc2a00e3f65.png)



#Googleサジェストキーワードと関連キーワード
「この単語わからないから調べてみたけど、どう調べれば良いのか、なかなかわからない...」といったケース
そんな時は、「サジェストキーワード」と「関連キーワード」を用いて、ヒントをもらいましょう。

「サジェストキーワード」⇒人気・類似ワード
「関連キーワード」⇒良く調べられているキーワード



#まとめ

まずは検索するクセをつけよう
プログラミングに関わらず、わからないことがあれば、まずは「検索」することが大事です。

知識のある人、あなたよりも経験のある人に聞くことができれば、「検索」するよりも精度の高い答えは返ってくるでしょう。
しかし、そのように他力を借りることを癖付けてしまうと、一生「自己解決能力」を鍛えることはできません。

勿論、誰かに聞いては絶対にダメ！と言うわけではありません。
まずは、自分で調べる。
それでも解決しない時は、誰かに聞いてみたり、質問掲示板を使ってみる。
そうやって、「検索力」を養ってみてはいかがでしょうか？


ただ、ここまで検索力を発揮してもわからない…ということは珍しいことではありません。
それは検索力が足りないのではなく、あなたの悩みに合う答えが存在していないだけか、検索の方法がちょっと間違ってしまっているかです。

プログラミングはモノづくり、人によってどんなポイントで困っているかは違います。
その全ての答えがWEB上にあるとは限らないし、検索方法次第ではうまく見つからないということも十分にあります。

そんな時に頼れるのが人の力！
わからないところはわかる人に、ピンポイントで聞いてしまうのが一番です。

また、質問掲示板という点では、「」などのプログラミングやコーディングに関する疑問に誰かが答えてくれる
無料のサービスも数多くあります。
悩んでいる間に、質問をこちらになげかけて解決方法を教えてもらうのもとても有効な手段です。

主な掲示板
[QA@IT: ITエンジニア向け質問・回答コミュニティ](https://qa.atmarkit.co.jp/)
[teratail【テラテイル】｜思考するエンジニアのためのQAプラットフォーム](https://teratail.com/)
[Stack Overflow](https://ja.stackoverflow.com/)