概要
初めまして、荒血主竜(あらち ろどりゅう)です。
このページでは、私が弊学の先輩から伝授され、現在に至るまで検索する際に使っている技を書いていく。
なお、このページは学内で共有していたものを全体公開用に移植・再編集したものだ。
この記事の不明点や改善点については、あなたが適切に私とコンタクトが取れる所(Twitterとか)で聞いてほしい
ただし、ある程度は自分で調べるのもエンジニアの努めであることは理解してほしいと思っている。
それがこのページの存在意義だ。
なお、このページで紹介したサイト・ソフトウェア・ファイルを利用したことによるいかなる損害に対しても、私は責任を負わない。
前提ソフトウェア
(Edge/VivaldiユーザーはChrome Web Storeから導入できます)
uBlackList
役に立たない検索結果(例:侍エンジニア塾)をドメイン単位で非表示に出来る。
DeepL
英語ページやエラーメッセージを読むのに使用する。
Google翻訳
DeepLよりも翻訳精度は落ちるが、サイト全体を翻訳できるので上手い具合に使い分けよう。
DeepL デスクトップ版
Ctrl+C二回で選択した文を翻訳できるため、Windowsユーザーは入れておくべき。
エラーメッセージなどにはこちらを使おう。
Weblio ポップアップ英和辞典
英単語を調べる時に。上の3つで事足りることが多いので任意。
ChatGPT
内容によっては下手にググるよりGPTに聞いたほうが早い場合がある。
GPT-4が使えるならそちらを使った方が強力だが、無料で使えるGPT-3でもそこそこ強力。
GoogleアカウントかMicrosoft/Xboxアカウントで登録できるので今すぐやろう。
ただし、新しめの情報(2021年以降は特に)には疎く、いい加減な答えを流すことも少なくないので事実確認は怠らないように。
信用できないサイトの特徴
プログラミングスクールや転職系サービスなどのサイト
侍エンジニア塾
TechAcademy
CodeCamp
TechCamp
Acrovision
など、腐るほどあるので正直網羅するのしんどい。
見分け方
記事の途中や最後に、自身の商品やサービスを宣伝するような文言やリンクがあるサイトは信用しないほうが良い。
企業のウェブページで、記事の途中や末尾、ヘッダーなどに「資料請求」とか「採用情報」とか書いてあるサイトも基本的に私は信用していない。(ただし社員ブログは除く)
また、このような妙なツイートを見かけた。
このツイートにあるような文言をタイトルに含むサイトは9.9割クロである。
読むだけ時間の無駄なのでuBlacklistにぶち込んでおこう。
手放しに鵜呑みにするのは危険だが、比較的信頼できるサイト
Qiita
Zenn
StackOverflow
Teratail
ITmedia
など
検索ワードに「Qiita」「Zenn」などと入れると引っ掛かりやすくなる。
ただし、QiitaやZennは誰でも書ける上に、情報が古くなっていたり、前提条件が異なっていたりする場合もあるので、記事のいいね数や更新日時、前提条件、使用技術のバージョンなども確認し、複数記事の比較もすること。
個人ブログ
ただし、信頼できるかどうかはピンキリである。
特にWeb系とPythonは情報商材屋やプログラミングスクールに感化されて建てられているブログや、ステマのためのブログなどもあるため、必ず著者のプロフィールや経歴を確認すること。
フリーランスエンジニアといっても、どれだけ案件が来てるか、どれだけ儲かっているかは不明なので、一概に実力があるとは言えない。
また、上記のスクール・転職系同様、自分の商品を宣伝するためにブログを運営しているパターンもあるので注意。
独学で学んだことをアウトプットしているサイト(ただし、スクール卒業生が書いたサイトはこの限りではない)や、個人の趣が感じられるサイト、趣味で運営しているようなサイトは(あくまで先述のスクール系・転職系サイトと比べてではあるが)比較的信用できる。
先述の「情報商材屋やプログラミングスクールに感化されて建てられているブログ」については、簡単に言えば「こんな公式ドキュメント読めば分かる程度のことを記事にするな」と言いたくなるような記事のことである。
弊学の先輩曰く、「備忘録」というワードを加えるといい感じの結果が出やすいらしい。
また、どこのサイトでも載ってるコードを理解せずにコピペするのは厳禁なので注意!
社員技術ブログ
社員が技術についてアウトプット記事を書いているバターンがある。
これについても、個人ブログ同様ある程度信頼できると見ていい。
ただし、会社にもよるので信頼に足る会社かどうかは必ずチェックすること。
uBlacklistの使い方
検索結果にある「このサイトをブロックする」を押す
あるいは、拡張機能アイコンをクリックして、現在アクセスしているサイトをブロックする
拡張機能アイコンを右クリックしてオプションを選択すると、今までブロックしたサイトを管理できる。
リストのインポート・エクスポートも可能である。
なお、サイトをブロックしてもワンタッチで一時的な表示が可能である。
また、Googleドライブにリストをバックアップしておけば、他の端末やブラウザでもログインするだけで同じ設定が使える。
いちいち登録するのも面倒!見分け方も分からない!
そんな時は購読機能だ。
ちまちまブロックするかどうかの判断が面倒な人向けに、有志がフィルタを作ってくれていることが判明した。
余談
なお、スクショに二次元の女の子が透けて見えるのは私のLinuxデスクトップのpicomというソフトウェアで、ウィンドウが透けて見えるように設定しているからである。
わざわざ設定無効化するの面倒くさかったので許して…
検索方法
よく使うクエリ
site:
Plain Text
コピー
新型コロナウイルス site:go.jp //政府ドメインサイトに絞って、コロナについて調べる
青眼の白龍 site:yugioh-wiki.net //遊戯王Wiki内の青眼の白龍の情報を検索する
リザードン site:https://yakkun.com //ポケモン徹底攻略でリザードンの種族値を調べる
Git インストール site:qiita.com //Gitのインストール方法をQiitaで調べる
margin site:mozilla.org
//marginプロパティについて、mozillaが公開している公式ドキュメントで調べる
太字部分の後に任意のドメインを加えることで、特定のサイト内に限定して検索する。
マイナス検索
Plain Text
コピー
新型コロナワクチン -危険 //「危険」が含まれるサイトを除外
リオレウス -site:game8.jp //site:と組み合わせ、Game8を除外する
孫悟空 -ドラゴンボール //西遊記の孫悟空について調べたい時に
超硬質ブレード -MH3G //進撃の巨人の武器について調べようとしたらモンハンのサイトが出てきたので
マイナスを付けて検索ワードを入れることで、そのワードが含まれるサイトを除外して検索する。
完全一致
Plain Text
コピー
"ダイナモローラー"
//「ダイナモ」だけのページや「ローラー」だけのページが検索に引っ掛からなくなる。
"デカヌチャン"
//例えばポケモンSV発売当初はGoogleが
「"デッカチャン"の検索結果も含んでいます」と表示することがあった。
そういった新しい情報特有のGoogleのお節介を防ぐため。
AND検索・OR検索
Plain Text
コピー
バレルスピナー and ガチアサリ
//「バレルスピナー」と「ガチアサリ」の両方が含まれるサイトを検索
ポケモンSV パーティ バンギラス or サザンドラ
//バンギラスまたはサザンドラが含まれる対戦パーティを検索する
Flutter and "Cloudflare pages"
/cloudflare pagesでflutterをデプロイする記事のデータを探す
React and site:qiita.com or site:zenn.dev
//site:クエリなど他のクエリとの合わせ技も可能
その他のクエリはこちらから
英語検索
プログラミングをするなら、まず避けて通れないと思ったほうが良い。
エラー文をそのまま検索すれば、まずStackOverflowやGitHubのissuesに答えが載ってるので、それを先述のDeepLなどで翻訳して読むこと。
英語検索の常套句
日本語で検索文を作ってDeepLで翻訳するのもアリ
Plain Text
コピー
Vue.js not working
Django doesn't work
How to install Node.js
taskbar is not showing
英語版Google検索
何らかの検索ワードを入れた後に、アドレスバーの「hl=ja」という部分を「hl=en」にすると、英語版Google検索に切り替わり、英語検索が捗る。
ページ内検索
百聞は一見にしかず。今すぐこの場でCtrl+Fを押してみてほしい。
スマホの場合はブラウザのメニューに「ページ内検索」というものがあるはずだ。
Ctrl+Fを押すとページ内入力欄が出てくるので、試しに「完全一致」とでも入れてみよう。
一瞬でそのワードの箇所にジャンプできるので、検索結果の閲覧の時間短縮になる。
別の検索エンジンを使う
世の中のウェブサイトは、Google検索で引っ掛かることを前提にSEO対策をしている。
そのため、別の検索エンジンを使ったほうが良い結果が望める可能性がある。
おすすめはBingとDuckDuckGoだ。
特にBingはChatGPTとも連携しているため、今後発展していくものと思われる。
なお、Yahoo!はGoogleと共通のエンジンを使っているのでNGである。
何らかのサービスが障害を起こしている場合や、何らかのバグを発見した場合は、TwitterやYahoo!リアルタイム検索、GitHubのissueなどを使うと状況を手早く知られる。
また、StackOberflow、Qiita、Zenn、ArchWiki、各種公式ドキュメントなどで直接検索するのもアリである。
その場合、英語検索も必須スキルとなる。
GitHub
何故だか弊学は、ポートフォリオを作れとかいう癖にGitやGitHubの使い方も教えてくれない。
専門学校がどれもこうなのかは知らないが、まあそれはさておき、GitHubアカウントを作っておけば、自分が使用しているソフトウェア、ライブラリ、フレームワークなどが思うように動作しない時に、それらのリポジトリのissuesを確認することで、同じような問題を抱えている人の書き込みが見つかることがある。
StackOverflow同様の情報の宝庫なので、必ず確認すること。
当然英語スキルは必須である。
GPTに聞く
場合によっては、ChatGPTで聞いたほうが早い場合もある。
こんな感じに、やりたいことをやるにはどうすればいいかを聞けば、GPT-3が知っていることなら答えてくれる。
最も大事なこと
メディアリテラシーの話にも繋がるのだが、
必ず公式が出した情報、即ち「一次情報」を読むこと。
その他、留意すべき具体例を挙げれば、
各種言語・ライブラリ・フレームワーク・サービスの公式ドキュメントや、GitHubなどのリポジトリの情報を読むこと。
スクールや商材屋、或いはそれらに感化された人の書いた記事は論外。一次二次通り越して何次情報か分からない。
QiitaやZennなどのプラットフォーム記事、上に当てはまらない個人の記事も有用ではあるのだが、必ず更新日時・バージョン・前提条件の確認や複数記事の比較をすること。
体系的に学びたいなら、書籍やUdemy講座の利用も視野に入れること。
ローマは一日にして成らず。焦って変な情報に騙されて損をしないようにしよう。