技術書

Effective Amazon Machine Learning

by Alexis Perrier どんな本か AmazonのMLサービスについて書かれた本。まとまって書かれているものはあまり無いので貴重。 Amazon MLについて 意外なほど機能が限定されている。できるのはクラス分類と回帰だけ。モデルも線形のみ。クラスタリングや次元削…

Pythonではじめる機械学習 ―scikit-learnで学ぶ特徴量エンジニアリングと機械学習の基礎

Andreas C. Muller, Sarah Guido Pythonの機械学習ライブラリ scikit-learn を使って、さまざまな機械学習アルゴリズムの使い方を学ぶ。特徴的なのは、アルゴリズムの詳細には立ち入らず、使い方に重点を置いていること。とはいっても、ライブラリの使い方だ…

Cython ―Cとの融合によるPythonの高速化

Kurt W. Smith 著 PythonとRubyって、一時はキャラがかぶって競合関係にあったような気がするのだけど、今ではWebならRuby、科学技術計算ならPython と別れてしまったような気がする。numpyやscipyなどの数値演算ライブラリを使うと、Pythonで科学技術計算が…

ZooKeeperによる分散システム管理

Flavio Junqueira, Benjamin Reed ApacheのHadoopプロジェクトから派生したZooKeeperを紹介した本。頑健な分散協調を容易にしてくれるZooKeeperだが、実際にはかなり落とし穴がボコボコある。落とし穴の避け方を教えてくれるのがこの本。Zab プロトコルも詳…

Head First C ―頭とからだで覚えるCの基本

「チャート式技術書」とでもいうべき、半分おちゃらけた感じの技術書シリーズの一冊。 「Head First」は「頭から飛びけむ」ぐらいの意味で、「あまリ考えずにとにかく手を動かせ」というような ニュアンスなのかと思われる。 アメリカには「XXX for Dummies…

入門 ソーシャルデータ ―データマイニング、分析、可視化のテクニック

非常に実践的なソーシャルデータ解析入門書。ソーシャルデータの処理は、理屈はともかく実際にデータを取ってくるところでいろいろと知識が必要でなかなか先に進まなかったりするわけだが、この本はその辺りを埋めてくれる。対象は電子メイル、Twetter, Link…

RDBMS解剖学 よくわかるリレーショナルデータベースの仕組み

鈴木 幸市, 藤塚 勤也 翔泳社のDBマガジンに連載された記事をまとめたもの。2005年の発刊なので相当に古いのだけど、 基礎的な内容なのでそれほど古くなった感じはしない。SQLもDBの使い方も知っているけど内部構造を知らない人に向けて、内部構造の概要を解…

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

Dustin Boswell Trevor Foucher プログラムをきれいに書こう、という話はよくあるが、「きれい」というのは基準になってるようで なってない。なので、ついついリファクタリングやりすぎて無駄に抽象クラス作ってみたり、 無駄にファクトリクラス作ってみた…

デバッグの理論と実践 ―なぜプログラムはうまく動かないのか

Andreas Zeller 未だに個人的な技芸の域を脱しきれていないプログラミングと言う過程の中でも特に 属人的な要素の強いデバッグという過程に対して、「科学的」な手法を適用すれば システマティックにデバッグできることを示している、かなり画期的な本。 個…

2週間でできる! スクリプト言語の作り方

千葉 滋 Javaでスクリプト言語を作る本。著者は、畏友 千葉さん。お忙しいのに本まで書いて頭がさがる。体裁は割りに軽めだが、中身はすごい。まずは普通にインタプリタで作り、その後仮想コードコンパイラに仮想コードインタプリタを組み合わせ、さらに型解…

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

Miran Lipovača Haskell入門書。一見軽い入り口だけの本のようにも見えるが、内容的には結構ハードでガンガン進むので、読み流しているとガンガン置いて行かれる。コンパクトにまとまった良書ではあるが、この本を読んだだけではHaskellの深奥にはたどり着け…

Hadoop MapReduce デザインパターン ―MapReduceによる大規模テキストデータ処理

Jimmy Lin, Chris Dyer 流行のMapReduce は力技で大量のデータ処理ができるが、だからといってなにも工夫が必要でないわけではない。かいてみると以外に制約も多く、なかなか思った通りのことを書けなかったりする。本書は、そのような場合に適用できるさま…

Google App Engine for Java実践ガイド

小川信一 いつもお世話になっている、Google API Expertの小川信一さんによるApp Engineの本。App Engineは動きが早いので、(私のも含めて)これまでの本は結構寿命が短かったけど、ここのところさすがに動きがおさまってきたので、この本は長くリファレン…

Jenkins実践入門 〜ビルド・テスト・デプロイを自動化する技術

佐藤 聖規, 和田 貴久, 河村 雅人, 米沢 弘樹, 山岸 啓 以前はHudsonと呼ばれていたContinuous Integration(CI) のためのツールJenkinsの本。著者の方々は、NTTデータの皆様。監修をしている川口耕介氏が開発。CIとは、ビルドとかテストとかを完全に自動化…

Cassandra

Even Hewitt Cassandraは、NoSQL データストアで、水平方向にスケールする、つまりノードの台数を増やすことでスループットを向上させることができると言われている。この本は、国内ではいまのところ唯一の書籍。shot6さん翻訳。基本的な構造から、利用方法…

エンジニアのためのWord再入門講座

佐藤 竜一, 翔泳社 普段のドキュメントはTeXかHTMLで書いてるので、Wordを使うのはなんかの報告書とか計画書だけなのだけど、使うたびにWordの謎にやられてダメージを被っていた。そういう時にはたいてい時間が全然ないので、時間のあるときにちゃんと勉強し…

実践 F# 関数型プログラミング入門

荒井 省三, いげ太 マイクロソフトの関数型言語F#の入門書。.NETフレームワーク上で動作するOCamlの一種だと思えば当たらずとも遠からず、といった感じ。型推論の一部が違っていたり、Python流のオフサイドルールで構造を記述できるというあたりが相違点か。…

HTML5&API入門

白石 俊平 Googleが大プッシュ、Windows8もこれを基盤とすると言う、HTML5の解説本。2010年3月出版ということで、今ではちょっと古くなっている。それも恐ろしい話だが。 Webを検索すれば出てくる話ばかりなのだろうけど、ちゃんとまとまって、系統だって書…

オブジェクト指向プログラマが次に読む本 −Scalaで学ぶ関数脳入門

ー 株式会社テクノロジックアート Scalaの入門書、兼関数型プログラミング入門。トピックは手広く、パターンマッチ、アクター、パーサーコンビネータ、DSLと、Scalaで話題になる範囲を手広くカバー。しかし、なんかいまいちだな。。。Scalaの入門書としても、…

Javaルールブック 〜読みやすく効率的なコードの原則

Javaルールブック 〜読みやすく効率的なコードの原則 大谷 晋平、 米林 正明、 片山 暁雄、 横田 健彦 @shot6 さんの名前が出ていたので。入門書を読み終わり、言語仕様を一通り理解した上で、Javaで実際にコードを書くときの注意事項が丹念にまとめてある。…

Apache Maven 2.0入門

Apache Maven 2.0入門 Java・オープンソース・ビルドツール 野瀬 直樹, 横田 健彦 、 技術評論社 JavaのビルドツールMavenの本。随分前に買ったんだけど、ちゃんと読んでなかった。何となく使っていて、ちゃんと理解できていなかった重要なコンセプトを、い…

Hadoop本2冊

いまさらといわれそうだが、Hadoop本2冊。 Hadoop by Tom White, オライリージャパン Hadoopはかなり複雑なシステムだが、それを逐一丁寧に解説している。すごい情報量。Hadoop 本体だけでなく周辺技術となる、PigやHBase、ZooKeeperなども解説している。こ…

Excelプロトタイピング ―表計算ソフトで共有するデザインコンセプト・設計・アイデア

Nevin Berger, Michael Arent, Jonathan Arnowitz, Fred Sampson Excelほど「創造的」な使われ方をしているソフトも珍しい。あるときもらったExcelファイルには、複数のファイルがただ貼り込まれているだけだった。つまり、アーカイバの代わりに使われていた…

クラウド誕生 セールスフォース・ドットコム物語―

Marc Benioff クラウドの最古参業者であるセールスフォースの創業社長Marc Benioffによる111のアドバイス。技術書を期待してたんだけど、バリバリのビジネス書だった。。。まあ、縦書きだし、ダイアモンド社だし、技術的な内容を求める方がおかしいのだけど…

JavaによるRESTfulシステム構

Bill Burke JAX-RSを使ったRESTfulアプリケーションの実装について書かれている。JAX-RSはアノテーションを多用した近代的なフレームワーク。なかなか使いやすそうだ。簡単にXMLとJSONを切り替えたりできるのも便利そう。クライアント側のライブラリは標準化…

jQueryによるWebサービス活用ワザ実践サンプル集

葛西 秋雄 JSONPを使ってクロスサイトでWebサービスから情報を取り出して活用するサンプル集。まあ、たしかにjQueryは使ってるけど、基本的にJSONPのために使ってるだけ。こんなに「jQuery」を大きく表紙に書いておいてそりゃないんじゃないの、と思ったり思…

Concurrent Cプログラミング言語―並行プログラミング入門

ナイレン・ゲハーニ, ウィリアム・D. ルーム 職場の本棚で発掘。そういえばこんなのあったなー、と。CSPベースの通信を行うCの並行拡張、という意味でGoに似ている。Goのgoroutineの代わりにプロセスという概念があり、プロセスに対して「トランザクション…

初めてのコンピュータサイエンス

Jennifer Campbell, Paul Gries, Jason Montojo, Greg Wilson 大学1年生の教科書。Pythonを教えると同時にコンピュータサイエンスの初歩、たとえばソートアルゴリズムのオーダだとか、ハッシュテーブルとか、さらにはオブジェクト指向とは、みたいなことま…

Googleクラウドの核心

ルイス・アンドレ・バロッソ、ウルス・ヘルツ 著 日経BP中田さまからいただいた。ありがとうございます。ながらく待望されていた、Datacenter as a Computer: An Introduction to the Design of Warehouse-Scale Machinesの翻訳。原著はWeb上にPDFがあり、た…

オープンソース徹底活用 Slim3 on Google App Engine for Java

ひがやすをさんと小川信一さんによる本。Slim3は、App Engine上で動くウェブアプリケーションフレームワーク。タイトルに反してSlim3の話は結構少なく、全7章のうち、2章と6章のみがSlim3関連。ページ数にすると1/3程度。Slim3はフルスタックのウェブアプ…