ブログ

ryuzeeによるブログ記事。不定期更新

直近開催のScrum Alliance認定スクラムマスター研修のご案内

新刊『Tidy First?: 個人で実践する経験主義的ソフトウェア設計』発売のお知らせ

みなさんこんにちは。@ryuzeeです。

言いたいことはタイトルに書いたとおりなのですが、2024年12月25日に、新刊『Tidy First?: 個人で実践する経験主義的ソフトウェア設計』が発売になります。

原著はKent Beck氏の『Tidy First?: A Personal Exercise in Empirical Software Design』です。 翻訳はいつもの株式会社アトラクタのアジャイルコーチ3人で行いました(私自身は16冊目の翻訳です)。

みどころ

何を紹介しようか迷ったのですが、どんな本なのかは訳者あとがきに書きました。 オライリー・ジャパン様のご厚意で、全文引用の許諾をいただきましたので以下に掲載します(出典『Tidy First?: 個人で実践する経験主義的ソフトウェア設計』125〜127ページ、オライリージャパン、2024年)。

本書は、Kent Beck著『Tidy First? A Personal Exercise in Empirical Software Design』(978-1098151249、O’Reilly Media、2023年)の全訳です。原著の誤記や誤植などについては確認して一部修正しています。

ケント・ベックは、現代のソフトウェア開発に大きな影響を与えた1人です。功績は多数ありますが、代表的なものとして、エクストリームプログラミング(XP)の考案、JUnitの開発、アジャイルマニフェストへの署名などが挙げられます。また、1996年から2007年にかけて多数の著書を上梓しました。

そして2023年に16年ぶりに発表されたのが本書です。2021年の1月に、Webの執筆プラットフォームであるSubstackで「Software design is an exercise in human relationships(ソフトウェア設計は人間関係のエクササイズだ)」という記事(https://tidyfirst.substack.com/p/coming-soon)を投稿したところから始まっています。以降、小さな記事を多いときには毎日のように投稿し、購読者と議論したり、フィードバックを得たりしながら進め、それらの記事をまとめる形でできたのが本書です。アジャイルの原則は、動作するソフトウェアを早期から頻繁に提供してフィードバックを得ることで、顧客満足を向上し、リスクを低減することですが、本書はその原則を適用して作られたと言ってよいでしょう。

「まえがき」にあるとおり、本書はソフトウェアの設計をテーマとする全3冊のシリーズの最初の書籍です。「人間関係」のなかでも、まずは「自分自身」との関係に主眼を置いて、1人でできる範囲のソフトウェア設計について説明しています。つまり、読者は、本書を読みながら、すぐに自分が取り組むコードを改善したり、自分の仕事のやり方を改善したりできるようになります。もちろん個人ができる範囲には限りがありますが、小さな取り組みを積み重ねることなくして、大きな結果は得られません。個人が自分の仕事の質を改善することなしに、別の力によって質が改善することもありません。ぜひ、本書の内容にすぐに取り組んでみてください。

Substack上での執筆はまだ続いています。シリーズ2作めのタイトルは『Tidy Together?』で、人間関係の幅を広げ、今度は一緒にソフトウェアを設計するチームを扱います。暫定的な概要はSubstackの記事(https://tidyfirst.substack.com/p/tidy-together-outline)で公開されています。今後内容がどうなるかはわかりませんが、興味深いトピックが多数含まれています。最新の原稿やトピックが待ち切れない人は、このSubstackの有料会員になるのもよいでしょう。もしかしたらあなたのフィードバックが反映されるかもしれません!

謝辞

和田卓人さん、玉木大地さん、石河竜太さん、野﨑裕樹さんをはじめとした株式会社CARTA HOLDINGSの読書会のみなさんには、読書会のなかで翻訳をレビューいただき、多数のフィードバックを頂戴しました。

伊藤貴洋さん、大金慧さん、太田陽祐さん、大谷和紀さん、小笠原晋也さん、角谷信太郎さん、川崎禎紀さん、黒木翔さん、小寺暁久さん、鈴木克弥さん、滝口開資さん、徳冨優一さん、二宮啓聡さん、古川亮一さん、古橋明久さん、森谷優大さんには長期間にわたり翻訳レビューにご協力いただきました。

みなさんのおかげで読みやすい書籍になったと思います。

企画、編集は、オライリー・ジャパンの高恵子さんが担当されました。いつも手厚い支援をいただいていることに感謝いたします。

訳者を代表して 2024年12月 吉羽 龍太郎

全部で33章ありながら164ページということで、それぞれの章は非常にコンパクトにまとまっています。 前半の第1部ではコードを整頓する上でよく登場するパターンを紹介し、第2部ではコードの整頓プロセスを、第3部でそれらの背景にある理論を扱っています。 「私の目標は、読者が午前中に本書を読み始めたら、午後には設計が上達していることだ」とあるように、すぐに日々の開発に取り入れることができるはずです。 訳者あとがきでも触れましたが、原著を使って組織内で読書会をしているチームも複数あります。 同じように、チームや組織で勉強会をしてみると、より理解が深まるのではないかと思います。

なお、電子書籍版はKindleはありませんので、オライリー・ジャパンのWebサイトから直接PDFやepub形式の電子書籍をご購入ください。

以下で目次を紹介しておきます。


目次

  • 推薦のことば
  • まえがき
  • はじめに
  • 第Ⅰ部 整頓
    • 1章 ガード節
    • 2章 デッドコード
    • 3章 シンメトリーを揃える
    • 4章 新しいインターフェイス、古い実装
    • 5章 読む順番
    • 6章 凝集の順番
    • 7章 変数宣言と初期化を一緒の場所に移動する
    • 8章 説明変数
    • 9章 説明定数
    • 10章 明示的なパラメーター
    • 11章 ステートメントを小分けにする
    • 12章 ヘルパーを抽出する
    • 13章 ひとかたまり
    • 14章 説明コメント
    • 15章 冗長なコメントを削除する
  • 第Ⅱ部 管理術
    • 16章 分けて整頓する
    • 17章 連鎖
      • 17.1 結論
    • 18章 バッチサイズ
    • 19章 リズム
    • 20章 絡まりを解きほぐす
    • 21章 先に整頓、あとに整頓、改めて整頓、整頓しない
      • 21.1 整頓しない
      • 21.2 改めて整頓
      • 21.3 あとに整頓
      • 21.4 先に整頓
      • 21.5 まとめ
  • 第Ⅲ部 理論
    • 22章 要素を役立つように関係づける
      • 22.1 要素
      • 22.2 関係づける
      • 22.3 役立つように
      • 22.4 要素を役立つように関係づける
    • 23章 構造と振る舞い
    • 24章 経済性:時間価値とオプショナリティ
    • 25章 明日の1ドルより今日の1ドル
    • 26章 オプション
    • 27章 オプション vs キャッシュフロー
    • 28章 可逆的な構造変更
    • 29章 結合
    • 30章 コンスタンチンの等価性
    • 31章 結合 vs 分離
    • 32章 凝集
    • 33章 結論
  • 付録
    • 付録A 読書リスト・参考文献
    • 訳者あとがき

是非お買い求めください。よろしくお願いします!

アジャイル開発チーム向けのコーチングや、技術顧問、Scrum Alliance認定スクラムマスター研修などのトレーニングを提供しています。お気軽にご相談ください(初回相談無料)
前の記事 初心者向けスクラム理解度クイズ
次の記事 スケーリングにおけるチーム構造の変遷

プロダクト開発で、こんな課題を感じていませんか?

  • 何を作るべきか、順位の決め方が定まらない
  • プロダクトの方向性をチームで共有できていない
  • 開発組織の体制や役割がうまく機能していない
  • 開発プロセスが形骸化し、目的を見失っている
  • アジャイルを導入したが、組織に定着しない

プロダクトマネジメント、組織構造、開発プロセスの課題について、組織全体の視点から支援します。

お問い合わせ(初回相談無料)

契約を前提にした相談でなくて構いません。相談に際して事前の整理や準備は不要です。

Aligned ―プロダクト開発におけるステークホルダーとの関係性の築き方
ダイナミックリチーミング 第2版
Tidy First?
脳に収まるコードの書き方
プロダクトマネージャーのしごと 第2版
エンジニアリングマネージャーのしごと
チームトポロジー
スクラム実践者が知るべき97のこと
プロダクトマネジメント
SCRUM BOOT CAMP THE BOOK
みんなでアジャイル
レガシーコードからの脱却
Effective DevOps
変革の軌跡
ジョイ・インク
アジャイルコーチの道具箱
カンバン仕事術
Software in 30 Days
How to Change the World