WEB+DB PRESS vol.80
見本誌を頂きました。いつもありがとうございます。

- 作者: 鶴長鎮一,宮下剛輔,縣俊貴,中村知成,西尾泰和,新井俊一,南川毅文,伊藤直也,石垣憲一,浅木朗,渡邊恵太,中島聡,はまちや2,竹原,川添貴生,河合宜文,WEB+DB PRESS編集部
- 出版社/メーカー: 技術評論社
- 発売日: 2014/04/24
- メディア: 大型本
- この商品を含むブログ (4件) を見る
今回の特集は「Web技術入門」「実践テスト駆動インフラ&CI」「はじめてのMac開発環境」の三本です。また、特別企画として「エンジニアの学び方」、一般記事として「Courseraで計算機科学を学ぼう」などが掲載されています。
以下、簡単ではありますが紹介します。
Web技術入門
Web を支える技術が基礎から丁寧に解説されており、同じく技術評論社様から出版されている下記書籍の要約版という印象です。

Webを支える技術 -HTTP、URI、HTML、そしてREST (WEB+DB PRESS plus)
- 作者: 山本陽平
- 出版社/メーカー: 技術評論社
- 発売日: 2010/04/08
- メディア: 単行本(ソフトカバー)
- 購入: 143人 クリック: 4,320回
- この商品を含むブログ (176件) を見る
スマートフォンの爆発的な普及に伴い、「PCの死」と「平等なウェブ世界の終焉」 などとも言われる昨今ですが、今後のインターネットがどのように進化するとしても、本特集で解説されている技術に基づいて実現されるであろうことは間違いなく、「10 年先も役立つ」というサブタイトルの通り、末永く役に立つ内容です。
なんとなく Web アプリケーションを開発してしまっているエンジニアは、本特集を読んで基礎を固めると良いと思います。
実践テスト駆動インフラ&CI
米 Black Duck の「オープンソースルーキー」に入選 した serverspec の作者、宮下さんによる特集です。
自分が観測、記憶している限りでは伊藤直也さんの 「Kindle向けに『入門Chef Solo - Infrastructure as Code』を出版しました - naoyaのはてなダイアリー 」というエントリから広まったと思われる Infrastructure as Code と、これまではアプリケーションの開発手法であったテスト駆動、CI を組み合わせることで、インフラの構築もコードで表現し、自動的にテストしてしまおうという内容です。
serverspec が汎用的であるために、プロビジョニングツールには敢えて利用者の多い Chef ではなく、Puppet を採用されたとのことです。
まずは手元の Mac で Vagrant を使ってインフラコードを記述、テストした後、GitHub と Wercker, DigitalOcean を連携することで継続的にテストし、最後にこれらのワークフローを GitHub の PullRequest ベースに変革する手順が具体的に紹介されています。
仮想マシンを次々と上げ下げする必要のあるサービスを提供する企業などに勤めていないと、ここまでするメリットは実感できないかもしれませんが、インフラのコード化やテスト駆動、GitHub Flow は(もともとアプリ開発の現場から生まれた技術なので当然ですが)アプリケーション開発の現場においてもとても有効な技術なので、本記事に目を通して概要だけでも把握すると良いと思います。
はじめてのMac開発環境
Ruby on Rails と iOS アプリ開発の人気に伴い、Mac ユーザの数がとても多くなりました。自分も Windows から Mac に移行したひとりです。
本特集では、Mac OS X と Windows の違いについてはあまり触れず、Mac 初心者向けに UNIX コマンドや開発環境構築手順などを紹介した後、チュートリアル形式で簡易な Web アプリケーションを開発する手順を紹介しています。
近頃は Ruby on Rails をはじめ、Windows で開発するのが困難な Ruby 製プロダクトがとても多くなり、また DevOps 時代などと言われ、アプリケーションエンジニアにも Linux の操作を含めインフラの知識が当たり前に求められます。
これまで Windows とマウス、カーソルクリックでコンピュータと対話してきた方も、ぜひ本特集に目を通して CUI の世界に入門してみてください。
エンジニアの学び方
日々あふれ返る情報を効率的に収集、理解、応用する方法が解説されています。
この業界に長らく関わっている人であれば、それこそ勘と経験と度胸でこれらの情報を処理できていると思いますが、日々学習する習慣がまだできあがっていない人は、何から手を付けて良いか分からず、そうこうしている間に分からないことが増え続け、あっという間に学習できない悪循環に陥ってしまうのではないでしょうか。
まずは本記事に目を通し、ある程度は割り切って機械的に情報を処理していくことで、自分なりの学習リズムを作り上げることできると思います。本記事執筆者の西尾さんによる以下のスライドも併せて参照されると良いでしょう。
Courseraで計算機科学を学ぼう
スタンフォード大学などの有名教授による講義を全編英語の動画で学習しましょうという、なかなかハードな印象のあるテーマを取り扱った興味深い記事です。
自分も昨年、@wm_eddie さん から Coursera に Martin Odersky 教授の Functional Programming Principles in Scala という講義があることは教わっていたのですが、やはりそれなりにハードルが高く、まだ受講できていません。
とは言え、RailsCasts などを観れば分かる通り、技術系の英語であれば画像と併せて視聴することでとても理解し易くなるので、興味のある方は覗いてみるとよいと思います。
自分も、以下に引用する本記事のまとめ欄のひと言を胸に刻み、もう一度がんばってみようと思います。
向上心にあふれた本誌読者のみなさんは、Coursera のサイトにアクセスして、少なくとも受講登録まではしてくれることと期待しています。
まとめ
毎年恒例の新人さん大歓迎号ということで、エンジニアの基礎固めに最適な内容でした。
まだ Amazon に在庫 があります ので、新人さんに限らず、モダンな開発から長らく遠ざかってしまった管理者の方なども、目を通されると良いと思います。