1. readline.fm
  2. EP158 The Good News Factory ..
2026-01-16 28:35

EP158 The Good News Factory PART4

spotify apple_podcasts

## とりあげた本

『The Good News Factory』Kent Beck オライリー 2025


## mixi2

https://mixi.social/communities/513e0bc9-582b-4962-a9c1-c5c076175e08/about


## ShowNote

https://gennei.notion.site/EP158-The-Good-News-Factory-PART4-2dec645d49118030aa3adb8e9e23cc2a

サマリー

ソフトウェア設計におけるインセンティブのパラドックスと3Xモデルについて深く掘り下げ、開発者と経営者間の対立について話が展開されます。デザインの重要性が増す背景や、機能の成長と構造の見直しのバランスの取り方についても考察が行われます。「グッドニュースファクトリー」では、エンジニアリングの成長や成功の罠、ビッグリライトのリスクについて語られています。また、リファクタリングの重要性やプロジェクトの成果を祝うことの意義についても触れられています。

インセンティブのパラドックス
スピーカー 1
次ですね、6章ですか。ソフトウェア設計におけるインセンティブのパラドックスだそうです。
ここはちゃんと翻訳されてそうだな。
インセンティブパラドックスinソフトウェアデザインって書いてあるんで。
スピーカー 2
おー、じゃあ何かあってそう。なんでこの一時疑いながら読まないといけないんだ。
スピーカー 1
ソフトウェアをコンテナ化しっていう風に書いてあるんですよね。
スピーカー 2
これはパッケージングするぐらいな意味なんですかね。
スピーカー 1
分割してカプセル化したり閉じ込めたりしてみたいなニュアンスで読んでましたけど。
スピーカー 2
この辺はいつやるかは議論があるけど、やった方がいいよねってことに対しては、議論の余地はないよねって言ってて、それはそうっていう。
この章では結局パラドックスって言ってるのは、やった方がいいってことは分かってるけど、じゃあなぜ新機能はメンテナンスよりも優先されるのかっていうようなところを話してる章ですね。
スピーカー 1
これはどうなんだろうな。あんまりそこまで超目新しいなっていう感じはしなかったかな。
スピーカー 2
そうだよねって思いながら、それ機能を出した方がいい際の影響もあるし、あの人たちが頑張ってるんだなってなるから。
なんか別にパラドックスって言われるんだけど、まあそれはそうやろうっていうような気持ちになる章でしたね。
スピーカー 1
パラドックスそうですね。立場的なところが違うと矛盾するよね。同じ組織のはずなのに的な意味なのかな。
あ、違う。経営者対開発者じゃないか。ユーザーと開発者かどっちかっていうと対立軸が。さっき言ったプログラミングに種類あるって言ってるうちの、それぞれ両方大事だけどそれが誰にとって価値のあることなのかっていうのが違う。
それって矛盾だよねって話か。新機能の要求と設計改善の必要性のバランスを取りながらグッドニュースファクトリーを維持することが経営者であるあなたの役割ですよって書いてあるんで。
スピーカー 2
まあ成功犯じゃないけども、第三の道をちゃんと歩むんやでみたいな感じで。いやでもそんなことができるんだったら苦労しないよって次言われそうだよな。
スピーカー 1
まあそもそもちゃんと売上げになるような機能開発とかプロダクトデザインできてるんだっていうのがまずハードル高い。
スピーカー 2
そう。そうなんすよね。
スピーカー 1
そうするとやっぱり打席に立たないといけないですもんね。
スピーカー 2
そう。でもいっぱい作ってもいっぱい売れなければ、結局なんかこうパラドックスな話になってるけど、結局なんか開発者に対して信頼があれば言ってることが通るし、信頼がなければ通らないっていう話でもあるのではって若干そういう気持ちもあるんだよなって思いました。
なんか結局機能作ってるって言ってるけど、それ別にユーザー使ってないじゃんとか、それによってどれくらい売れてんのっていうことを説明できないと、結局何を作ってるか説明できないのに、あいつら作ってるって言ってるけど、一体何をやってるんだっていうふうに見られると、あんまり信用できないよなーって思ったりはするんですよね。
スピーカー 1
そうですね。
スピーカー 2
いや言いながらすごい心が痛いなっていうか。
そうそうそうですよね、うっみたいな。
なんかブーメランが頭の後ろに返ってきてるような気持ちはあるんですけど。
スピーカー 1
でもこの章のラップアップのところというか結論のところにちょっといいこと書いてあるなーっていう気はしていて、いいこと書いてあるなーって言いながら途中から読んじゃうんですごい偏った編集というか、良くないインターネット仕草になっちゃうんですけど。
同時にエグゼクティブは全ての機能開発を中止し長期に渡って構造のみに集中するという近視眼的な試みを押し留める必要があるっていうふうに書いてあって。
スピーカー 2
いいですよ。
スピーカー 1
その下にイタリックで同じようなことが書いてある。経営幹部は全ての機能開発を中止し長期に渡って構造のみに集中するという短期的な試みを押し留める必要があるって書いてあって。何で何で2回言うとるみたいな。
スピーカー 2
大事なことなんで。
スピーカー 1
これはそうなんですよね。ソフトウェア開発者の味方ですよ、君たち頑張ってねーみたいな話をするでもないし、お前ら言ってることよくわからんからとりあえず新機能作れみたいなことだけを言ってるわけでもないし、両方やりなさいよと。
ビジネスに変化をもたらす機能を讃えるだけでなく、グッドニュースファクトリーを活性化させるソフトウェアデザインも讃えようって書いてますね。
スピーカー 2
そうなんですよね。結局そこに繋がらないと構造と振る舞いを見直しましたって言っても、別にその機能誰も使ってないんだよねとかなったら意味ないし。
スピーカー 1
逆に言うとね、大機能、すごい大きいマイルストーンに関わるような機能の今のうちに土台を整えておこうとか、そういうのは多分効いてきますもんね。
スピーカー 2
そういうような、これは経営者向けに喋ってるけど、エンジニアもビジネスがわかるっていうのは別に数字がバランスシードを読めるようになるとか、
そういう意味話じゃなくて、これをやるとどういうふうにいいことがあるんだっていうことをちゃんと説明できないと、やっぱ話が通らんよねっていうような気もしましたね。
スピーカー 1
そんなことはもうずっと言われてるっちゃ言われてるけど、改めてね。
そこら辺って別に、じゃあMBA取りに行かなきゃいけないよねとか、すごい経営者目線を持ってビジネスを学び取っていくしかないぞみたいな、そこまで大それた話になる必要もないかなっていう気がして、
3Xモデルの展開
スピーカー 1
単純に社内でよく出てくる機能とか、話題になっているやりたいことなんだっけみたいな、そういう力学というか流れだけ抑えるだけでも、ここら辺の行動を多分きれいにしておいた方がいいなって判断に繋がるかもしれないし、
今ここのリファクタリングとかリデザインちょっと頑張ってみると、こういうことを繋がりそうですよねとかっていう話もなってくると思うんで、なんかそれだけでも十分にいい気はするんですよね。
なんかビジネスが分かるようにするってそんなにそこまで超難しい話としなくてもいいはずなんで、だってビジネスって会社の中でみんなやってるでしょみたいなね、じゃあ会社の中の人のことが分かればひとまず結構いけるぞみたいな面もあるはず。
スピーカー 2
もちろんたくさんいろんなことを知っていて、いいことはいっぱいあるし、別にMBA取るぞって思って取りに行っても全然いいと思うけど。
スピーカー 1
ユーザーインタビューにちゃんと出るとかもすごい大事ですけど、それだけじゃないよという気もするので。
スピーカー 2
それだけじゃないよっていう話をもっといろんな人がいっぱいする必要があるっていうことでもあるのかな、ジャストすると。
スピーカー 1
っていうことをちょっと思いましたね。
そしてじゃあ第7章ですか。
スピーカー 2
そうですね。
スピーカー 1
第7章、3Xモデルなぜデザインが突然重要になるのか。
スピーカー 2
そうですよね。なぜ、こういうデザインって構造とかの話ですけど、なんかこの間までは別にいい感じに開発してたのに突然リファクタリングしないとってこいつら有意になったんだろうみたいな。
本当にする必要あるのかなみたいなことを思ったりするけど、なぜそういうことが突然出てくるのかっていうようなところですね。
スピーカー 1
これだから3Xモデルっていうのがなんじゃいっていう話からですかね。
スピーカー 2
そうですね。
スピーカー 1
エクスプローラー、エクスパンド、エクストラクターですか。
スピーカー 2
そうです。
スピーカー 1
これは全部やれよっていう話であってます?
スピーカー 2
これはフェイズですね。
スピーカー 1
フェイズになりますよね。
スピーカー 2
ケント・ベックがフェイスブック、ケント・ベックってフェイスブックにいたんですけど、そういえばそうだったなってこれちょっと読みながら思ったんですけど。
スピーカー 1
分かる。
スピーカー 2
2011年にフェイスブックにケント・ベック入って、社内のプロジェクトとかを見てると、大体3種類ぐらいに分かれますよっていうふうにやって、
運用フェイズになったようなプロジェクトと、これからどんどん大きくしていくんだみたいな、前例がない規模感に大きくしていくんだっていうようなプロジェクトと、
革新的な、多分メタクエストとかですかね、メタのワールドを作っていくような革新的なプロジェクトと、3つのフェイズのものがあるんだよっていう。
多分このフェイズによって取る選択肢とか、今までの機能を作ることとデザインを見直すことっていうのをどういうバランスでやっていくんだっていうのは、フェイズによってまた変わってくるよっていうような話をしているとこです。
スピーカー 1
そうですね、それで何で違うんでしょうねっていう話ですもんね、そのフェイズによって違うっていうのは想像つくけど。お前さっきまで振る舞いと構造をどっち開発するかみたいな話をしてたけど、さてどこ行ったのと。
スピーカー 2
ある種スタートアップが全部辿っていく道のりっていう感じでもあるなってちょっと思いながら読んでたんですけど、やっぱ最初のスタートアップの最初期ってそもそもこれが使われるのか使われないのかとか、PMFするのかみたいなところで実際作ってものを触ってもらって市場に出してフィードバックを得てみたいな、
っていうようなことをやってるタイミングっていうのは、構造を見直すとか云々かんのではなく、機能がないとお金を稼げないってなるんで、このイノベーション、3Xモデルとエクストラクトになるかなの部分は、そもそもまだコードベースがちっちゃかったりとかするから、
できなくなっていった時には、完璧なものを作るってよりもどんどん出してフィードバックをもらうっていうフェーズだよね。だからここはフィーチャーの方が大事だよねっていうような話をしてますね。
スピーカー 1
エクストラクトじゃない、エクスプローラーですかね、最初だから。
スピーカー 2
エクスプローラーでしたね。で拡大、今度どんどん大きくするようなフェーズですね。
スピーカー 1
01から100になったとかそういうやつですかね。
スピーカー 2
拡大機は急速な成長と市場シェアの獲得が大事ですよって、どうやらこれはニーズがありそうだ、じゃあジン取りゲームに早く勝つぞみたいな、いうようなことをやってるタイミングって感じですね。
スピーカー 1
ここでね、さっき言った存続が命題になるみたいな話が、多分ここからやっと出てくるんですもんね。
スピーカー 2
そうそう。
スピーカー 1
で、存続するためにはやっぱり変化に適応し続けるっていう話、デリバリーの速さみたいなところになってくるから、なんか全部ツギハギばっかじゃなくて、ちゃんと変更容易性をしっかり保った構造をちゃんとやっていこうみたいな感じ。
だから多分リズムが変わってくるというか、さっき言ったフィーチャーをバンバン作るっていうのばっかやってたところから少し、リファクタリングとか、タイリーを普通にいつでもやれって話か。
リファクタリングとか、もっと言ったらデザインリアー化までいくのかわからないですけど。
スピーカー 2
でもそれこそCICDがどんどん遅くなっていくよねとかあって、じゃあそこに直すのに投資しましょうねとか、もしかしたらデザインシステムみたいなものをここで入れた方がいいかもねとか、多分そういうようなもうちょっとふくりで聞いたりとか、全体に聞くような最適化みたいなものをちょっと考えないといけないねっていうのが出てきたりとかするのかなっていうのをちょっとイメージしてましたね。
サーバー3台にデプロイしてればよかったのが、このフェーズで10台20台ってなってた時にオートスケールの設定をしておかないと人が一生手でやるのは辛いとかいうような、そういうのとかもあったりしそうだなとか。
最初はEC21台とか、その1個の印刷の中にMySQLとApacheが同時にいますとかね。現代だとあんまないかもしれないけど、一昔前とかだったらそういうのもあっただろうしとか。
あとあれもあるかな、データベースをそろそろリーダーとライター分けようかみたいなのとかね。多分出てくる。
で、最後はエクストラクト。
エクストラクトがあると運用フェーズっていう感じですかね。いいですね。ちょっと部分を引用すると、しかしエクストラクトの段階道がその本性を表し始める。
コードネーズワーク、クイックフィックスとパッチワークの迷宮とかし、高いメンテナンスコストとオプション性の低下につながるっていう風な一文があって、いいですね。
スピーカー 1
そうですね。エクストラクト、成功の罠っていう風に書いてありますもんね。
スピーカー 2
でも成功しないとここに来れないんだよなっていうのも事実なんで。
最近ツイッターかなんかで見たやつで、儲かってる会社に行ったらだいたいコードのレベルが低いみたいな、メンテナンスが大変みたいな、いうようなことを書いてて。
いやそれは、生き残ったからそれが残ってるのであってみたいなことを突っ込まれてて、いやそれはそうみたいな気持ちになったやつがありましたね。
スピーカー 1
そうなんだよな。複雑さがそのまま還元、還元?反元?プロジェクションされてるコードになってると、って感じですもんね。
これが3Xモデルって言ってるのかな?なんか3Xモデルっていう単語出てなくないですか?
スピーカー 2
本文には多分出てなくて。
スピーカー 1
なんか、自分で言った言葉ぐらいちゃんと自分で蹴りつけてほしいなって思ったでしょ。
スピーカー 2
最初読んでわかんなくて、原文を読んで、やっとわかったって感じでしたね。そのXっていうのがEXから始まるやつなんだなみたいな。
成功の罠
スピーカー 2
モデルと言ってるからには何かをモデル化したということだろうから、成長、事情フェーズ、成長の段階っていうのを抽象化して、こういうフェーズ迎え、こういうフェーズをこういう順番で迎えるよねっていうモデル化しましたって話なのかな?多分。
スピーカー 1
そう、ということにしておきましょう。多分そうだと思うんで、そういうことが結局言いたかったんだよねっていうのは。
特にね、この本最初から言ってるように、本じゃないか、このブリーフィングはエグゼクティブに向けたものですって言ってる通り、なんかやっぱりこう胸を打つ感じがありますよね。
最初はめちゃくちゃ開発したよね。うん、わかるわかるみたいな。
スピーカー 2
でもどうだい、サービス事業が成長するにつれてエンジニアがちょっとため息多くなってませんかみたいな。それが成功の罠にはまる前触れかもしれませんみたいな。
スピーカー 1
せっかくここまで伸ばしてきたんだからここからも勝ち続けるためにちょっとこういうところを見ておいてくださいっていうような話に見えるんだよな。
いつ近道をして、いつ長期的な投資をするのかっていうような表現も出てきていたり。
スピーカー 2
いやーもうなんかわかるわかるみたいな、首がもげる。
ここに部分追加すれば終わるんですみたいなので、追加したが故にその先が地獄みたいなのとかありますからね。
いろんなものを思い出して、でもそれによって契約が取れて大きいお金が入ってくるからお給料払われてるって言われると、うーんみたいな。
だからだんだんそういうパッチワークみたいなのは、しかもAIがあるからね、パッチワークどんどんやりやすくなっていくと思うんで。
やっぱり構造を見抜いてうまくやれる人っていうのはより必要になっていくんだろうな。
ソフトウェアもでかくなっていくし必要になっていくんだろうなっていうふうにやっぱり感じますね。
スピーカー 1
そういう人にやっぱりちゃんとルールファイルを書いてもらいたいですね。
そしたら誰でも機能増やせるんで。
スピーカー 2
もはや人じゃなくて機械が機能増やしてるかもしれないけど、そうなった時には。
ビッグリライトのリスクとメリット
スピーカー 1
で、まあ次ですか。最終章ですね。
スピーカー 2
そうですね。
スピーカー 1
グッドニュースファクトリーを翻訳諦めてグッドニュース構造とかやってらっしゃいますね。
スピーカー 2
そうですね。なんかすごい大変なことになってる。力尽きた感じがあるんだよな。
スピーカー 1
幸能章はどうでした?面白かったところは。
スピーカー 2
そうですね。やり直しの誘惑を避けましょうねっていう話が出てるんですけど。
スピーカー 1
そうですね。僕もそこハイライトしてる。
スピーカー 2
やっぱりビックリライトはうまくいかないからやめろって書いてて。そうなんだよなと思いながら。
ビックリライトするようなフェーズまでにどうにか手を打っていい感じにしときましょうねって言われたらその通りって思いながら。
スピーカー 1
今度こそはうまくやるという約束でシステム全体を再開発することは見かけよりも収益性が低くリスクが高いとか。
やり直しがうまくいくというのは中システムとほぼ同じことをするシステムを手に入れるという意味であるとか。
スピーカー 2
そうなんだよ。
スピーカー 1
それ聞いちゃうと既存のシステムを反復的に改良していく方がいいっていう話は納得感ありますね。納得感あるが、そうですね。
走りながら車を処理する方が安全で楽しくて快適なんだっけっていうのはわからんよな。
スピーカー 2
本当にリライトしないといけないものもあるっちゃあるんですよね。
例えばですけど、自分が過去に見たもので言えばオブジェクティブシーで書かれたiOSアプリでもう誰もわからんってなってて、
これをメンテし続けるのかみたいな気持ちになった時にはもうこれは新しいアプリを作るしかないんやってなって、新しいアプリに移行するとか。
スピーカー 1
そうなんかユーザーを巻き込むような、こう変わりますっていうのはありですよね。
ありですよね。リライト、ビッグリライトプロジェクトってそういうレベルじゃないと厳しいんじゃないかなっていう気はしちゃうんだよな。
スピーカー 2
大体ビッグリライトしようと思った時に、ついでにこれもやりたいとかって出てくるじゃないですか。
スピーカー 1
ビッグですからね。一個ぐらい混ぜてもバレないでしょって。
スピーカー 2
でそれをみんなが混ぜた結果、なんか旧版と新版で挙動が違いますっていうのがいっぱい出てきたりとか、
抜け漏れがあったりとか隠れしようがあって、ああみたいなことが起きて辛くなるのはあるんですよねって思いながら。
スピーカー 1
でも難しいですよね。ビッグリライトがうまくいくかどうか本当にわからないことが多いけど、
これはもう全部書き換えないともうあかんみたいなところまで行ってしまったシステムって多分やるしかない気もするし。
スピーカー 2
そうなんだよな。たぶんこれは会計上の問題とかもあって、システム作って原価消却してって、
消却した後にしたらこの新しいの作るみたいな、たぶんそういう考え方で作ってるソフトウェアとかもあると思うんで。
そうなっていくとどうしてもビッグリライトしないといけないみたいなこともあるんだろうなって、
SIの現場とかを見た時にちょっと思ってありました。その時は思わなかったけど、今になって振り返ると、
ああなるほど、大難世代システムとかって言ってるのはそういうことなのかとかっていうのをちょっと思ったりとかしましたね。
スピーカー 1
いろいろな力学にがんじがらめられてるのはあるよな。
スピーカー 2
もしかしたらエグゼクティブの人も、いいリズムでリファクターをしてとかっていうのは大事って思ってるけど、
そもそもその会社の会計上のルールとか、これまでやってきたものがソフトウェアを扱ったことが全然経験がなくて、
ソフトウェアっていうのはある種一点物を買うかのように作ってもらって、それを10年使い続けますみたいな。
そういう世界観にいる人からしたら、そんなことやるのはちょっと無理っすよって言われちゃうっていうのはあったりしそうだなっていうのも、
現実はそういうもんだったりするっていうのは一個あるかもしれないですね。
スピーカー 1
しんどいですね。なるべくそういう未来を迎えないように過ごしていきたいなっていうのはあるけども。
スピーカー 2
あるけども、そう。
成果を祝うことの意義
スピーカー 1
そうですね。あとは管理しやすいインクリメントで設計するとか、デザインの業績を祝うとか、そういうのが書いてますね。
スピーカー 2
やっぱこの祝うっていうのは、リファクタリングしたいですとかっていう話ってエンジニアから出てきて、
したいですって言ったからやって当たり前だろうみたいなことになっちゃうけど、やっぱうまくいったんだったら祝わないと良くないですね。
スピーカー 1
なんかXPの人たちって結構祝うの好きじゃないですか。印象が。
スピーカー 2
そういうのがある。
スピーカー 1
ありますよね。
アジャイルのゾンビスクラムサバイバルガイド。
XPじゃないじゃないですか。
スピーカー 2
XPじゃないけど、あれでもやっぱ祝いましょうっていう話が出てきたし、人を褒めるとかプロジェクトがうまくいったことに、やっぱ祝うってことって大事なんだなって思ったりとか、
KBTやるとよくみんなプロブレムに目が行きがちとかなっちゃうけど、良かったことにも一緒に見る必要があるよねっていうのをやっぱ思いますね。
スピーカー 1
なんかXP代本あるじゃないですか。エクストリームプログラミングニューモンかな。
あれ多分今手に入りやすいのが第7版化になってるんですけど、最初の版だと確か何かリリースしたらピザとビール飲んで祝わなきゃいけないみたいなことがプラクティスとして挙げられてた気がして。
スピーカー 2
いいですね。
スピーカー 1
確か消されたんですけど。
確か確か。
スピーカー 2
一日複数回デプロイするからビール飲むペースが早くて。
スピーカー 1
ずっと継続的にビールがデリバリーされてくる。
スピーカー 2
どっかのカバレルみたいな。
スピーカー 1
タフな人が持ち歩いてきて。
スピーカー 2
持ち歩いてきてどうですかって。
スピーカー 1
なんかピザパーティーあれって書いてあったような気がしてるし、消されたような気もしてるんですけどちょっとうろ覚えです。
意外に調べた気もするけど。余談なんですけど、そういうのもあって、ステーション5、文化圏だなーって思って勝手に。
そんな印象があります。
まあまあでもそんな感じですかね。第8章はやっぱりまとめて、バランスというか両方やるんだよ、それって大事なことだよっていうのが。
グッドニュースファクトリーをちゃんと蘇生していきましょうと書いてありましたね。
最後はグッドニュースファクトリーを背長く延残していくことができる。
スピーカー 2
延残して笑っちゃう。
オペレーションだったのか。
そういうことでしたね。
スピーカー 1
原文見てみるか一応。
そうですね、オペレーティングがグッドニュースファクトリー4years to comeって書いてあるんで、オペレーティングですね。ビルディング&オペレーティング。
なるほど。
延残してしていくか。
スピーカー 2
延残していきましょう。
スピーカー 1
というような感じでしたね。
スピーカー 2
めっちゃ喋ったね。
スピーカー 1
40ページでそんな喋れるんかっていうのを引いてます今。
スピーカー 2
これ1時間で終わるだろうって思ってたけど。
僕40分ぐらいかな。そうすると文化ってどうしようって思ったんですけど。
普通に4本以上撮れてる。
そうですね。我々は何でも喋れるということです。
スピーカー 1
撮影はしてたからか。
28:35

コメント

スクロール