初心者プログラマーがGoogle先生と仲良くなる方法
プログラムを始めた。でも分からないことがある。
他人に質問したら「ググれカス」って言われた。検索しろってこと? そもそもどう検索すればいいか分からないのに!
という人向けの話。既にGoogle先生と仲良しの人は温かく見守っててね。
1.Googleにアクセスします
https://www.google.co.jp
Googleでなければいけない。Yahooではダメだ。Beingでもダメだ。「別に良いだろ」という人も居るかもしれないが、世界で一番頭の良い検索エンジンは2018年6月時点ではGoogleなのだ(私の中では)。
なのでGoogleにアクセスする。賢いプログラマー(或いは賢いブラウザ)はURLが既にGoogleの検索窓になっているのでこっちを使ってもいい。
2.「使っているツール 調べたいこと」と入力します
例えば君が「Unity使ってるんだけどキャラクターの移動方法が分からないんです」という状態なら、「unity キャラクター 移動」と入力して検索する。
Google先生は頭が良い。やりたいことを半角スペースで繋ぎながらそのまま入力すれば大体出て来る。
何なら上記の「Unity使ってるんだけどキャラクターの移動方法が分からないんです」をそのまま入力してもちゃんと出て来る。すごい。
3.検索結果の中から、日付が新しいページを見ます
ページタイトルとキャプションから、目的と合致したページかどうかは読めば分かるだろう。
寧ろ注目して欲しいのは日付の方で、これが古い物はあまり参考にならない。現行バージョンだと仕様が変わっているケースが多いからだ。
逆に何らかの事情によって古いバージョンを使っていて、古い情報を得たいという場合は日付の古い物を見れば良い(まぁ検索する時にバージョン数入れるか、「ツール」で絞り込んだ方が良いかもしれないけど)。
4.検証します
よく「ネット上に落ちているコードをそのまま使うな」と言われるが、初心者はこの限りではないと思う。
初心者が1から書くなんて難しいんだから、ある物を使えばいい。
全部理解出来なくたって、理解出来る量を徐々に増やしていけばいい。既存のソースにコメントを付け足していくのもいい。
「何故こう書いているのか」を理解すれば、カスタマイズ出来るようになる。次は自分で書けるようになる。
ただ、そもそもちゃんと動くのか充分な確認はもちろん必要。
理解して、自分のプロジェクトに合うように書き換える必要があるだろうし、信頼がおけるソースなのかも確認が必要だろう。
この辺も「場慣れ」が物を言う。セカンド・オピニオン(こっちのサイトだとこう書いてあるけど、違うサイトではどう書いているか)も割と重要。ガンガン調べて、見比べるのだ。
以上!
これが基礎。超簡単。でもこれだけでQAサイトの3〜5割ぐらいは解決出来るんじゃないかと思う。
Google先生は何でも知っている。というか「自分の困り事は大体もう既に他の人も困っている(そして大抵は解決済み)」なのである。
実践編1.エラーコードはコピペする
エラーが出た。動かん!という場合。
まずは落ち着いて、エラー文をコピーし、そのままGoogleの検索窓にペーストし、検索する。簡単な問題ならこれだけで解決する。(何なら「エラー文の英語をそのまま読んで直せばOK」という場合もあるが、英語が読めない人はGoogle先生に翻訳を頼もう)
その際「エラー文のどこをコピペするか」というのが結構重要。
これは言語により異なるが、「何か見出しっぽいところ」「error of 〜 の〜部分」「〇〇exception」辺りが怪しい。
逆に自分の開発環境独自っぽい部分(ファイルパスとか)は削るとヒットしたりする。
実践編2.""に気を付ける
通常、半角スペースは「and」の意味を持つが、 ""で括った文章内のスペースはスペースとして認識する。
例えば「unity "animator controller"」はきちんとスペースが入った状態のものがヒットする。
逆に、スペースをandのつもりで検索するはずが、元の文に""が付いていて「ヒットしないぞ?」みたいなことになるケースもあるので注意する。エラーコードのコピペ時に時々起こる。
実践編3.「ツール」を使う
検索結果が表示されているページの右上(検索窓の下)に「ツール」というボタンがある。
ここを押すと「すべての言語」「期間指定なし」「すべての結果」というプルダウンがあり、それぞれ絞り込みが出来る。
「俺は日本語しか読みたくないんじゃ!」「直近の情報をくれ!」「空気を読むな、完全一致だけ欲しい!」という場合は使うとよい。
実践編4.英語を恐れない
1つ上とちょっと矛盾するが、プログラムの話題は大体英語で書かれている。
StackOverflow(エラーの1種じゃなくてプログラマー向け海外の大手QAサイト)なんて、もう大体のエラーは出切ってるんじゃないかというぐらい情報が蓄積されている。他にも先日話題になった設計図共有サイト(笑)Githubや、各種プログラムのフォーラムは大抵英語だ。
ここに詰まった情報を「英語だから」という理由だけで見過ごすのはもったいない。
英語が読めなくたって平気だ。ページを開き、Google先生に「翻訳」と入力して出た窓に、英文をコピペして翻訳すればいいんだから。(※大抵プログラム用語と混ざるので、出来るだけ自分で読めた方が良いのは確か)
なんでこんなことをわざわざ書くかって? 私の上司が英語記事は見ない派だったからだよ! そこに解決方法書いてあるだろと何回言ったことか!
実践編5.検索結果を検索する
分からないことがあった。検索した。一部は分かったが、まだ分からない所がある。或いは知らない単語が出て来た。
こういう場合はどうするか? 更に検索すればいい。
こうやってどんどん検索していくと、自分に知識が蓄積されていく。前に似たようなこと調べたな? 前に調べたアレは使えるかも? というインデックスが増えていけば、自然と手も早くなる。
あと便利そうなサイトはブクマすると一発で飛べる。便利だね!!
結論.さぁググれ!
それでもどうしても分からなかったら、質問だ!
いいもの食べていいゲーム作りたいです。良ければサポートお願いします。