トレードオフの重要性
まあ、でもちょっと次行きますか。ここの部は、なんかあります?他。
設計の方ですか?語部の方。
設計の方はでも、一番話したかったのはそこだったんで、そこが話せたらもう満足ですね。
ここの部は何かいろいろとね、面白そうなエッセンスはやっぱり転がってるけど、まあ哲学って言ってるだけであって非常に、なんていうか、あまり一発で飲み干せない感じもありましたね。
そうですね。
具はものはよくわかんなかったしな。
そうですね。もう具はわかんないから、とりあえず教訓とつまりだけ読んでます。
で、第6部ですね。トレードオフですね。
そうですね。
設計とはトレードオフであるって言ってたんで。
そう。ちゃんとここについて回るんだな、トレードオフがここに来てもっていうことをまず思ったりしました。
早く走れる人材くださいのやつ、でその早くっていうのが100mなのか5kmなのか10kmなのか50kmなのかで、全然違うしそれ全部できる人おらんでみたいな話も、これもコンサル担当の秘密に確か出てきてますよね。
そうですね。しかあったはず。どっかで読んだと思いながら。
まあそんな感じの、これやっぱりトレードオフの話としては一番わかりやすいっていうか切り味がいいんだろうなっていう気がしてるんだろうなって思いながら読みました。
そうですね。
あとワインバーグの足の速さがわかるっていう。
そうそう。読んでて、GMWって何だろうなと思ったら、ジェラルドMワインバーグ氏の達成度って書いてあって、そうした意外だって、なるほどみたいな。
こんな小ぼけのためにガリカとグラフを載せるのかと思って。
いやなんか、ユーモアあるなと思いながら。
そうですね。トレードオフの話を読みながら、結局じゃあ何がトレードオフになってるんだっけっていうことを、どうやって見つければいいんだろうなとか。
ここの情報が完全にわかるっていうことはなかなかないと思うので、そこの辺をどうしたらいいんだろうねっていう気持ちになりきながら読んでましたね。
そうですね。
だいたい159ページに実際やっぱそのトレードオフっていうのは、どういうふうなX軸とY軸がどういうふうな関係性になるのかって完全に知ることは不可能でしょうという話も一応書かれてはいたりしますね。
そのね、二項対立で比べてるけど他にもいろんな要素ってあるよねとかそういう話にね厳重してたり。そもそも定量化できるのかいとかね。
この辺がなんていうか、ある種設計をする上で、やっぱ何が大事で何を諦めていいんだっけとか、どういう関係性にあるかっていうことをちゃんと可視化して、それを必要であれば説得する相手にちゃんと見せるみたいな、いうようなことが必要だよねっていうことをちょっと読みながら思ってましたね。
よくインセプションデッキの中にトレードオフスライダーって出てくるじゃないですか。あれはなんか自分たちのマインドとしてどうトレードオフするかっていうことなんだけど、現実のトレードオフとはなんかちょっと違っちゃ違うんだよなみたいなことをちょっと連想したりもしましたね。
なんかあれは自分たちとしては何を大事にしたいかっていうことを明確にするっていうことであり、脳機を大事にしたら品質が絶対下がるっていう関係にあるかどうかっていうのは多分そのチームによりけりだよなとか、これとこれがどういうふうに関連しているのかっていうことはなんかあんまり明確にされてないような気がするなっていうのをちょっと思ったりしました。
インセプションデッキって脳機の品質をいじっていいんですか?
いじっていいっていうか、たぶん自分たちがどういう、例えばじゃあ何を持ったらリリースできるのかみたいなことになった時に何が固定で何が変えられる条件なのかとかいうことを話しているのかなって思ってたけど、
例えば期限は変えられないけどスコープは諦められるとか、スコープを落ちなくても出しましょう。
アザエル侍的には諦めていいのスコープだけだったんだなと思って今。
してるかっていうのはチームの状況にもよるし。
そうですよね。というか主体的に選べるものってそんなに多いんかいみたいな。残像するしないくらいしかあんまりないし。
それすらもそこまで無制限なものじゃないからだいぶ制約が厳しいものであるんで、なんかあるんですかねーって感じしますけどね。
でも逆に言うとトレードオフのこの部の話はあんまりこう、なんていうかこれはめちゃくちゃ鋭い視点だなーとかこういう説明の仕方は確かにいいなーみたいな。
新しいわけはそんなにちょっと少なかった気もしますね。
バグ報告の哲学
そうですね。まあそうだよねっていうトレードってそういうもんだよねっていう話はありましたね。
よく言われてるというか昔から言われてて、それが今でもほとんど形を変えないで出てきてる話が多かったなーという感じがするので、そうすると必然的に見覚えのある話感が出ちゃう。
そうですね。
近所さんがメモしてくれてるやつ触れたいなーって思いながら、トランプゲームのバグ報告の話があって、あれ何に載ってましたっけっていうか。
あれ何に載ってましたっけ?
あれでもワインバグのソフトウェア文化を作るシリーズの1個目で品質の話でトランプゲームにバグがあったんだけど十分楽しんだ。で修正されはしなかったけどでもそれでいいんだみたいな話だったっけって思いながら。
なんかめちゃくちゃやり込んでるトランプゲームだかカードゲームだかのコンピューターゲームでめちゃくちゃやり込んだが故になんか怪しいことというかバグだよねという感じのものを目撃して、
で確か会社にレポートした気がしてるんですけど、ただじゃあその修正バージョン配布しますとか新しくプログラム作り直して交換しますっていう風な対応にはならなかったけど、
めちゃくちゃニッチな本人自分しか知らないようなバグを直したところで別に売上中に固着がめっちゃ増えるわけでもないし、
で自分自身もすでに十分楽しめてるゲームだからそこに対してじゃあ例えばお金を払うぐらいそのバグを直してほしいですかとかこのバグがあることによって損した気分になってるんですかって言われると別にそうではない。
だからバグってるからまあ良くはないかもしれないが本当に価値を損ねているのかって言われるとそうでもないんじゃないか的な話を、
ワインバーグでしたっけ、ではどこかワインバーグがしてたどっちだっけっていうメモを僕が残してますね。
で多分それはワインバーグのソフトウェア文化を作るシリーズの最初に品質の話をしている中で出てきたはずって思いながら、
だからあそこと読みながらこことあそこが繋がってるんだみたいなことをちょっと読みながら自分はちょっと思って、あ面白って思ってましたね。
これがなんかそのゲームですよね、違う気がするんだよな。
まあちょっとなんかトランプゲームの話をされたから少しなんか誰かもトランプの話してたなって思い出してちょっとメモ入れたって感じです。
誰か知ってたら。
でも今持ってきたら、クリベッジの話をしてますね。なのでこれですね。
それか。
ワインバーグのシステム試行法ですね。
なるほど。
ワインバーグクリベッジでググっても出てこない。
ちょっと日本語だともしかしたらあまりない?
クリベッジのバグの話など他の本にも出てくる話がシステム作りの人間学にも出てきたよねっていう所不要というか感想を書いてる人もいますね。
設計の人間学
ワインバーグ好きなんだなって。
まあ得意なんでしょうね。
まあでも全然1ミリも放出じゃないので。
気になってしまった。
そんなところですかねトレードオフは。
そうすると本編最終的な感じ設計家の心ですね。
設計家の心は1ページ見くるといきなり設計は人の業で書かれてて素晴らしいですね。
すごいですね。
設計家の心は2人とも同じところをマークしていることに今気づいたんですけど、やっぱりここかなっていう気がして。
194ページ。
そこに設計は唯一絶対を追い求める画ごとき視野の狭さに読されてはならない。
またそれは実世界はこういうものだと決めつけてしまう画ごとき視野の狭さにも読されてはならないっていう風なことが書かれていて、
やっぱそうだよねっていうことと自分はすごくこれはワインバーグだなっていう感じをすごく感じました。
僕はそのちょっと後に出てくる一部も好きで、物事のありのままの姿はこうであったら嬉しいねと絶えず戦い続けるのだっていうのもちょっと好きですね。
いやーこれもペルソナとかでもよくやるやつだし、システム作るときに。
戦い続けてるってことは多分どっちかを一方的に打ちのめすっていうよりかお互いに傷つきながらゼーハーゼーハーやってくんだろうなー的なそんなイメージがありますね。
こうだろうって設計してやった結果いや思ったのとちょっと違ったなつって。
ありのままこう見てこう作ったんだけどこうだったら嬉しいねっていう風に揺れ動いてたんだなとか。
ここではこれが来ることないっしょって言ってたらやっぱりそのパターンありますねみたいなとかよくあるからな本当に。
そうですね。
これとこれって全然違う概念なのにどうやって同じ概念として扱うみたいな気持ちになって、うーんみたいな気持ちになることはすごいありますね。
そこら辺をやっていくんすもんね設計ないし合成化としては。
そうですね。よく観察してそこにある共通点を見つけたりとかしながらこう抽象度高いものを考えてということはこういう概念だなみたいなことを見つけていくっていうのが必要ですからね。
いやー疲れますよねそれはねって思いますよね。
いやー難しいですからね頭使うししかも今までやってきた経験のもとにもちろんその物事に対応していくけど同じ問題は基本的に来ないですからね。
一回作っちゃったらそれってもう一回作るってことはあんまりないですからね。
でなんかこの部の一番最初の方に書いてあるんですけど、設計は根本的な人の精神活動であるっていうふうに書かれてて、
一人一人の頭の中にしか正解がないんですよね。でその共通解がないってことは正解じゃないじゃんっていう話でもあると思ってて。
でプラスさっき言ってた明日になったら正解が自分の中でも変わってるじゃんぐらい曖昧な。そういう意味でも非常にソフトなものだと思うので。
なんか疲れるなっていうかそう変わらないんですけど、どうしていくんだろうなーっていう気もしつつ、
逆に言うと一人一人がその美しさを追い求めるみたいなところで言うとすごいロマンを感じる活動ではあるなーとか気もしつつ。
そうですね。いや最強のデータモデリングするんやーつって。
まだやっぱそういうマンなのかな。
だから十分妥協できるものがいいものなんでしょうね。
それはそうですね。なんか悪くない方を選ぶっていうことが大事かなっていうのはなんか最近考えたりとか。
悪い方がいいんじゃないんですか。
そうですね。悪い方がいいっていうエッセイとかもありましたけど。
なんかやっぱベストこうあるべきだよねっていうものってやっぱなかなか難しい。
何をもってそれはベストって言うんだっけっていう全ての反論に答えないといけないってなった時にやっぱちょっとそれは難しいなって思って。
こうあったら嫌だよねみたいな設計みたいなアンチパターンとかもそうですけど言うのは多分なんか上げやすいというかと思うんで。
そうではないものってアンチパターンも含めいろんなパターンを含めその中でなんかより良いもの。
これが絶対の解なんだってよりはなんかこれじゃないよねこれじゃないよねこれじゃないよね。
残った選択肢の中で良さそうなのって言うとこれかなみたいな。
なんか結局設計ってそういうものでいろんな妥協の杖のものなのかなっていうのは思ったりは最近知ってますね。
そうですね。
どうしてもやっぱ議論が白熱するじゃないですか。もっといいのがあるんじゃないかとか。
他の人と話して議論が白熱する分にはまあだいたい声出してるだけ疲れるからいいんですけど一人だと割とそれが長引いちゃうじゃないですか。
そうですねそうですね。
そっちの方が悪ではっていう気が最近よくしてますけどね。
フィードバックがないとこれでいいのかなって無限に悩んでるのか考えてるのかよくわかんなくなってしまうというか。
もちろんAIと壁打ちをしながらとかいろいろありますけど。
言ってることすぐ帰るで同じぐらい。
そうそう。
AIによって批判的なフィードバックが来るようになって良かったっていう場合もあるっちゃありますからね。
構造化設計の批判
多分アーキテクトとかがこれがいいんじゃないって言うとみんなじゃあそれにしますって言って終わるみたいな話っていうのはあったりするんで。
でもそうですねそこのこれをやれば完璧だこれこうまで揃えれば間違いないみたいな話のアンチテージというかなんかそれの代表格として構造化設計構造化プログラミングっていうのをなんかちょっと冒頭でやり玉にあげてたのかなとか今になってちらっと思いましたね。
だから別に構造化設計が構造プログラミングって言ってるかまあ嫌いなわけではないんだろうけどそれをすごいもてはやして調子的にあがめたて持っている奴らはそれさえあればすべての設計が完璧になるみたいな話をしていがちだからなわけねえだろ的な本で。
2の言葉を入れてください現代にも通じますみたいな気持ちになっちゃうな。
そうですね構造プログラミングに対してもしもっと批判的であったら多分ここがもっとダメなんだっていうことを言うだろうからなんかそれよりはもうちょいこう抽象度が高いレベルの話をしてるよなっていう気がしますもんね。
確かあんまりテクニカルな批判ではないですもんね。
最近の和系もんの音楽はよくわからないって言ってるのと、別に老害的なスタンスっていうよりか抽象的にそれ自体っていうよりかそれを取り巻く感想についてちょっと別のアングルから見てるかなっていう感じですかね。
そうですねそうですね。
お、設計家の心。
こんなところですかね。
ジョン・フォン・ノイマンがちらほらっと言及されてますね。
いましたね。
ノイマンとノーマンはマジで混乱すんじゃないですか。
まあ2人とも偉大な人であることは間違いないですからね。
嘘なんですよ。
微妙にコンピューターの畑で両方とも名前を見るっていうのもまた厄介ですね。
そうですね。
別にデザインの人なんだけどなノーマンとかは。
でも割とコンピューター畑の人たちが読んでたりするからな。
聞きがちですからね。
あとはエピローグか、エピローグはなんかちょっといつもと違うテストでしたね。
そうですね。なんかいつもはもっとサクッと終わるところが普通に1個エッセイがあるっていう。
いつもの7割増しぐらいで裏を出して。
一番最後の方に要はバランスみたいな話がこの本でちょっとあちこちに出てきたりとかしましたけど。
自分の思考においてバランスよくするにはどうしたらいいんだろうかみたいな話をしてて。
一番いいのはもっともっと学び続けましょうと。
学び続けると頭が重くなったりとか、頭デッカチになるんじゃないかみたいなことを思うかもしれないけど、
実際頭は物を詰め込むほど軽くなりますよっていうようなことを言ってて。
なるほどって本当に軽くなるのかどうかはちょっとよく分からないなと思いながら。
でもやっぱり学び続けないと多分バランスをうまく取れなくなっていくっていうのはそうだよなっていうふうに思って、
いい締めくくりだなって思ったりしましたね。
AIとプログラミングの未来
確かにな。なんかプログラマーは経験積むとコード書くのが遅くなるみたいに言うじゃないですか。
はいはい。
いろいろな設計判断とかをいちいち自分の中でシミュレーションというか持ち出すようになってしまい、その結果手を動かしてない時間が増えるとか。
なんだったら旗から見てたらちょっと思考に霧がかかってる状態なのかなぐらいに見えるみたいな話があったり。
それって知識とか経験が積み重なったことによって視野が広がってるとも言えるかもしれないなっていう状態だと思うんですけど、
最近はどうなんですかね。ジュニアからAIバンバンと使ってると変わってくるのかな。
みんなAIにいろいろ試して楽しいってなって目的を完成することを忘れてるみたいな、そんな可能性があるなって若干思ったりとか。
でもあとあれか、AIに書かせたコードを全部真に受けて中を見なければいくらでもコードを書くの早くなるか。
そうですね。
いいとか悪いとか言ってるんじゃないんですよ。
そうそう。やっぱりベテランになるほどもしかしたらそのAI使って出てくるものが遅くなる可能性は高いかもしれないですね。
だから結局出てきたものをコードレビューしてこれでいいんだっけとかいうようなことにより時間を割くようになってしまうのかな。
逆もしっかりあるか、指示出しが上手にベテランの方ができるみたいな、いろんなことを考慮できるから。
そうですね。そうと言われてますね。
結局何を言ったらいいかわからんってなるっちゃなるもんな、AIに何をお願いしたらいいか。
そうだよな。要求が上手くなってるが要求水準も上がってるってなると。それを果たして、まあまあどっちにしろやっていくしかないんでやるんですが。
そうそう。どうせこれはもう元に戻らないので、仲良くやっていこうじゃないかってAIと言うことしかできないですからね。
まあでもそんな感じですか、一冊通し。付録が分厚みに充実はしてますが。
まあこんなところですかね。
なんかどうですか、一冊通して改めてちょっと言っておきたいこととか。どういう人にお勧めとかは聞かなくていいか、今回は。
まあもう一回今喋りながら振り返ると、最初の方とかやっぱ読み方を間違えてたからもうちょい気を抜いて読むべきだったなとか。
俺が上手く読めてないのかなみたいな。上手く読めてなかったんですけど、そもそも読み方のモードが違ったなみたいなことはあったんで。
チューニングが大事ですね。
なのでちょっとどっかでその辺をもう一回チューニング合わせて読み返したいなーっていうのは思ったりとか。
全部読み返す本ではないと思うし、大きなエッセイとかここだけ読み返すとか全然できる本だから、なんかもうちょっとそういうことをできるといいなーっていう感じはありましたね。
なんか僕もその後半の部分がすごい似たような感想だなーっていう気はしていて、なんていうか、よそよそでこれ少し時間置いてからとか、改めて落ち着きながら読んでみたいなっていうのはやっぱりちらほらってすごい面白いんですよね、話として。
で、ただなんかあくまでエッセイ集だなーって思ったのは、なんか全体を通して全部読み返そうっていう気にはあんまりなってないなとは正直思ってて。
ハッカーと画家とかキノコとかって、いい本なので全部読み直したいのはそれはそれはあるかもしれないですけど、どっちかっていうと、今もう一回あの文章を読んだらどう感じるんだろうとか、あの名文をもう一回読んでみたいなとか。
なんかそういうモードで採読する系の、なんか本当にエッセイ集っていう感じがこの本からも感じられるなーと思っていて、っていうところですかね。で、設計の哲学とか、設計家の心とかかな、っていうのはちょっともう一回じっくり読んでみたいというか、自分なりにどうにか咀嚼してみたいなーとか思ったりしますね。
そうですよね。なんか、現代的な視点でもう一回捉え直しながら咀嚼して、もうちょっとこうじゃないかじゃないかっていうのは言えるような気がするから、もうちょっと、もうちょっとどうにかしたいなってなりますよね。
それこそね、さっき言ってた構造プログラミングとかの話は出てくるし、章のタイトルにも使われているぐらいのキーワードにはなってますけど、まあなんかこれ2の○○に置き換えても全然読めるはずなんで。
そうですね。
っていうようなところですかね。まあまあまあ面白かったって言うとすげー流したみたいになるけど、要所要所でちゃんと面白かったのは間違いないと思うんで、全部読むのはなかなか骨が折れるかもしれない。
そうですね。
はい。っていうようなところでじゃあおしまいにしてきますか。
はい。
はい。今週も放送を聞きいただきありがとうございます。ではまた次回。さよなら。
さよなら。