2015年、買ってよかったWeb制作・プログラミング等の本

[`evernote` not found]
[`livedoor` not found]
[`yahoo` not found]

今年も後1日で終わりです。いろいろあったような気がするけど、そうでもなかったような年でした。

ちょっとだけ自分の話をすると、ブログの更新頻度が下がったのは、あることを成し遂げようとして、そちらに時間を割いたからなのですが、結局途中で挫折しました(まあ、挫折した後も更新頻度あがらなかったわけですが……)。

仕事のほうはというと、就職して初めて出張しました。飛行機(格安航空)で東京や北海道まで行きました。その出張することになったあるプロジェクトで、初めてLinuxとシェルスクリプトに携わりました。大変だったけど、面白かったです(その時は、ですが)。

というわけで、今年も買ってよかった技術書(Web制作・プログラミング関連の本メイン)を10冊に絞って紹介します。紹介順は購入した順番です。2015年に買ってよかった本といっときながら、昨年購入したけど昨年時点では読み終えてなかった本も含みます。
過去のエントリーは下記。
2013年、買ってよかったWeb制作・プログラミング等の本 | while(isプログラマ)
2014年、買ってよかったWeb制作・プログラミング等の本 | while(isプログラマ)

プロとして恥ずかしくない 新・WEBデザインの大原則

プロとして恥ずかしくない 新・WEBデザインの大原則
プロとして恥ずかしくない 新・WEBデザインの大原則
昨年の12月に購入した本。WEBデザインとあるけど、中身は配色やユーザビリティやアクセシビリティ、Sass、運用・分析手法など、Web制作(フロントエンド側)全般について書かれた本。
Webフォントとして利用できる日本語フォントについてもいくつか紹介しており、使ってみたいと思った(まだ使ってない……)。

Webエンジニアの教科書

Webエンジニアの教科書
Webエンジニアの教科書
3月に購入した本。Ruby on RailsやPHPでのサーバ言語、NoSQL、データの可視化や環境構築まで、Web技術全般について幅広く書かれた本。ただ、教科書とあると初心者向けなイメージがあるけど、少なくとも初心者向けではない。ある程度フロントエンドやサーバサイドに携わったことがある人じゃないと少しむずかしいんじゃないかと思った(少なくとも、SQLは分かってないと難しいと思う)。
自分はまだこの本のレベルに達していないのだけど、これぐらいのことを分かっておきたいとは思った。

現場のプロが教えるHTML+CSSコーディングの最新常識 知らないと困るWebデザインの新ルール4

現場のプロが教えるHTML+CSSコーディングの最新常識 知らないと困るWebデザインの新ルール4
現場のプロが教えるHTML+CSSコーディングの最新常識 知らないと困るWebデザインの新ルール4
3月に購入した本。『知らないと困るWebデザインの新ルール』シリーズ4つ目。最近のHTMLとCSSのコーディング手法について書かれた本。AltJSだとかCSSプリプロセッサだとか、覚えたら便利なんだろうけど、面倒そうなうえに、直接修正してしまったら後から修正が困難と思っていて敬遠しているのだけども、Emmetという短縮記法はそういう問題もなく、すごい便利だと思った。

コーディングWebアクセシビリティ – WAI-ARIAで実現するマルチデバイス環境のWebアプリケーション

コーディングWebアクセシビリティ - WAI-ARIAで実現するマルチデバイス環境のWebアプリケーション
コーディングWebアクセシビリティ – WAI-ARIAで実現するマルチデバイス環境のWebアプリケーション
3月に購入した本。Webアクセシビリティについての具体的な書き方について。今までアクセシビリティについては意識したことはなかったのだけど、この本を読んで意識してコードを書いていきたいと思った。

ブレイクスルーJavaScript フロントエンドエンジニアとして越えるべき5つの壁 オブジェクト指向からシングルページアプリケーションまで

ブレイクスルーJavaScript  フロントエンドエンジニアとして越えるべき5つの壁―オブジェクト指向からシングルページアプリケーションまで
ブレイクスルーJavaScript フロントエンドエンジニアとして越えるべき5つの壁―オブジェクト指向からシングルページアプリケーションまで
5月に購入した本。フロントエンドエンジニアとしてステップアップしたいと思ったら読んだほうがいいと思った本。JavaScriptのオブジェクト指向、UI・インタラクティブ表現、グラフィック表現、Ajax・API連携、シングルページアプリケーションについて網羅してある。jQueryの$.Deferredの勉強にもなった。

これからの「標準」を学ぶマルチデバイス対応サイト構築

これからの「標準」を学ぶ マルチデバイス対応サイト構築 (Web Designing BOOKS)
これからの「標準」を学ぶ マルチデバイス対応サイト構築 (Web Designing BOOKS)
6月に購入した本。名前のとおり、パソコンやスマホやタブレットなど、様々なデバイスに対応したサイト制作について書かれた本。レスポンシブデザインはもちろん、画像の最適化やWebページの高速化まで。
Webページ最適化はなるほどと思うところも確かにあったのだけど、CSSのファーストビューの箇所のみインライン化するというのはさすがにやりすぎじゃないかと思った。修正がかなり大変になりそう。

SQL実践入門 高速でわかりやすいクエリの書き方

SQL実践入門──高速でわかりやすいクエリの書き方 (WEB+DB PRESS plus)
SQL実践入門──高速でわかりやすいクエリの書き方 (WEB+DB PRESS plus)
8月に購入した本。今年、うちの会社の技術に関して、かなりの広範囲を担当していた上司が退職し、自分はデータベースを引き継ぐことになったので読んでみた。正直、SQLは基本的なselect文が分かれば後はパズル的な感じと思っていたし、実際そういう箇所も多いのだけど、ウィンドウ関数すら自分にとっては目からウロコだった。コレ知ってると、ウィンドウ関数が使えないMySQLは使いたくなくなります。
他にもデータベースの更新処理が非同期など、初めて知ることが多くあったので、自分はまだまだデータベースについて精通していないことを実感した。もっと勉強していきたいです。

JS+Node.jsによるWebクローラー/ネットエージェント開発テクニック HTML文法解析から機械学習まで まだ、Webデータを手で集めていますか?

JS+Node.jsによるWebクローラー/ネットエージェント開発テクニック
JS+Node.jsによるWebクローラー/ネットエージェント開発テクニック
10月に購入した本。Webスクレイピングとありますが、スクレイピングしたデータを用いた形態素解析やベイジアンフィルタによる分類、文字認識やチャートの作成と、かなり広範囲に書かれておりJavaScript(ほとんどはNode.js)でここまでできるのかと驚きました。本当に、いろいろな手法が書かれており、自分もいろいろ試してみたいと思いました。
今回紹介する本の中で、最も買ってよかったと思った本です。

図解HTML5&CSS3 最新版

今すぐ使えるかんたんmini 図解 HTML5&CSS3[最新版]
今すぐ使えるかんたんmini 図解 HTML5&CSS3[最新版]
正直、1000円程度の本を買う必要があって買っただけで、さほど内容については期待してなかったのですが、薄い本ながらもHTML5とCSS3について広範囲に書かれており、HTML5にどういうものがあるか振り返るのにいいと思いました。
よくよく考えたら、今年購入した本でWeb Componentsについて書かれてる本はこれだけかもしれない。

新米探偵、データ分析に挑む

新米探偵、データ分析に挑む
新米探偵、データ分析に挑む
11月に電子書籍版を購入。とある弁当屋の統計技師(データサイエンティスト) ―データ分析のはじめかた―の著者による、最新の統計(?)小説です。
平均や中央値などの統計の基本的なことから、回帰分析や因子分析、テキストマイニングにまで幅広く、R Studioを用いた方法について書かれており、さらに小説形式なのでどういう時にどういう解析をすればいいのかも分かり、ためになった。
とはいっても、最近はR言語を全く触ってないんですけどね……。

以上、オススメの10冊でした。もちろん、他にもいろいろ買ったのですが、あまりに多くなるのもなんなので10冊にしぼりました。一応、その他に今年買ってすでに読み終えた技術書を下記に列挙しておきます。
Webエンジニアが知っておきたいインフラの基本 ~インフラの設計から構成、監視、チューニングまで~
Web API: The Good Parts
CSS3&jQueryで作る スマートフォンサイトUI図鑑 (WEB PROFESSIONAL)
Gitが、おもしろいほどわかる基本の使い方33〈バージョン管理、SourceTree、Bitbucket〉
頼られるWeb担当者になる! Googleウェブマスターツールの教科書
WEB+DB PRESS総集編[Vol.1~84] (WEB+DB PRESS plus)
ヘルシープログラマ ―プログラミングを楽しく続けるための健康Hack(これは技術書じゃないですが)
入社1年目からの「Web技術」がわかる本
プログラマ脳を鍛える数学パズル シンプルで高速なコードが書けるようになる70問

決して、良書ではないというわけではないです。どちらかというと、読んだものはいいものの、実践できていないという本がオススメ10冊から漏れました(特に、インフラ本とWeb API本とGit本)。
ただ、『入社1年目からの「Web技術」がわかる本』については、誤字脱字が多く、それが修正されない限りはオススメしません。
『WEB+DB PRESS総集編[Vol.1~84]』については、総集編だからという理由で外しました。オススメからは外しましたが、買って損はないと思います。

それにしても、こうやって振り返ってみると、昨年とくらべてもあまり読んでる本が代わり映えしていないような気がします。内容が大きく変わったかというと、そうでもないし、試せているかというと全くそんなこともないわけです。
正直いうと、現状、読んで満足してしまってる本も多いので、来年はもう少し読む数を減らして、実際にコードなどを試していく作業をもっと増やしていきたいと思います。

paizaの恋愛SLGの水着とサンタ服がゲットできない……

[`evernote` not found]
[`livedoor` not found]
[`yahoo` not found]

先日、paizaからプログラミングで彼女を作るゲームが発表されました。
恋愛SLG: プログラミングで彼女をつくる|paizaオンラインハッカソン7
参考:プログラミングさえできれば誰でも彼女がつくれる恋愛シミュレーションゲーム「プログラミングで彼女をつくる」 – GIGAZINE

内容は出題されたプログラミングの問題を解くと、その問題にあわせて彼女用のパーツや衣装をゲットできるというもの。

とりあえずコツコツやって、全部ゲットできたらブログに「彼女ができました」というエントリーでも書こうかと思ったのですが、何度やっても「水着」と「サンタ服」をゲットできないでいます。どちらも、提出前動作確認では合格するのですが、テストケースで失敗します(サンタ服のほうなんて、テストケース3までは合格しますが、4で失敗します)。テストケースはデバッグできないのでほとほと困っています。

試したコードは下記です。

これを実際にブラウザ上で動作するようにしてみたのが下記のページ
paizaのサンタ服と水着ゲットチャレンジ

水着ゲットチャレンジで38を入力すると742912となりますし、サンタ服ゲットチャレンジで問題ページの入力例2を入力すると240になり、何が間違っているのか全く分からないでいます。環境がNode.jsとブラウザ(Chrome)で違うというのがあるのかもしれませんが、paiza.IOでもうまくいっているように見受けられるので、多分環境が原因ではないと思います。

誰か失敗する原因が分かる方はヒントを教えて下さい(失敗するテストケース等)。