勘と経験と読経

略すとKKD。ソフトウェア開発やITプロジェクトマネジメントに関するあれこれ。

気になる洋書技術書をとりあえず斜め読み 2019/5

読んでみたい本が多すぎる。が、よく考えてみたら米oreillyのサービスに加入しているので何冊読んでも追加でお金はかからない(定額読み放題)。というわけで、目ぼしい未読の洋書技術書について、まず冒頭だけざっと読んでみた。現時点の気になる本リストから8冊を拾い読み。

Design It!

Design It! [Book]

  • 序文
    • この本にはアジャイルソフトウェア開発についての言及がない。それは本書がアジャイルアーキテクチャの優れた統合であるからだ(George Fairbanks/書籍「Just Enough Software Architecture」(2010)(邦訳なし)の著者)
  • 斜め読み
    • パート1とパート2はアーキテクチャ構築の方法論と著者のアイデアについて語られている。各章では仮想プロジェクト「Project Lionheart」ケーススタディが挿入されており理解を深めやすくなっている。
    • パート3はアーキテクトのツールボックスとして、様々なプラクティスに関する説明となっている。プラクティスは例えば「共感マップ」のような、アジャイル開発で用いられるようなものも多数含まれていて興味深い。

個人的な期待度:★★★(ぜひ通読したい!)

Software Architecture in Practice, Third Edition

Software Architecture in Practice, Third Edition [Book]

  • 第3版の序文
  • 斜め読み
    • パート1はアーキテクチャについての概要説明。パート2以降で、アーキテクチャと品質属性、開発ライフサイクル、ビジネスとの関係について論じている。最後のパート5では新興技術におけるアーキテクチャについて論じている。
    • 興味深いのは各章の最後に「ディスカッション」という項目があること。おそらく本書は教室で利用することを想定されており、各章について受講者が議論することを想定していると思われる(ディスカッションについては著者からの所見はなく、抽象的な問いが提示されている。例えば「ソフトウェアアーキテクチャーは、概念的なアナロジーとして建物のアーキテクチャーとよく比較されます。その類推の強みは何ですか?」のような感じ)。

個人的な期待度:★(うーん、この本はいったんパスかなぁ)

Software Architecture in Practice: Software Architect Practice_c3 (SEI Series in Software Engineering) (English Edition)

Software Architecture in Practice: Software Architect Practice_c3 (SEI Series in Software Engineering) (English Edition)

Software Architecture Patterns

Software Architecture Patterns [Book]

  • はじめに
    • アーキテクチャの決定なく実装を開始するのは一般的によくあることだが、これは往々にして「巨大な泥団子」のアンチパターンにはまる。
    • アーキテクトは、常にアーキテクチャについて判断決定し正当化する必要がある。本書は正当化するための情報を提供するものである。
  • 斜め読み
    • 本書は主に以下のアーキテクチャについて説明している。
      • 階層型
      • イベント駆動型
      • マイクロカーネル
      • マイクロサービス
      • Space-Based Architecture (日本語だと何ていうのがメジャーなんだろう)

個人的な期待度:★★(Building Microservice読み終わってから考える)

Designing Data-Intensive Applications

Designing Data-Intensive Applications [Book]

データ指向アプリケーションデザイン ―信頼性、拡張性、保守性の高い分散システム設計の原理

データ指向アプリケーションデザイン ―信頼性、拡張性、保守性の高い分散システム設計の原理

個人的な期待度:★★(訳書が出版されてから出てくるであろう書評を見てみたい)

Learning Chaos Engineering

Learning Chaos Engineering [Book]

  • 序文
    • 本書はカオスエンジニアリングの実践者向けの本である。Chaos Toolkitを使って Chaos Engineeringするための実用ガイドとなっている。
  • 斜め読み
    • 第1章はカオスエンジニアリングの概要、第2章からは具体的なChaos Toolkit、そして使い方の説明になっている。

Learning Chaos Engineering: Discovering and Overcoming System Weaknesses Through Experimentation

Learning Chaos Engineering: Discovering and Overcoming System Weaknesses Through Experimentation

個人的な期待度:★(ツール中心の説明なので、後回し)

Monolith to Microservices

Monolith to Microservices [Book]

  • 序文はまだない(これから追加されるかも)
  • 斜め読み
    • Building Microservicesの著者によるモノリスシステムのマイクロサービスへの移行、をテーマに書かれている本となっている。
    • 段階的な移行を前提として、移行するためのテクニックなどについて書かれている。

Monolith to Microservices: Evolutionary Patterns to Transform Your Monolith

Monolith to Microservices: Evolutionary Patterns to Transform Your Monolith

個人的な期待度:★(まだアーリーリリースなので、もう少し執筆が進んでから再確認したい)

Release It!, 2nd Edition

Release It!, 2nd Edition [Book]

  • 初版は邦訳されている。ずいぶん前の本だが非常に有用だった印象あり。
  • 序文
    • しびれる

この本では、現実世界の悪臭と悩みのために、ソフトウェア、特に分散システムを設計、設計、構築する方法を検討します。あなたはクレイジーで予測不可能なことをする非論理的なユーザの軍隊に備えるでしょう。あなたがリリースした瞬間からあなたのソフトウェアは攻撃を受けるでしょう。それは、フラッシュモブの台風や、しっかりと固定されていないIoTトースターオーブンによるDDoS攻撃の圧迫圧力に耐える必要があります。テストに失敗したソフトウェアを詳しく調べて、ソフトウェアが現実の世界との接触に耐えられるようにする方法を見つけます。

  • 斜め読み
    • 初版と二版の目次を並べてみてみると、「第1部 安定性」はだいたい同じ。アンチパターンとパターンは増えている感じ。
    • 第2部以降は全面改定といって良いくらい手が入っている。章構成が全然違う。単に順序が変わっただけではなさそうだ。

個人的な期待度:★★★(初版がとても良かったので、ぜひ読みたい)

Antifragile Systems and Teams

Antifragile Systems and Teams [Book]

  • 無料のEBookのようだ(Kindle版は無料になっている)
  • 薄い本のようなので、どこかで時間ができたらさっさと読むのがよさそう。

個人的な期待度:★★★(薄いので近日中に読み切る)

今回はここまで、来月またどこかで棚卸しをしよう