ニワトリのたまご

宇宙とソフトウェア開発

今年読んで良かった本まとめ 2025|設計・ML・研究まで幅広く紹介

2025年も残り1ヶ月となりました。少し早いですが、今年読んで面白かった本をまとめます。 今年は技術書を多めに読み、仕事で強化学習を扱う機会もあったため、機械学習関連の本にも手を伸ばしました。

ソフトウェア開発

Tidy First? 個人で実践する経験主義的ソフトウェア設計

コードが読みにくく、1箇所を変えると他も直さないといけない――そんな現場のつらさを、「整頓」というワークフローで解決しようとする本です。

タイトルの “Tidy” は「整頓」と訳されています。整頓はリファクタリングの一部ですが、後者のように大がかりになりすぎず、自分の作業範囲で毎日続けられる改善手法として位置づけられています。本書は、この整頓を「いつ・どう・なぜ行うのか」を明快に示します。

私自身、リファクタリングは開発を止めてまとめて行うものだと思い込んでいました。日々の小さな改善として積み重ねる、という発想は新鮮で、紹介されるテクニックも扱いやすいと感じました。短い本なので、すぐ読めてすぐ実践できます。

パターン、Wiki、XP ―― 時を超えた創造の原則

自然界や人の営みには繰り返し現れる形があり、ソフトウェアで言えばデザインパターンがその例です。アーキテクチャがソフトウェアの方向性を決めますが、コンウェイの法則は組織構造がソフトウェアの構造と密接な関係があることを示します。そう考えると、「良いパターンとは何か」 という原点に立ち返ることが、良いソフトウェア設計や組織づくりにつながるのではないかと思い、本書を手に取りました。

本書は、建築家クリストファー・アレグザンダーがまとめた「パターン」「パターンランゲージ」、そしてそれがケント・ベックのXPやウォード・カニンガムWikiにどう影響したかを解説しています。これらの思想の共通点を理解できたのは大きな収穫でした。

一方で、アレグザンダーにとってパターンは六つの原理の一つに過ぎないこともわかります。ソフトウェアではパターンに注目しすぎると視野が狭くなると感じ、むしろ彼の「良い設計とは何か」という広い原則に興味が向きました。建築とソフトウェアをつなぐ貴重な一冊です。

単体テストの考え方/使い方

今年の当たり本その1。多くの書籍がテスト手法を解説する中、本書は「良いテストとは何か」を深掘りしています。テスト観が大きく変わりました。

詳しくは以前のエントリーを参照してください。

niwanoniwatori.hateblo.jp

センスの良いSQLを書く技術 達人エンジニアが実践している35の原則

データベースの成り立ちを踏まえ、なぜそのSQLが良いのかを歴史と実例から解説する本です。

著者の「演繹的な考察は天才でなくてもできる」という姿勢が印象的で、MySQLPostgreSQLOracleを比較しながら設計思想の違いがつかめました。実務での判断基準がはっきりします。

関数型ドメインモデリング ドメイン駆動設計とF#でソフトウェアの複雑さに立ち向かおう

単体テストの考え方/使い方」で純関数の扱いやすさを知り、関数型プログラミングを学びたくなって読みました。

関数型の基礎から、型でドメインを表現する方法、そしてDDDとの融合まで丁寧に説明されています。実務ではすべてを関数型にできないため、永続化など現実的な問題への向き合い方も具体的です。関数型を試してみたくなる一冊でした。

ソフトウェア設計の結合バランス 持続可能な成長を支えるモジュール化の原則

今年の当たり本その2。避けられない「結合」をどう扱うかに焦点を当てた本で、強度・距離・変動性という3つの軸で整理するアプローチが非常に明快です。

詳しくは以前のエントリーを参照してください。

niwanoniwatori.hateblo.jp

機械学習

ゼロから作る Deep Learning強化学習

強化学習の基礎を急いで身につける必要があり、置いていかれにくい解説書を探して本書を選びました。タイトル通り、幅広い概念を数式とコードで手を動かしつつゼロから理解できる構成です。

詳しくは以前のエントリーを参照してください。

niwanoniwatori.hateblo.jp

機械学習を解釈する技術 予測力と説明力を両立する実践テクニック

機械学習の解釈可能性、いわゆるXAIの入門書です。PFI・PD・ICE・SHAP などの代表的な手法を、数式は最小限に抑え、実装例と図でわかりやすく説明しています。

特に、複雑になりがちなSHAPを単純なケースに落とし込んで説明しており、「結局何をしている手法なのか」を理解する助けになります。

AIエージェント 人類と協働する機械

AIエージェントの登場によって、仕事はどのように変わるのか。本書は、「AIによって仕事は奪われるのか」「AIと協働する時代に、生産性をどう考えるべきか」「AIが普及した環境で、何を作ることが価値になるのか」といった問いに答えながら、これからどのように歩んでいくべきかを提案している。

詳しくは以前のエントリーを参照してください。

niwanoniwatori.hateblo.jp

その他

バッタを倒すぜ アフリカで

前作『バッタを倒しにアフリカへ』で強烈な印象を残した著者が、前作では語れなかった研究内容を本書で存分に紹介しています。

サバクトビバッタの集団別居仮説を、フィールドワークと目視カウントというローテクで検証し切った執念に圧倒されました。研究への情熱が伝わってきて、読み物としても学術書としても面白い。研究者の熱意は読者のモチベーションをも上げてくれます。強くおすすめです。

みんなが読みたがる文章

「読まれる文章の書き方」をまとめた一冊です。 ここ数年、知識の定着のために本のまとめを書いていますが、どうせ書くならもっと読みやすくしたいと思い、Xで見かけた感想をきっかけに購入しました。

本書では「短く簡潔に書く」など12のテクニックを紹介しており、特にこの「短く、簡潔に」は繰り返し強調されています。今後の書評を書く際にも大いに役立ちそうです。