2024/01/28追記: Amazonへのリンクを修正しました。

はじめに

今年読んだ本のひとことまとめ、備忘録的なもの。2022年版。

前回まで

全部読んでない本も多い。また必要なときに読み返せるくらいのインデックスができる程度の心構えで多読した感じ。

特に他の人にも薦めたいなーって本には★をつけてみた。

設計・コーディング技法

良いコード/悪いコードで学ぶ設計入門

https://www.amazon.co.jp/dp/4297127830

悪いコードが状況によっては悪くもなくない?というところもあったが、サンプルが多くて読みやすかった。

ソフトウェアアーキテクチャの基礎

https://www.amazon.co.jp/dp/4873119820

Design It!★

https://www.amazon.co.jp/dp/4873118956

デザイン原則の話とか序盤に入れてくるのとか面白かった。終盤のワークショップなどのテクニックは真似してみたい。

モノリスからマイクロサービスへ

https://www.amazon.co.jp/dp/4873119316

途中まで読んだ。ドメイン分離からめたところから分離の戦略語られていて参考なりそう。

実践テスト駆動開発

https://www.amazon.co.jp/dp/4798124583

自分自身がモックをたくさん使いたいロンドン学派思考なので気になって読んだ。実例のところざっと読んだので得られたものは少ないかも。

Patterns of Enterprise Application Architecture

https://www.amazon.co.jp/dp/B008OHVDFM

Martin Fowler氏による名著。texta.fmを聞いていて度々登場するので興味を持って買った。初めて英語の物理本買ってみたが、装丁がかっこよく、本棚に飾っておくだけで満足感ある。

部分的に読んでいて、特に3章の”Mapping to Relational Databases”、10章の”Data Source Architectural Patterns”あたりをきちんと読んだ。何気なく普段つかっているDBとのマッピングのパターンについて命名されていて、その特徴などが簡潔にまとまっていて整理が進んだ感触がある。

A Philosophy of Software Design★

https://www.amazon.co.jp/dp/B09B8LFKQL

こちらも英語本。Kindleで買った。それなりに読めるものの、たまにわからんくなったらDeepLに突っ込むを繰り返して読む。こういうところ電子本はやっぱり楽と感じた。まだ部分的にしか読んでいない。

特に、「メソッドは短いほどよいわけではない。多少長くても知識を凝集させ理解しやすいコードが大切だ」といった主張が印象に残った。その考えとGoでの実装の相性がよいと勝手ながら思っている。そのあたり述べてみたのが↓の記事。

業務アプリケーション開発にGoを採用する理由

プログラミング言語・フレームワーク

プログラミングRust 第2版

https://www.amazon.co.jp/dp/4873119782

途中まで、またRust書くの再開したときに読みたい。

実用Go言語★

https://www.amazon.co.jp/dp/4873119693

表題のとおり実用書って感じでよかった。Go初学者に一通り文法学んだ後に読んでほしい一冊。

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

https://www.amazon.co.jp/dp/B009RO80XY

Reactなり触るにあたって、改めて関数型の思想について頭に入れてみたく読み始めた。 コード実行しながら読み進めている。軽い文体で進むが中身は結構しっかりしてる。

初めてのGraphQL

https://www.amazon.co.jp/dp/487311893X

世間的にも会社でも導入進んでいて、そろそろ知っておかないとと思い読んでみた。無難に入門書という感じでよかった。

パーフェクト Ruby on Rails

https://www.amazon.co.jp/dp/B08D3DW7LP

業務で少しRailsを触る機会ができたのと、 texta.fm のスピーカーの方が関わってるとのことで買ってみた。Railsまわりのツールの使い方・書き方はもちろん、最後のほうのドメインモデルとか絡めての設計まわりの話が深堀りされていて興味深い内容だった。

Understanding and Using C Pointers

https://www.amazon.co.jp/dp/B00CLX8PL0

ACM会員になってO’Reilly Online Learningで無料で読めたので…しかし7/1で終了してしまい今は読めない。 Rustなり低レイヤーまわり触るにあたってたまにポインタどうこうの話が出てくるが、Cでどういう扱いだったか忘れかけてたので読んで復習した。

コンピュータサイエンス

コンピュータシステムの理論と実装★

https://www.amazon.co.jp/dp/4873117127

低レイヤー復習のため。実装はやってないものの、プログラムがどう動いているのか全体感を復習できてよい内容だった。

問題解決力を鍛える!アルゴリズムとデータ構造

https://www.amazon.co.jp/dp/B08PV83L3N

アルゴリズムまわりの復習のため。以前学んだことがあると良かったけど、アルゴリズム入門としては敷居が高めな印象だった。

並行プログラミング入門

https://www.amazon.co.jp/dp/4873119596

重めの並行処理に関する本。アセンブリでどうって話などかなり低レイヤーなところが中心。 まだ完走できておらず…余裕見て再チャレンジしたいところ。

チーム開発・組織論

SCRUM BOOT CAMP THE BOOK

https://www.amazon.co.jp/dp/B086GBXRN6

スクラムをチームに布教させるのに良い本と聞いたので買って読んだ。若干最新のスクラムガイドと差異はあるかも。

エッセンシャルスクラム

https://www.amazon.co.jp/dp/B00MB6GO7E

チームトポロジー

https://www.amazon.co.jp/dp/B09MS8BML8

エンジニアのためのマネジメントキャリアパス

https://www.amazon.co.jp/dp/4873118484

プロダクトマネジメント

INSPIRED 熱狂させる製品を生み出すプロダクトマネジメント★

https://www.amazon.co.jp/dp/B0814STTHV

プロダクトマネジメント ビルドトラップを避け顧客に価値を届ける

https://www.amazon.co.jp/dp/4873119251

とにかくアウトカムに注目しようという内容、良いプロダクトマネジメントの考え方が知れてよかった。

その他

岩田さん: 岩田聡はこんなことを話していた。★

https://www.amazon.co.jp/dp/B07W3TQ4RB

技術本でもビジネス本でもないが、エンジニア出身でマネジメント業するモチベーションがかなり湧いてくる本で非常によかった。今年1番読んで良かったと思えた。

ヘルシープログラマ

https://www.amazon.co.jp/dp/4873117283

リモートワーク中心の今の働き方で、健康への心がけは一層大切だなと思い購入。スタンディングデスクのメリデメ、散歩のススメなど実践的で良い感じだった。まだ途中までしか読んでない。

まとめ

今年もいろんな分野の本を掻い摘んでみてきた。特に低レイヤー、プロダクトマネジメントに関するところは知識・考え方アップデートできた気がする。来年はまた違う分野、デザインまわりとかの本に触れていきたい。