うさぎ組

ソフトウェア開発、チームによる製品開発、アジャイル、ソフトウェアテスト

うさみみエンジニアが2012年に買った技術書

追加 2013/01/01 ここから
僕の読書方法Togetter
うさみみさんの本の読み方 - Togetterまとめ


(2012年の【僕がソフトウェア開発を勉強し始めて3年間でやったこと - うさぎ組】のときに「どのように読書しているか」への質問ツイートへの返答をまとめたもの)
追加 2013/01/01 ここまで

なんかTwitterでつぶやいたら気になるとの事だったのでのっけてみます。
(個人的には他人のが気になるので、これを見た人が自分のを公開してくれるとうれしい

とりあえず、新しく買ったり、借りたりして読んだ技術書は全部のっけます。
2011年に既に買っているものは省いています。


その中でもいいなって思ったのは前半で括りだしてみました。
「いいな」っていうのは「今の自分にぴったりだったな」っていう意味で良書かどうかはまた別かもね。

うさみみ的によかった新しく読んだ書籍たち

実践テスト駆動開発 テストに導かれてオブジェクト指向ソフトウェアを育てる (Object Oriented SELECTION)

実践テスト駆動開発 テストに導かれてオブジェクト指向ソフトウェアを育てる (Object Oriented SELECTION)

2012年最高の邦訳書と言っても過言ではないでしょう。素晴らしい。
内容的にはモックを使いながらTDDをすることで、モジュール|コンポーネントの成長を促しましょうという話です。
これは正直テストエンジニアに読んでほしいです。
せめて、コードレベルでTDDを理解できる人にテストエンジニアになってほしい。普段から実践するほどであれとは思いませんが。


継続的デリバリー 信頼できるソフトウェアリリースのためのビルド・テスト・デプロイメントの自動化

継続的デリバリー 信頼できるソフトウェアリリースのためのビルド・テスト・デプロイメントの自動化

こちらも素晴らしい書籍です。個人的には今後数年のバイブル的なものですね。
GOOSとどちらを推すか迷ってしまいます。むぅ。
そしてどちらも和智さん訳だ!




実践プログラミングDSL ドメイン特化言語の設計と実装のノウハウ (Programmer’s SELECTION)

実践プログラミングDSL ドメイン特化言語の設計と実装のノウハウ (Programmer’s SELECTION)

この書籍はGroovy, Scala, Rubyと紹介しています。内容的には結局Scala押しかよ!っていう感じなんですけど。
あくまで個人的な感想だとファウラーのDSL本よりよいです。




ノンデザイナーズ・デザインブック [フルカラー新装増補版]

ノンデザイナーズ・デザインブック [フルカラー新装増補版]

これは本当にわかりやすくてすばらしかったです。どれくらいわかりやすいかと言うと、高校の教材でも大丈夫なくらい。
配色とか、位置とかこういう視点で考えるっていうやり方があるんだなっていう発見。
ある視点を知ると、その書籍にはない視点を想像しやすくなったりするわけですが、そういう意味でとてもよかったです。




Griffon in Action

Griffon in Action

みなさん大好きGroovyのデスクトップアプリフレームワークGriffonです。Grailsに強く影響されています。
この書籍自体は現行の1.0リリース直前に出されたのですが、ほとんど1.0と差がないので書かれている無いようであればほとんど問題なかったはずです。
ステップバイステップで非常にわかりやすかったですね。




アジャイルソフトウェアエンジニアリング (マイクロソフト関連書)

アジャイルソフトウェアエンジニアリング (マイクロソフト関連書)

素晴らしい事例だと思いました。自社でも社内ツールをつくることがあるので、こういった感じで進めたいなぁとよく読み返します。





JUnit実践入門 ~体系的に学ぶユニットテストの技法 (WEB+DB PRESS plus)

JUnit実践入門 ~体系的に学ぶユニットテストの技法 (WEB+DB PRESS plus)

個人的には、JavaAndroidアプリをつくる人には必ず読んでおいてほしいです。
xUTPを読む前にこれを読むとわかりやすいはず。




Specification by Example: How Successful Teams Deliver the Right Software

Specification by Example: How Successful Teams Deliver the Right Software

これ、まだ途中なんですけど、久しぶりのスマッシュヒットな気がしています。素晴らしいです。
来年読書会やりたい程度には。




Webアプリのことあんまり知らなかったのですが、これでだいたい世の中のWebサービスの基本の一部にとっかかりをもてたような気がします。
HTTP使っているのはわかっているけど、どんな形式で、どういったことを、どんな風に扱う選択肢があるんだろうっていうのがわかってよいです。





ソフトウェアアーキテクチャ―ソフトウェア開発のためのパターン体系

ソフトウェアアーキテクチャ―ソフトウェア開発のためのパターン体系

最近パターンが好きで、PLoP系に手をだしました。内容も素晴らしいですがこのような活動をしているということが書籍になっていて読めるという事に感動しました。




プログラムデザインのためのパターン言語―Pattern Languages of Program Design選集

プログラムデザインのためのパターン言語―Pattern Languages of Program Design選集

こちらもPLoP本です。面白い!




プログラミング in OCaml ~関数型プログラミングの基礎からGUI構築まで~

プログラミング in OCaml ~関数型プログラミングの基礎からGUI構築まで~

五十嵐先生のOCaml本です。とても素晴らしいです。OCamlのことについて細かく書かれています。
プログラミングの基礎でしかやったことがなかったのでこれでだいぶ勉強になりましたね。
いまだと出版社のほうで電子版がでていたような気がします。



すごいHaskellたのしく学ぼう!

すごいHaskellたのしく学ぼう!

Haskellのことはすっかり忘れていたのですが、これで再度学習しました。非常にわかりやすいですね。内容が簡単というわけではなく、非常に順序がよくつまづきにくい気がしました。
これはたしかid:bleis-tiftさんがよいレビューを書いていた気がします。




僕の今年のソフトウェアテストに関する活動の多くはこの書籍に支えられている気がしますね。はい。
ソフトウェアテストに興味がある方はぜひご一読ください。僕としてはこれはぜひすすめたい。





データベースシステム概論

データベースシステム概論

RDBの歴史だったり、RDBの基礎的なところが語られています。これを読むとSQLは意外とふわっとしているのではないだろうかという気がしてくる不思議ですね。
Dやろうよ!とか言いたくなる気がします。業務的にSQLに使えるわけじゃないのですが、非常に勉強になります。



コンパイラ―原理・技法・ツール (Information & Computing)

コンパイラ―原理・技法・ツール (Information & Computing)

パース処理について丁寧に書かれていました。とても長いので苦労しましたが、体系的に学べるのでやはりよいですね。


実践ソフトウェアエンジニアリング-ソフトウェアプロフェッショナルのための基本知識-

実践ソフトウェアエンジニアリング-ソフトウェアプロフェッショナルのための基本知識-

これも今年のスマッシュヒットですね。著者のプレスマンはかなり先見性がある人だとよくわかります。
基本的には手法のカタログ的な感じなのですが、それぞれに対する考察や関連する引用が非常にすばらしいものを使っています。引用元がオープンになっているものとかもあるのでそれらを見てよく勉強しています。



【Groovy in Action 2nd edition(MEAP)】
まだ正式発行されていませんが、Manning.comでMEAP版(オープンβみたいなもの)で読む事が出来ます。
1stにはなかった章がすでに公開されているので勉強になります。




Jenkins

Jenkins

Jenkinsに関しては個人的にはこの書籍以上のものが思いつきません。
これに足りないものはアドホックな対応が必要なものなので、ブログになるかなぁという意味です。
いや、本当に網羅的で素晴らしい。


Clean Coder プロフェッショナルプログラマへの道

Clean Coder プロフェッショナルプログラマへの道

これはエンジニアとして必読だと思います。新人が入って来たら必ず読ませたい。



アプリケーションをつくる英語 ―エンジニアよ、世界市場を狙え! ―

アプリケーションをつくる英語 ―エンジニアよ、世界市場を狙え! ―

とりあえずざっと読んで、あとはリファレンス的につかうものですかね。
でも、これがないとたぶん新人プログラマーさんはどんな英単語つかっていいかわからないと思う。
必携です。




IA100 ?ユーザーエクスペリエンスデザインのための情報アーキテクチャ設計

IA100 ?ユーザーエクスペリエンスデザインのための情報アーキテクチャ設計

これもまだ途中なんですけど、なんとなくいい雰囲気を醸し出しています。もうちょっと読むとなんとなく掴めそうです。





その他に新しく読んだもの

ソフトウェア品質保証入門―高品質を実現する考え方とマネジメントの要点

ソフトウェア品質保証入門―高品質を実現する考え方とマネジメントの要点





【この1冊でよくわかる】ソフトウェアテストの教科書―品質を決定づけるテスト工程の基本と実践

【この1冊でよくわかる】ソフトウェアテストの教科書―品質を決定づけるテスト工程の基本と実践






データ指向のソフトウェア品質マネジメント―メトリクス分析による「事実にもとづく管理」の実践

データ指向のソフトウェア品質マネジメント―メトリクス分析による「事実にもとづく管理」の実践




リーン・スタートアップ

リーン・スタートアップ




チケット駆動開発

チケット駆動開発




アジャイル・ユーザビリティ ―ユーザエクスペリエンスのためのDIYテスティング―

アジャイル・ユーザビリティ ―ユーザエクスペリエンスのためのDIYテスティング―



リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)



アート・オブ・アプリケーション パフォーマンステスト (Theory in practice)

アート・オブ・アプリケーション パフォーマンステスト (Theory in practice)




アントレプレナーの教科書

アントレプレナーの教科書




演習で学ぶソフトウエアメトリクスの基礎 ソフトウエアの測定と見積もりの正しい作法

演習で学ぶソフトウエアメトリクスの基礎 ソフトウエアの測定と見積もりの正しい作法




ソフトウェア見積り

ソフトウェア見積り