プログラミング初心者向けの書籍をまとめました。しかし、プログラミング言語についての解説本はゼロです。
プログラミングやエンジニアについて誤解されがちなことですが、エンジニアの仕事はコードを書くことではなく、技術で問題を解決することです。そのためには、コードの書き方よりも大切なことがあります。書籍は僕にプログラミングを教えてくれたスーパーエンジニアが選んだものです。
Webを支える技術
Webエンジニアになるためには、プログラミングの知識の他に、そもそもWeb(インターネット)がどのように成立しているかの基礎技術が必要です。特にWebサービスを作るならHTTP、REST周りはしっかり読み込むことをおすすめします。
スーパーエンジニアによると、「microformats、Atom、Atom Publishingの部分については本筋ではないので、軽く読む程度で良い」とのことでした。
マスタリングTCP/IP 入門編
サーバーやネットワークに関する入門書です。Webエンジニアも基礎的な知識は理解しておかないと、せっかく作ったWebページやサービスをインターネット上に設置できなくて困ります。
例えば、IPアドレスって何?DNSって何のためにやるの?などが包括的に理解できるようになります。第1~2章のプロトコル全般に関する記述だけでも読んでください。
アジャイルサムライ – 達人開発者への道
WebサービスやWebページを作るプロジェクトを進めるための手法「アジャイル開発」についての書籍です。システム開発の進行は関係者の技術レベルがさまざま(エンジニアではない人もチーム内にいる)ため、非常に難航する場合もありますが、事例や方法論を持っていれば武器になります。
なお、Kindle版も出ていますが、レイアウトが見づらいので書籍版を買ってください。
IAシンキング
情報アーキテクチャ(Information Architecture)について書かれた本です。Webサービスやデザインを作るときに、どこにどのように情報を設置するのがユーザーにとってベストかを考える際に、IAの知識があれば建設的に決めることができます。
Webエンジニアではなくても、確証を持ってUI(ユーザーインターフェイス:ユーザーに見せる情報)の提案をすることができますので、Webディレクターも必読。
ノンデザイナーズ・デザインブック
Webサービスの設計においては、Webデザイナーがデザインを担当することが多いですが、場合によってはWebエンジニアにも意見を求められます。
良いデザインを作るためのルールと実例が紹介されているので、デザインの意図、デザイナーの意思を理解することができる本です。
A/Bテストの教科書
プログラミング初心者にとっては、新しいサイトをゼロからプログラミングで作るよりも、すでに公開されているサイトを修正する機会の方が圧倒的に多いです。
その際に必要となるのがA/Bテストという手法で、新旧のデザイン変更や機能改善を比較して、開発の方向性を決定していきます。A/Bテストには正しい進め方があるので、無駄にテストを重ねないためにも、Chapter 03のテストプロジェクトを立ち上げるだけでも読んでください。
まとめ
プログラミング初心者が結果を出すための書籍についての解説は以上です。実際にエンジニアとして関わる業務に対して必要な知識を学べるラインナップになっているので、コードや言語の勉強をする合間に少しずつ読んでもらればOKです。
初心者がプログラミングを勉強する方法ですが、オススメはプログラミング学習サイトを使って節約しつつ、学習サイトを一巡したらプログラミングスクールに通うことです。
いきなりスクールにはとりあえず体験会や説明会だけ参加しつつ、入校するまでの合間に学習サイトで前提知識をつけておく。そうすると、スクール開始からロケットスタートできるので、時間とお金が節約できます。
プログラミングスクールの決め手がなくて悩んでる人:プログラミングの勉強をしたいんだけど、本業もあるし独学で学習するのは自信がない。できれば分からない部分の相談に乗ってもらいながら勉強するタイプのプログラミングスクールに通いたいけれど、どの学[…]