Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
XP をバイブルにする事業部で10年働いた新卒が語りたい『Tidy First?』/ Put ...
Search
Junichi Kobayashi
September 04, 2026
50
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
XP をバイブルにする事業部で10年働いた新卒が語りたい『Tidy First?』/ Put your understanding into the code
Junichi Kobayashi
September 04, 2026
More Decks by Junichi Kobayashi
See All by Junichi Kobayashi
rage against annotate_predecessor
junk0612
0
270
The Implementations of Advanced LR Parser Algorithm
junk0612
3
2.8k
「今のプロジェクトいろいろ大変なんですよ、app/services とかもあって……」/After Kaigi on Rails 2024 LT Night
junk0612
6
2.9k
LR で JSON パーサーを作る / Coding LR JSON Parser
junk0612
2
2k
「ナントカLR」を整理する / Clarifying LR Algorithms
junk0612
1
730
From LALR to IELR: A Lrama's Next Step
junk0612
2
5.3k
RubyConf Taiwan / Understanding Parser Generators surrounding Ruby with Contributing Lrama
junk0612
2
7.2k
LL法とLR法の違いは?調べてみた!-完全版-/Comparing LL and LR parse algorithm -EX Edition-
junk0612
0
2.5k
ESM Super LT/Comparing LL and LR parse algorithm
junk0612
1
240
Featured
See All Featured
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
2.7k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.3k
Skip the Path - Find Your Career Trail
mkilby
1
210
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.6k
First, design no harm
axbom
PRO
2
1.3k
How to build a perfect <img>
jonoalderson
1
5.9k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.9k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
970
Unsuck your backbone
ammeep
672
58k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
360
Raft: Consensus for Rubyists
vanstee
141
7.7k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
410
Transcript
XP祭り 2026 オンライン & 三菱電機株式会社 Serendie Street Yokohama 2026/09/05(土) XP
をバイブルにする事業部で 10年働いた新卒が語りたい『Tidy First?』 株式会社永和システムマネジメント アジャイル事業部 小林 純一
小林 純一 • • • • • X: @junk0612 GitHub:
@junk0612 永和システムマネジメント ◦ Rails エンジニア ◦ 構文解析器研究部員 LR パーサージェネレーター Lrama の コミッター 趣味 ◦ パーサー ◦ 音楽ゲーム ◦ ボードゲーム ◦ 俳句
小林 純一 • XP祭り登壇 4回目 (+ 野良LT 1回) ◦ ◦
◦ ◦ ◦ 2016(『俺たちの新人教育!』 + LT) 2020(野良LT) 2021(『ソフトウェア開発におけるコミュニケーション』) 2022(『オンライン時代のペアプログラミング』) 2026(『XPをバイブルにする事業部で10年働いた新卒が 語りたい『Tidy First?』』) • 鷲崎研究室OB • 午前中に子供の保育園の運動会に 行ってきました
None
None
None
None
None
「アジャイル事業部の 『アジャイル』って XP のことなんだよ」
『Tidy First?』
『Tidy First?』
『Tidy First?』 • Kent Beck の16年ぶりの新刊 • Web で連載していた記事をまとめた内容 •
ソフトウェア設計について「コードの整頓」を中心に書かれている • すぐ試せる実践から、それらをまとめる管理術、理論的な背景へ進む • 「ソフトウェア設計は人間関係のエクササイズだ」
社内読書会 • • • • • 角谷さんがゲスト 原著を読む 月2回 約1年8か月
表紙から裏表紙まで
「自分の理解を コードに落とそう」
「自分の理解をコードに落とそう」 • 8章: 説明変数 ◦ この整頓ではあなたが苦労して勝ち取った理解をコードに落とそう。 (p.24) • 9章: 説明定数
◦ コードを読んでいく。理解する。その理解をコードに落とせば、頭の隅に置いて おく必要がなくなる。 (p.26) • 14章: 説明コメント ◦ コードを読んでいて「なるほど、それでこうなっているのか」と声が出ることが ある。これは貴重な瞬間だ。記録しよう。 (p.37) 斜体部分はすべてKent Beck 著、吉羽 龍太郎、永瀬 美穂、細澤 あゆみ 訳『Tidy First? ―個人で実践する経験主義的ソフトウェア設計』より引用
「自分の理解をコードに落とそう」 1. 最も小さいフィードバックサイクル 2. コードがドキュメントだ
最も小さいフィードバックサイクル • 「自分の理解をコードに落とす」とは、 コードとプログラマーの間のフィードバックサイクル • コードとプログラマー個人の関係の話 ◦ チームメンバーとの調整が必要ない ◦ 同じ場所にいる必要もない
最もステークホルダーが少なく、それゆえに 素早く多数のフィードバックが可能
「それって XP じゃん!」 XP チームはできるだけ早く、できるだけ多くのフィードバックを生み出そ うとする。フィードバックのサイクルを数週間や数か月ではなく、数分や数時 間に短縮しようとする。フィードバックが早く手に入れば、その分だけ早く適 応できる。 斜体部分はKent Beck、Cynthia
Andres 著、 角 征典 訳『エクストリームプログラミング』 p.18より引用
最も小さいフィードバックサイクル • コードを使わずに、日々の仕事に役立てることはできないか? ◦ たとえばモデルとか ◦ コードは AI が書く時代になったので、コードに頼らずに 認知負債を軽減したい
• 「一人でできるフィードバックサイクル」に(無駄に)気づくようになった ◦ まさにこのスライドづくりが良い例 ◦ 発表準備をする過程で、自分の理解がさらに深まっていく
コードがドキュメントだ • なぜコードが重要なドキュメントなのかというと、 詳細かつ正確なドキュメントはコードしかないからだ。 ◦ 動くソフトウェアを最も正確に表しているのはソースコード ◦ 仮にバグがあっても、それすら正確に記述されている 斜体部分はMartin Fowler's
Bliki(ja)『コードがドキュメントだ』 (https://bliki-ja.github.io/CodeAsDocumentation) より引用
コードがドキュメントだ • 整頓とは、コードの表現や構造を直すこと ◦ 読んでみて、違和感のある個所を直す ◦ 順序を入れ替えたり、表現を変えたり、段落を分けたり ◦ 「普通はこう書く」に従ったり、あえて変に書いて違和感を持たせたり 文章の推敲とやっていることが完全に一緒
文章力がコーディング力に直結する? • (大学で一応学んだが)テクニカルライティングをおさらいしたくなった ◦ 技術文書では豊かな表現力よりも正確性や簡潔さのほうが大事 ◦ 文学的に書くのがいつも正しいとは限らない • 文芸的プログラミングのこころが少しわかったかも
まとめ • 『Tidy First?』の社内読書会を通じて、大きな感銘を受けた • いちばんよかったのは「自分の理解をコードに落とそう」という 思想だった • 感銘を受けた原因を突き詰めていくと、XP のエッセンスに
行き当たった • 『Tidy First?』最高! XP 最高!