-
プログラマーに必要な検索力とは?ググる検索テクニック「11選」
プログラミング作業を左右する「検索力」
プログラミングを上達させるのに必要なこと。
それは基礎力を徹底的に固めたり、自分で簡単なサイトを作ることに挑戦するなど、さまざまな方法があります。ベテランエンジニアに質問しても、きっと色々な答えが出てくるはず。
そんな、上達方法が多彩なだけにかえって迷ってしまうプログラミングにおいて、どんなレベルにおいても共通している大切なことがあります。
それは「ググる力」つまり「検索力」。
「ググる」とは?
「ググる」とは検索エンジン「グーグル」を動詞にしたもの。グーグルを短く読んだ言葉であり、世界TOPの検索エンジン「Googleで調べる」の意味のこと。
実はこれ、英語圏でも「Google」は動詞でも使われています。「ググってみて=Google it」というふうに使われています。
普通に動詞としても機能するほど、一般的な単語になっている企業名というのは少ないものですが、やはりそんなにGoogleが良いのでしょうか?
他の検索エンジン、例えばYAHOO!やBingではどうなのでしょう?
YAHOO!やBingではダメ?
検索エンジンと言えば、Google以外にも「YAHOO!」やマイクロソフト社の「Bing」がありますね。
コンピューターを立ち上げた時にそれらがデフォルト設定になっていて、その流れで使っている人もいるかもしれません。しかし、検索の精度から言うと間違いなく「Google」一択が間違いありません。
実は日本のYAHOO! JAPANは、2021年現在Googleの検索エンジンを使用しています。長年、YAHOOは独自のエンジンを使用していましたが精度がいまひとつだったこともあり、2010年からGoogleのエンジンを採用。つまり両検索エンジンの検索結果は、ほぼ相違なしとなっています。
Bingに関しては独自のアルゴリズムでの検索結果を抽出してくれますが、米スタンフォード大学(Stanford University)のサイバー政策センター(Cyber Policy Center)からはその検索結果に懐疑的な指摘も出ており、まだまだ発展途上の段階にあります。
よって、検索エンジンは質という意味でも、消去法という意味でもGoogle一択が無難です。もちろん。Googleの出す答えがいつも正しいとも言い切れませんが、その精度は日々加速度的に上がり続けています。
Google検索ワザ「11選」を紹介
さてGoogleを使っての「ググる」ですが、単に単語入れるだけでは、この高性能検索エンジンの機能の1/100も使っていないことになります。
ここではGoogleを使った基本的な検索テクニックを「11選」として、ご紹介いたします。
今回は「マークアップ」という単語を例に検索を”深めて”みましょう。
①一単語で検索
これはおなじみの検索方法ですね。1単語だけで情報を集めるときにする手法。1単語だとすぐに検索ができる利点はあるものの、検索結果の幅が広すぎるという難点もあります。
②組み合わせキーワードで検索
こちらもお馴染みの方法かと思います。1単語でなく、他の検索キーワードを組み合わせることで、自分の欲しい情報に近づくアプローチとなります。
例えば「マークアップ わかりやすく」と「わかりやすく マークアップ」では検索結果が変わる場合もあり、何を自分が最優先したいかによって変えるのが一般的です。
③サジェスト検索
これはGoogle側が「マークアップという単語検索なら、こういった組み合わせキーワードでよく検索されているよ」と提案(サジェスト)してくれる機能です。
「機能」といっても何か特別なことをするわけでなく、検索窓に単語を入れると自動的に出てきます。全く出てこない場合は、その検索ワードには「Google側としては提案するほど頻繁に検索されている組み合わせキーワードはない」ということになります。
④完全一致検索
検索ワードは特に1単語のみだと、結果も幅広く、Google側も「こういう結果でいいのかな?」という広範囲な内容を出します。
そこで検索キーワードの両端に「”」(ダブルクォーテーション)を付けることで「完全一致検索」と切り替わります。これをすることで、この単語のみに特化した結果が優先的に表示されます。
例えば「”マークアップをわかりやすく”」という完全一致検索をすると、その題名の記事が優先的に出てきます。
⑤除外検索
単語の頭に「-」を付けることでその単語を検索結果から除外できます。組み合わせキーワードで検索したものの、いったん除外したいときや、「-」のありなしで比較したい際も使えます。
⑥OR検索
検索単語の間に「OR」と「半角大文字」で入れます。これにより「どちらかの単語を含める」あるいは「どちらの単語も含める」という検索結果を得ることが可能。組み合わせ検索の上位テクニックですね。
⑦タイトル検索
検索ワードに頭に「intitle:」を入れます。例えば「intitle:マークアップ」とすることで、記事タイトルに「マークアップ」が入った記事のみが表示されます。
なお複数キーワードの場合は「allintitle:マークアップ スタイルシート」のようには「allintitle:」を使用。
⑧サイト内検索
「このサイトの中だけを対象に検索をしたい」というケースに使う手法です。サイト内検索機能がないホームページに適用できる手法です。
検索ワードの最初に「site:」を入れます。以下はそのサイトのURLをセット。すると、対象URLの中のページのみ検索結果に抽出してくれます。
⑨類似サイトを検索
「このサイトと似たようなサイトを検索をしたい」というケースに使う手法です。
検索ワードの最初に「related:」を入れます。以下はそのサイトのURLをセット。すると、対象URLに似たサイトを検出してくれます。
⑩ファイル検索
「filetype:」を使うことで、特定のファイル形式での検索結果を得られます。
例えば「マークアップ filetype:pdf」なら「マークアップに関するPDF資料」が結果として弾き出されます。
⑪スライドシェア検索
「知りたい検索ワード」+「slideshare」を使うことで、プレゼン等で使用する際にスライドを閲覧できます。これはslideshareのサービスサイトをそのまま活用する方法。
記事や動画よりも、スライドだとシンプルにわかりやすい場合も多く、知っておきたい検索法です。
実は「GitHub」検索もアリ
ググると並行した補佐的な使用となりますが、実際に現場で使われているリアルなソースコードなどの参考は「GitHub」も重宝します。
そもそものGitHubについては『「Git」と「GitHub」のちがいとは?特長や入手方法は?』について詳細を解説しているのでチェック。
Githubでawesome系のレポジトリを検索することで、あるプログラミング言語の各分野の人気ライブラリやフレームワーク、推奨のWEBページなどを知ることが可能です。例えば例えば、JavaScriptのP各分野の人気ライブラリやフレームワークを調べたいときは「
awesome javascript
」 と検索すればawesome-javascriptを検出できるでしょう。また、もうちょっとマニアックな手法として「Github Trending」を利用してのトレンドの把握。日・週・月での獲得スター数が多いレポジトリも把握できます。エンジニアとしては、定期的にチェックしておきたいところ。
GitHubでの検索はGoogle検索に比べると少し手間があることも確かです。しかし、エンジニアとしては慣れておくと貴重な引き出しになることは間違いありません。それこそ「github内 検索」などでググってみて、GitHub検索の方法を把握し、日々活用するクセを日常的につけておきましょう。
ベテランほど速攻ググり、初心者ほど調べ疲れする
プログラミングの作業において、ベテランと初心者の大きな差のひとつは「ググる回数」と言って良いでしょう。
熟練のプログラマーは、わからないことは多種多様な検索テクニックで解決します。
あるいは、よく訪れるサイトやページはブックマークしておき、時短に努めている。わからないことがあっても、自己嫌悪に陥ることもない(わざわざ落ち込んでいる時間などない)。その繰り返しが日常のため、検索力は常に高く、レベルが上がっていきます。
一方でプログラミング初心者はというと「まず調べよう」のフットワークが著しく重いというのが特長。
なぜ動きが鈍いのかというと「調べてもそのページに書いてあることの意味がわからず、再び検索すること繰り返しになるので面倒」という動機が大きい。これを「ダルい」と感じ、結果的に低い検索力のまま横ばいになるー。
「ベテランプログラマーは基礎が完成されているので、調べる内容もある程度わかったうえで調べるけど、初心者は何もかもわからないから大変」ということもあり、面倒な気持ちも確かにわかります。
しかし、何度も調べる・調べるのが面倒というのは、実はベテランエンジニアでも同じなんですよ。
初心者の方は「自分が無知だからなんでも調べているんだ…恥ずかしい…みんなこんなに調べてないだろう…」なんて思わずに「迷わず速攻Google検索」を習慣化できるように自分を方向づけましょう。
そして常に「今回たどりついたページは次回はすぐにアクセスできるようにどうするか」を常に考える。
ブックマークも良し、QiitaやZenn、あるいはtwitter、自分のブログに残しておくも良し、Evernoteに項目ごとに分けておくのも良いでしょう。
常に自分がやりやすい方法を模索したり、他のエンジニアに聞いてみるなどし、スタイルを固めていきましょうね。
プログラミング上達の鍵は?
当サイト「メンタレ」は、オンラインにてメンターを「レンタル」し、自分にあったカスタム実践講座をしてもらえるサービス。
今の自分が抱える課題を解決できるので、無駄がありません。
今回の記事テーマになぞらえてみると、講師が出した課題には積極な「ググり」を入れて、どんどんエンジニア的検索にも慣れていきたいですね。
「だいたいわかるけど、あえてググってみよう」「自分で解決法を探せるかな」と、ゲーム感覚でやってみるのは大切です。
自分一人になったときに、いかにGoogle検索精度を上げておけるか。これは「駆け出しだから、初心者だからググる回数が多い」と凹むのでなく、調べること自体を「検索能力を上げる練習」として捉えると、前向きになれると思います。
基礎のプログラミング学習段階から、意識してGoogle検索自体の精度向上にも努める。このちょっとした気持ちの持ち方で、これから始めるプログラミング道の楽しみ方が異なってきます。
とはいっても、当サイト「メンタレ」では「初心者こそググりまくれ」なんていう投げっぱなしの意識はありません。「講座」という形式ゆえに、講師と共に歩めるるよう、サポートいたします。
一度プログラミングを挫折している方や、ちょっとprogateなどでやってみたけど放置してしまっている方、あるいは完全初心者だけどいきなり高額すぎる学費を払ってまでプログラミングに挑戦する気は無い方。そんな方々が、最初に知って欲しいのが「メンタレ」です。
お気軽に、ご相談ください。