1月に読んだ本
年末から読書欲が高まったので結構読んだ。
アジャイルな見積りと計画づくり ~価値あるソフトウェアを育てる概念と技法~
元々読みかけだったやつを読み終えた。 現場でプロダクトバックログがうまいこと消化できなかったりしたときにちょくちょく読み返している。本を読んだうえで今もよく感じるのは、見積りの精度を高めるために時間をかけすぎてしまうこと。精度を高めるためにPBIに書いてあることを深読みして実装方法を考え熟考してしまう。その実装方法かわからないのに考えて結局1時間とかかかってしまうこともままあるので、その都度本に書いてある労力と正確さの相関図を思い出すのだった。
カイゼン・ジャーニー たった1人からはじめて、「越境」するチームをつくるまで
これも元々読みかけだったやつ。計画づくりの事例よりももっと泥臭いストーリー展開が見れて面白かった。ほぼ小説なのでサクッと読めたのも良い。僕らは果たして江島さんになれるのだろうか。
アジャイルサムライ――達人開発者への道
アジャイル開発のマインドセットとCI/CDやテストなどがアジャイルの両翼であることが書かれててよいなーと思った。イテレーション・ゼロはこの本で知ったので新規でやる分は参考にできそうだなと思った。ちなみにゲームジャムとかハッカソンの時は「まずはビルドできるようにするぞ!」って意気込んで、なにより最初にビルドが通る環境を作るんだけど、これがイテレーション・ゼロなのではとふと思った。 あとマスター・センセイとか図とかが凄くいい日本語訳されててじわじわ来た。
ファンベース ──支持され、愛され、長く売れ続けるために
僕もガルパン限界オタクなので、ファンベースで定義されるファンの心理とか精神は非常に理解できた。「そう!それなんだよ!」と頷けるものがあるなら勝手に付いていくし勝手にガルパンはいいぞおじさんをする。新規を取得することは重要ではありつつもどうファンにしていくかは割と疎かになりがちなところなのでこの話は非常に面白かった。特にゲームはこのファン心理が強いものだと個人的に考えている。ファンは開発者を理解したがるし共にあろうとするのだ。
レガシーコードからの脱却 ―ソフトウェアの寿命を延ばし価値を高める9つのプラクティス
そもそもどうしてレガシーコードになるのか、という話の本。コードレベルだけではなくアジャイルの話とかテストの話とかも割と多めに割いている。どうやって綺麗であるべきかという点が書かれているので、ここを目標として現状との乖離を分析したりするのもよさそう。逆に現在のレガシーコードと立ち向かう方法は書かれていないので、そのあたりはレガシーコード改善ガイドを読むのがおススメ。
オブジェクト指向設計実践ガイド ~Rubyでわかる 進化しつづける柔軟なアプリケーションの育て方
会社の人にお勧めされ読んだ本。オブジェクト指向がメッセージングのやり取りであること、というのを常に中心に添えているという印象だった。こんなやり取りを行うからこのクラスはこう名付けられるのだという考え方の順序が逆転するのはなるほどなと感心して、これがダックタイピングなのだなあと参考になった。最近どうレイヤー分けするのかというところを考えることが多く、そのレイヤーの中でどう実装するかという名前付けに苦しんでいた。これはどんなUseCaseなのかとかこれは何のEntityなのかとかそういうところ。クリーンアーキテクチャで言うところの「叫ぶアーキテクチャ」になっていないのではないかと悩んでいた。しかしこれこそ、どういうメッセージングを行うかを考えずに名前を付けて役割を考えようとしたことが原因なのかなあと立ち返るきっかけになった。
普段三ヵ月に一冊くらいしか読まないので、自分でも頑張った方やなって思った。 勢い着いたのでもっと読む癖付けよう。