前回の 最近読んでる本について の近況です。
※ 前回から 3か月も空いてしまった…。
所感
- 色々あって、NotebookLMに本の要約をしてもらいつつ、
通勤電車でざっくり要約読む → お家で図解や気になる所の周辺を読む
といったやり方で、本を何周する形で読み進めてます。 - とはいえ、やっぱりAIで要約させると細かい部分やニュアンスが変わることがあるので、原文は必ず読まないと意味無いなぁと思います。
- JJUG CCC 2026 Spring で 「Java正規表現エンジン(NFA)の仕組みと、パフォーマンスを維持するための最適化手法」という内容で登壇予定です。
(中級者向けの簡単な解説スライドを作成するハズが 何故かJMHを使ったコードを書いてパフォーマンスの測定をしている…。)
読んだ本の一覧と感想
- 詳説 正規表現 第3版
- 難しかった…。正直全てを理解して使いこなせるようにはなってない…。
- けど、正規表現をどう利用するべきか、何を勘所に気をつけるかはある程度知ることが出来た…と思う。
- (この本の内容を元ネタに JJUG CCC で 登壇します。ので適宜 読み直し中…。)
- ソフトウェアアーキテクチャの基礎 第2版
- 色々なアーキテクチャについて、それぞれの”トレードオフ”が書かれていて、世の中で言われているアーキテクチャにどんなものがあるのかの全体像を把握するのに良かった。
- 「〇〇アーキテクチャの方が良い!」とか「✕✕は時代遅れ」みたいな一方的な言説に対して、それぞれのアーキテクチャに関してうっすら感じてた デメリット部分を明確に説明してくれたのが良かった。
- (その解決策は その環境/体制だから実現出来るのであって、予算規模や体制が違う環境では適用出来なくない…?ってうっすら感じてたので…。)
- UNIXという考え方
- 本に書かれている例え話が思ったより古かった…。参考になるのは半分くらいかも。
- 「梃子の原理」についてはあまり参考にならないと感じた。というか、梃子の原理を狙ったプログラムを書くケースがあまり無いように思う。
- 実際の業務で「梃子の原理」を意識すると結合しまくった実装が出来そうなので…。(単純に技術力不足ってとこもあるとは思いますが、業務で作るアプリに対して狙ってやるのはかなり厳しい気がする。)
- どっちかっていうと、「自分がUNIXの考え方を取り入れるんだ!」より、UNIXのの考え方をしてる人たちが作ったプログラムやライブラリを、自分たちは”使わないといけない”と考えた方が良さそう。
読んでいる本
- デザインパターン入門 マルチスレッド編
- アーキテクチャ周りの本を読んでいて、マルチスレッド関連の具体的な実装の話をもっとちゃんと勉強しないとと思って読み進めてます。
- 正直これ系は実際に手でコード触らないと頭に入ってこないタイプなので、動かしながら触ってる感じです。
- ソフトウェアアーキテクチャ・ハードパーツ
- ソフトウェア・アーキテクチャの基礎の続き。
- 実際のストーリー形式で”泥団子”になったアーキテクチャを分散アーキテクチャにしていく過程を追って、どうトレードオフ分析をしつつ、改修していくかといった内容。
(まだ全く読めてない一覧)
- カオスエンジニアリング
- ソフトウェアアーキテクチャの基礎 で出てきたオススメの本。
- 考え方自体は知っておいて損は無いかなと思って。
- 単体テストの考え方/使い方
- より具体的な実装の話。
- 本自体は前から買っていて、「本の半分くらいが設計の話じゃん!」て思って眺めてはいたのですが、まだちゃんと読めてないので…。
- ハイパフォーマンス ブラウザネットワーキング
- Webアプリ周辺を支えている部分を総合的に扱ってる本。
- どうしてもアプリやシステムの全体像を把握しきれてないと感じているので、ちゃんと読んでおきたい。
- エンジニアリングリーダー
- ある人がオススメしてたので買ってちょっとだけ流し見したけど、まだちゃんと読めてないので…。
- IPA の プロジェクトマネージャー試験の教科書とかは読んでるんですが、より実践的な話(特に ”リーダー”周り)ってあまり無いなと思って。
- lsを読まずにプログラマを名乗るな!
- 当初 NotebookLMに要約させようとしたけど、実際に書いてある内容をめちゃくちゃ省略する or 誤って説明してくるので、じっくり目で読むことにしました…。