書籍『The Kubernetes Book』 [本]

The Kubernetes Book: 2022 Edition (English Edition)
- 作者: Poulton, Nigel
- 出版社/メーカー:
- 発売日: 2017/06/18
- メディア: Kindle版
過去のEditionは読んでいませんが、2022 Editionとなっている2022年版を読みました。Kubernetesにに関する書籍を読んだのは、2018年6月にメルペイに入社してから読んだ『Kubernetes in Action』以来です。
Kubernetesを学ぶのが初めてではないこともあり、内容も分かりやすく、知識が深まった部分も多かったです。
この本で特筆するとしたら、セキュリティに関する章があることだと思います。「15: Threat modeling Kubernetes」「16: Real-world Kubernetes security」です。詳細に説明されているわけではありませんが、Kubernetesに関するセキュリティの概要を知ることができます。
2022-08-27 11:26
コメント(0)
『プログラミング言語Go』オンライン読書会の第2サイクルが終わりました [オンライン読書会]
書籍『プログラミング言語Go』のオンライン読書会の第2サイクルは、8月6日で終了しました。第1サイクルと第2サイクルの期間は、以下の通りでした。
- 第1サイクル:2020年6月6日〜2021年6月5日(計13回)
- 第2サイクル:2021年7月3日〜2021年8月6日(計13回、11月は未開催)
- 第1サイクル:初回22名、最終回10名、全出席2名
- 第2サイクル:初回25名、最終回6名、全出席1名
『プログラミング言語Go』オンライン読書会は、しばらく休会とします。
2022-08-08 06:48
コメント(0)
正誤表:『Go言語による分散サービス』 [正誤表]

Go言語による分散サービス ―信頼性、拡張性、保守性の高いシステムの構築
- 出版社/メーカー: オライリージャパン
- 発売日: 2022/08/03
- メディア: 単行本(ソフトカバー)
正誤表を追加しました:「正誤表」のタブを選択してください。
2022-08-04 09:55
コメント(0)
書籍『Docker Deep Dive』 [本]

Docker Deep Dive: Zero to Docker in a single book (English Edition)
- 作者: Poulton, Nigel
- 出版社/メーカー:
- 発売日: 2016/09/20
- メディア: Kindle版
「MAY 2020」とカバーにある(おそらく最新版)を読みました。普段、Dockerを深く使いこなしてはいないので、Docker全体を知るために読んでみました。
Dockerfileやdocker-composeについてはもちろん説明はされています。それ以外にも、Docker Swarm、Docker Stacks、ネットワーキングについても解説されていますし、15章「Security In Docker」ではセキュリティに関する基本的な事柄も説明されています。
Dockerのセキュリティに関しては、ちょうど「Security Journey」で基本を学んだばかりでしたので、復習にもなりました。
Docker Swarm関連では、分散サービス用のRaft、gossipプロトコル、リーダー選出(leader election)などの用語が事前説明なしで使われています。これらも『Go言語による分散サービス ―信頼性、拡張性、保守性の高いシステムの構築』で学んだばかりだったので、問題なく理解することができました。
本の内容は、実際に手元でDockerを動作させて確認できますし、Docker Swarmについても(全部ではないですがある程度)Play with Dockerで試すことができます。
2022-07-28 04:15
コメント(0)
『人月の神話』オンライン読書会を開催します [オンライン読書会]
9月より、月に1回、土曜日の午後1時〜5時で、書籍『人月の神話』のオンライン読書会を開催します。
この本については、拙著『ソフトウェア開発の名著を読む【第二版】』でも紹介しています。
2022-07-17 06:27
コメント(0)
『Go言語による分散サービス』オンライン読書会を開催します [オンライン読書会]

Go言語による分散サービス ―信頼性、拡張性、保守性の高いシステムの構築
- 出版社/メーカー: オライリージャパン
- 発売日: 2022/08/03
- メディア: 単行本(ソフトカバー)
今までのオンライン読書会は、出版されてから時間がしばらく経過している本を取り上げることが多かったのですが、8月に出版される私の新たな翻訳本を使ったオンライン読書会を開催します。
月に1回、土曜日の午後1時から5時までの読書会です。
2020年からさまざまなオンライン読書会を開催してきていますが、第1回が最も参加者が多く、徐々に少なくなっていきます。最後まで参加される人は、だいたい決まっています。これは、オンラインの読書会に限った話ではなく、会社内で行ってきた読書会も同じ傾向でした。
オンライン読書会での特徴の一つとして、過去に私の他のオンライン読書会に参加経験がなくて、ある本のオンライン読書会の何回目かに初めて参加される人の中には、必ずといってよいほど、キャンセル処理をすることなく欠席される人がいます(開催の案内メッセージで、「都合により欠席される場合、キャンセル処理をお願いします。」と毎回書いているのですが)。そのようなキャンセル処理なしで欠席されたことがある参加者は、申し込まれても私の方でキャンセル処理することがあります。
2022-07-14 05:15
コメント(0)
書籍『Googleのソフトウェアエンジニアリング』 [本]

Googleのソフトウェアエンジニアリング ―持続可能なプログラミングを支える技術、文化、プロセス
- 出版社/メーカー: オライリージャパン
- 発売日: 2021/11/29
- メディア: 単行本(ソフトカバー)
職種としての「ソフトウェアエンジニア」は、ソフトウェアの設計から実装まで行うものと考えられることがあると思います。しかし、そこにエンジニアリングという視点はどの程度含まれるのでしょうか。さまざまな設計手法、さまざまなレビュー、テスト駆動開発、継続的インテグレーションなどの実践は、確かにエンジニアリングではあります。しかし、実践できていない開発組織もまだまだ多いと思います。
仮に実践できているとしても、小さな組織で行っているエンジニアリングが、Googleほどの大きな組織へと拡大するためには、スケールするのかを考える必要があります。Googleほどの大きさにならなくても、ビジネスが成長しているのであれば、それを支える開発組織も大きくなっていき、今までのエンジニアリング的な実践がスケールするのかを考える必要が自然と発生していきます。
この本では、大きなソフトウェア開発組織へと成長する過程で、試行錯誤しながらGoogleが取り組んできたソフトウェアエンジニアリングについて述べられています。
私自身のウェブサービスの開発経験はメルペイで働き始めてからなので限られてはいますが、この本を読みながら、現在自分達が直面している問題、あるいは、今後直面するであろう問題を色々と考えさせられることが多い内容でした。ただ、私自身があまり馴染みがない領域に関しては内容を理解できないものもありましたが、全体としてはとても参考になることが多い本でした。
この本で紹介されているHyrumの法則というのがあります。
あるAPIに十分な数のユーザーがいるとき、APIを作った者自身が契約仕様として何を約束しているかは重要でない。作られたシステムが持つあらゆる観測可能(obserbable)な挙動に関して、それに依存するユーザーが出てくるものである。この法則に、いかに苦しんできたかは、この本全体でいろいろなところに登場します。小さな組織であれば、API仕様をきちんと書いておくだけでおそらく十分なのでしょうが、組織が大きくなれば、Hyrumの法則が登場して、思わぬ使われ方や想定が行われるようになっていくということです。
2022-07-12 04:45
コメント(0)
書籍『Go言語による分散サービス』の予約注文が可能になりました [本]
書籍『Go言語による分散サービス』が、Amazon.co.jpで予約注文可能になりました。

電子版(PDF)は、発売後にオライリー・ジャパン(ページはまだ用意されていません)のサイトから購入可能になります。
目次は、次の通りです

Go言語による分散サービス ―信頼性、拡張性、保守性の高いシステムの構築
- 出版社/メーカー: オライリージャパン
- 発売日: 2022/08/03
- メディア: 単行本(ソフトカバー)
電子版(PDF)は、発売後にオライリー・ジャパン(ページはまだ用意されていません)のサイトから購入可能になります。
目次は、次の通りです
本書への推薦の言葉
はじめに
第I部 さあ始めましょう
1章 レッツGo
2章 プロトコルバッファによる構造化データ
3章 ログパッケージの作成
第II部 ネットワーク
4章 gRPCによるリクエスト処理
5章 安全なサービスの構築
6章 システムの観測
第III部 分散化
7章 サーバ間のサービスディスカバリ
8章 合意形成によるサービス連携
9章 サーバディスカバリとクライアント側ロードバランス
第IV部 デプロイ
10章 Kubernetesでローカルにアプリケーションをデプロイ
11章 アプリケーションをKubernetesでクラウドにデプロイ
訳者あとがき
2022-06-30 05:00
コメント(0)
急性心筋梗塞から2年が過ぎました [心筋梗塞]
2020年6月20日(土)の夕方に急性心筋梗塞で緊急搬送されてから2年が過ぎました。発症から今日までの経過は、こちらからまとめて読むことができます。
急性心筋梗塞では、冠動脈の血流が止まることで、心臓の心筋が壊死してしまいます。壊死した部分は回復しないそうです。私の場合は、幸い軽かったので、壊死した部分も少なかったようです。
心筋の壊死の状況によっては、回復後も心電図の波形に異常が現れるそうです。私の場合、心電図では何も異常はなく、血液検査やレントゲンなどの一般的な検査だけであれば、正常としか判断されないようです。心筋が壊死していると分かる検査は、心臓超音波検査だけです。
今年の5月に行った心臓超音波検査の結果は、1年前よりはよくなっていました。壊死した部分が回復したというよりも心臓全体が良くなっていたようです。週に5日程度は、自宅で30分のエアロバイクを継続していることと、食事制限、それと薬の効果だと思います。
幸い、2年前に亡くなるとか重体になることもなかったおかげで、この2年間では、『Linuxシステムの仕組み』と『Go言語による分散サービス』の技術書を翻訳することができました。

急性心筋梗塞では、冠動脈の血流が止まることで、心臓の心筋が壊死してしまいます。壊死した部分は回復しないそうです。私の場合は、幸い軽かったので、壊死した部分も少なかったようです。
心筋の壊死の状況によっては、回復後も心電図の波形に異常が現れるそうです。私の場合、心電図では何も異常はなく、血液検査やレントゲンなどの一般的な検査だけであれば、正常としか判断されないようです。心筋が壊死していると分かる検査は、心臓超音波検査だけです。
今年の5月に行った心臓超音波検査の結果は、1年前よりはよくなっていました。壊死した部分が回復したというよりも心臓全体が良くなっていたようです。週に5日程度は、自宅で30分のエアロバイクを継続していることと、食事制限、それと薬の効果だと思います。
幸い、2年前に亡くなるとか重体になることもなかったおかげで、この2年間では、『Linuxシステムの仕組み』と『Go言語による分散サービス』の技術書を翻訳することができました。

スーパーユーザーなら知っておくべきLinuxシステムの仕組み
- 出版社/メーカー: インプレス
- 発売日: 2022/03/08
- メディア: Kindle版

Go言語による分散サービス ―信頼性、拡張性、保守性の高いシステムの構築
- 出版社/メーカー: オライリージャパン
- 発売日: 2022/08/03
- メディア: 単行本(ソフトカバー)
2022-06-20 05:00
コメント(0)
書籍『Go言語による分散サービス』 [本]
Amazon.co.jpではまだ先行予約できませんが、私にとって通算20冊目となる翻訳本が8月上旬に発売されます。
原著はこちらです。

目次は、次の通りです
『Go言語による分散サービス ― 信頼性、拡張性、保守性の高いシステムの構築』
ISBN:978-4-87311-997-7
280ページ(予定)
出版月:2022年8月
価格:3,200円(税込:3,520円)
原著はこちらです。

Distributed Services With Go: Your Guide to Reliable, Scalable, and Maintainable Systems
- 作者: Jeffery, Travis
- 出版社/メーカー: Pragmatic Bookshelf
- 発売日: 2021/03/30
- メディア: ペーパーバック
目次は、次の通りです
本書への推薦の言葉
はじめに
第I部 さあ始めましょう
1章 レッツGo
2章 プロトコルバッファによる構造化データ
3章 ログパッケージの作成
第II部 ネットワーク
4章 gRPCによるリクエスト処理
5章 安全なサービスの構築
6章 システムの観測
第III部 分散化
7章 サーバ間のサービスディスカバリ
8章 合意形成によるサービス連携
9章 サーバディスカバリとクライアント側ロードバランス
第IV部 デプロイ
10章 Kubernetesでローカルにアプリケーションをデプロイ
11章 アプリケーションをKubernetesでクラウドにデプロイ
訳者あとがき
2022-06-09 04:07
コメント(0)