こんにちは!WEBエンジニアのやすおです!
TwitterやFacebookなどのSNSでは「この本いいよ!おすすめ!」みたいな感じで、ときどき、オススメの技術書が紹介されることがあります。
なかには、賛成するものもあるのですが、ほとんどが・・・
ってものが多いです。
挫折するのは最悪ですし、もし挫折しなくて初めに難しすぎる技術書を読むのは時間の無駄です。
ですので、今回は、プログラミング未経験者が読んではいけない技術書を項目ごとに紹介します。
なお、プログラミング未経験者とは「Progateをちょっとやってみた」ぐらいのレベル感の方を指します。
項目は8項目。サーバーサイド言語は複数あるため紹介していません。
- Web
- Git
- javascript
- linux
- サーバー
- ネットワーク
- SQL
- その他
※紹介する本は全て筆者は読了済みです。
読んではいけないWebの技術書
ここでいうWEBとは「HTTPメソッド」や「Webブラウザ」などのWeb関連技術のことを指しており、エンジニアであれば避けて通れない分野です。
どうしてもプログラミング始めたての頃って、プログラミング言語の学習に目が行きがちで、周辺技術のWebそのものや、ブラウザに関しては学習が後回しになるんですよね。
Webを支える技術
TwitterなどのSNSなどで圧倒的に支持されている技術書No.2(やすお調べ)の「Webを支える技術」ですが、こちらは初心者の段階で読むのはオススメしません。
理由は難しすぎるからです。例えば、HTTPステータスを「1☓☓から5☓☓」まで羅列しているページや、一章丸々使って、最近あまり使われない「ブログのフィードに関する技術のAtom」を紹介していたりします。
100%途中で挫折するのでこの本は初心者の方は読まない方が良いでしょう。
「Webを支える技術」を読むのは実務に入ってからで十分です。
読んではいけないGitの技術書
Gitとはバージョン管理ツールのことで、自分が書いたソースコードなどのファイルのバージョンを管理するためのシステムです。
業務系の現場ではSVN(サブバージョン)が使われることが多いですが、WEB系では99%がGitを利用するので、出来るだけ早くから取り組むのが吉です。
独習Git
コチラの本も大変良書で、現場で分からないことが出てきた時に調べたり、知識を補完したりするのに使いました。
しかし、少々レベルが高いので、初心者の頃に読むと混乱を招く部分もありますし、分厚いので挫折しやす。
ですので独習Gitは、現場に入って課題が出てきてから読むのがちょうど良いでしょう。
初心者の頃に読むと挫折しやすいです。
読んではいけないJavaScriptの技術書
JavaScriptとはフロントエンドのプログラミング言語です。RubyやPHPはサーバー側で動く言語ですが、JavaScriptはブラウザ側で動く言語になります。
例えば、どこかのサイトの会員登録フォームに文字を入力したときに、内容が一部欠けていたりした場合に、「○○が未入力です」みたいな感じで、赤文字が表示されることがあると思うのですが、あれはJavaScriptで挙動を管理しています。
また、フォームを編集中にサイトを閉じようとすると、「編集が保存されていません。」みたいなポップアップがでてくることがありますが、あれもJavaScriptです。
Webエンジニアになる場合JavaScriptの知識は必ず必要になります。
JavaScript本格入門
コチラの本は僕自身、未だ理解があやふやなところがある本で、今でも読み返しますし、内容も丁寧でかなりの良書だと思っています。
しかし、はっきり言って難しいです。
ES2015の細かい仕様や、Prottypeなどの初学者には難しいトピックを扱っているので、実際に現場に入ってJavascriptを書き始めてから読んでも遅くないと思います。
この本は初学者のうちは手を出さない方が賢明でしょう。
業務でJavaScriptを書く場合は必ず読みましょう!
読んではいけないLinuxの技術書
Linuxとは、Windowsや、Macなどと同じOSです。
ソフトウェア開発の現場では、必ずと言っていいほどLinuxが利用されるので、現場ではLinuxの知識は必須となっています。(最低限コマンドは打てた方が良いです。)
Linux教科書 LinuCレベル1
Linuxの技術書で1からLinuxを学習しようと思っている方にとって、上記の様な資格本は全くお勧めできません。
なぜなら、資格を取るために必要な学習と、現場で使える技術の学習は全く異なるからです。
Linuxの認定試験であるLPICの学習においては、/etcにあるファイルやinitしたときになにが起こるかなど、事細かく学ぶことが求められますが、現場で使う知識とはまた違ってきます。
どちらかというと現場では、設定ファイルの編集や、Webサーバーに関すること、多種多様なコマンドを操ること等が重視されます。
資格関連の本は、資格を取りたいと思った時に読んだ方が良いでしょう。
読んではいけないサーバーの技術書
Webサイトを表示するために必要となる情報を格納しておく場所のことをWebサーバーと言います。また、メールを送信するための機能を格納している場所をメールサーバーと言います。
現場に出ると、インフラエンジニアだけでなく、バックエンドエンジニアも、必ずサーバーの知識は必要になります。
サーバー構築の実際がわかるApache実践運用/管理
Apacheとは現在日本で圧倒的なシェアを誇るWebサーバーの名前です。
他には「nginx」などが有名ですが、この様なWebサーバーとは何か? という本ではなく具体的なWebサーバーの本を読むのは後回しでもいいと思います。
理由としては、内容が難しいこともありますが、新人エンジニアが、すでに稼働中のサーバーをいじくることはまずないからです。
こういうWebサーバーに関する本は半年から1年の経験を積んでから手を出しても遅くはないでしょう。
読んではいけないネットワークの技術書
ネットワークとはPCとPCを接続する時の構成のことを言います。
ネットワークはインフラエンジニアや、ネットワークエンジニアに任せておけばいい!と思っている方もいると思いますが、バックエンドエンジニアもある程度知っておかないと彼らと円滑にコミュニケーションが取れません。
マスタリングTCP/IP
Twitterで圧倒的に支持される技術書No.3がこの「マスタリングTCP/IP」です。
この本はネットワークのことがある程度わかっていないと理解するのが難しいため、読まなくていいです。この本よりもネットワークに関する理解を深めることが圧倒的に優先順位が高いです。
しかし、実務に入ったら必ず読まなければならない必読書なので、「こういう本があるんだ」と思っていただければと思います。
読んではいけないSQLの技術書
SQLとは、データベースを操作するときに用いる言語です。
たとえば、データベースのユーザーテーブルから全ての情報を呼び出したいときには、下記の様なSQL文を打ちます。
SELECT * FROM user_table;
SQLの知識はバックエンドエンジニアにとっては必須になります。
達人に学ぶSQL徹底指南書
こちらもかなりの良書ですが、初めは同著者の「ゼロから始めるデーターベース操作」から読んだ方が良いです。
理由はこの本が、実務でのSQLの経験がある人を対象にしているためです。
両方とも「ミックさん」という方が書かれている本なのですが、出されてる本全てが良書なので実務に入ったら読んでいただきたいと思います。
その他の読んではいけない技術書
リーダブルコード
Twitterで圧倒的に支持される技術書No.1(やすお調べ)がこのリーダブルコードです。
今でも時々読み直すのですが、コラム形式で分かりやすく、オススメされている理由はよくわかりますし、かなりの良書であることは間違いないです。
しかし、リーダブルコードはコードを書き始めて、ある程度時間がたってから読むのが良いと思います。
なぜなら、コードの書き方は頭に残りずらいからです。
ってな感じで現場で悩む→リーダブルコードで該当のコードを改善→また悩む→リーダブルコード読む…
この流れが成長するにはベストなので、実務についてからでも十分だと思います。
終わりに
プログラミング初心者と実務経験者では読むべき本は変わってきます。
プログラミング初心者が初めに読む技術書は、イラストが沢山使われていたり、漫画になっていたり、出来るだけ簡単に書かれているものの方がいいです。
なぜなら、その方が圧倒的に挫折率が下がるからです。
挫折率が低い初級者向けの本も紹介しているので、興味のある方は下記リンク先をご覧ください。
逆に、ある程度学習が進んでおり、もう一歩先に進みたいと思っている方にとっては当記事で紹介した本は、おススメなのではないでしょうか。
特に、Twitterで圧倒的に支持される技術書は必ず読むことをおススメします。
- リーダブルコード
- Webを支える技術
- マスタリングTCP/IP
以上です。
僕は元々Fラン大学出身で、ブラック企業の社畜だったのですが、30代前半でWEBエンジニアとしてIT企業に転職して人生が大きく変わりました。
WEBエンジニアは実務経験1年程度あれば月収50万円は稼ぐことが出来ますし、実務経験2~3年程度あれば年収1000万円稼ぐことも可能です。
もちろん稼ぐためには努力は必要です。しかし、逆を言えば「努力が必ず報われるのがエンジニア」という職業です。
エンジニアになって稼ぎたい!理想の働き方をしたい!と思っている方は「未経験からエンジニアになる方法」を読んで、ぜひ挑戦してみてください。