-
-
スピーカー 1
何がそんな大きく違うんだ。
スピーカー 2
一つは、なんだろうね、例えばですけど、どっから説明するのがわかりやすいかな。
例えばよくあるのが、一番イメージしやすいのだと、例えば共通ライブラリみたいなのがあるとするじゃないですか、便利。便利ライブラリみたいな。
うちの会社で、毎回税金の計算いろんなところに散らばっちゃったら、ちょっとまずいから。
スピーカー 1
同じロジックで。
スピーカー 2
やりたいよね。
スピーカー 1
やりたい。
スピーカー 2
そのための税金計算ライブラリを作ろうってするじゃないですか。
そうした時に、モノレポからいくか。
モノレポだったら、あるライブラリのディレクトリがあって、そこに税金のロジックが書かれてます。
そうすると、支払いサービス、近代はないけど、例えば経費生産サービスとか、そいつは別のディレクトリのやつを読みに行けばいいだけなんですよね、ライブラリを。
スピーカー 1
うん。
スピーカー 2
これ簡単じゃないですか。
これのいいところは、支払いサービスと経費生産のサービスで、こいつだけ古いロジックを捕まえてるみたいなことがない。
ただ2つとも同じディレクトリの見てるから。
スピーカー 1
同じ税金計算ライブラリを見てるから、そいつがアップデートされたら、みんな最新のロジックになる。
スピーカー 2
モノレポは常にこういうロジックが成り立つんですよ。
例えばよくCIって言う。
スピーカー 1
CIって聞いたことある。
スピーカー 2
これは継続して何かを回すやつなんですけど、例えばテスト。
スピーカー 1
テストだけに使う言葉じゃないんだ。
スピーカー 2
テストを回したり、コードの良くない部分を探したり、みたいなのをするやつをCIでセットアップするみたいな感じで言うんですけど、
CIはコンティニュアスインテグレーションかな。
ずっと継続して何かをするやつなんですよ。
だから新しいテストを増やしたいとか、新しいコードを検査して良くないものが曲げれ込んでないかテストしたいみたいなのをすると、
モノレポだとその一つのリポジトリに設定すればいいじゃないですか。
けどポリレポいっぱいあるバージョンだと、例えばそれが100個リポジトリがありますってなったら、
モノレポは1個そこに設定して100個ディレクトリ分見るようにすればいいんですけど、
ポリレポはそれぞれのリポジトリに1個ずつ入れていかないといけないんですよね。
全部入れたってなるじゃないですか。
でもこれこういう風に改善したいなって言って変えたとしたら、また100個分修正しないといけないんですよね。
けどモノレポの場合は1個変えたらそれが全部に行き渡る。
それがさっきはライブラリーもそうだったし、CRみたいな下地の部分もその一つ。
あとよくあるのがローカルの開発環境みたいなやつが、
ポリレポになってたらちょっとずつ起動方法が違って大変とか、
一つのコマンドで上手く立ち上がらないとか、
ちょっと流行から乗り遅れた立ち上げ方のやつがいるとかありますけど、
モノレポだったら全部一箇所で一元管理して面倒を見れる。
スピーカー 1
共通化しやすい。
スピーカー 2
そうですそうです。
なんでこのめちゃくちゃレバーが効きやすいんですよね。
1個改善したらそれがもう100サービス使ってるやつだったら100サービス全員にこのメリットが行き渡る。
スピーカー 1
めちゃいいじゃん。
スピーカー 1
じゃあなんかその、最近作られたサービスは基本モノレポであるみたいな。
スピーカー 2
もう完全に会社によりますね。
スピーカー 1
そうなんだ。
スピーカー 2
Googleのモノレポは今に始まったことじゃなくて、だいぶ前から。
そうで、モノレポがあんま流行ってなかった時もGoogleはモノレポっていうのはみんな知ってたから、
本当にそんなのいけるんですか?みたいな。
スピーカー 1
それはいけるんすか?は何でいけるんすか?って当時なってたんですか?
スピーカー 2
なんだろう、そのGoogleレベルのいろんなサービス、膨大な行動量で一つのリポジトリに閉じ込めるっていうのが結構。
スピーカー 1
半直感的だった。
スピーカー 2
そうそう。
スピーカー 1
へえ。
スピーカー 2
私も前職はモノレポじゃなかったんで。
スピーカー 1
そうなんだ。
スピーカー 2
今も大半の会社はポリレポだと思います。
スピーカー 1
そうなの?へえ。
それって例えばじゃあ今から本当に新しいサービス作りますってなった時にも、
そのモノかポリかは結構その人の思想によって決まるって。
スピーカー 2
そうですね。
スピーカー 1
そうなんだ。へえ。
あれ?自分さっきポリレポのいいとこ質問したけど、何でしたっけ?
その気遣いしなくていいみたいなことなんだったっけ?
スピーカー 2
なんかひねり出したっけ?なんかひねり出した気もするけど。
スピーカー 1
ちょっと忘れてた。
スピーカー 2
なんでポリレポのいいところは、さっきのモノレポのデメリットの逆で、
その一つのコードベースが途端に爆増するみたいなことがないから、
例えばCIに対していきなり線分かかることを考慮しなくていいんですよ。
自分のサービスしかないから。
スピーカー 1
なるほど。影響範囲小さく変更できるみたいな。
おばあさんはなんでモノレポ信者なんですか?
スピーカー 2
私なんか、普通にアプリケーション開発以外の、
人のローカル開発の何かが便利になったり、
共通のライブラリーみたいなところに手を入れることが多いんで、
モノレポの場合は、私がそれをやったら、
それを使ってみんなが勝手に知らないうちに便利になってるみたいなことになるんですけど、
ポリレポの場合は、意識してその設定を自分で入れたり、
バージョンを新しくしないと、その恩恵が手に入らないから、
すごい大変なんですよね。
スピーカー 1
その各レポジトリの管理者がアップデートしないと入らないみたいな。
なるほど。
スピーカー 2
なんかそのコントロールしやすいっちゃしやすいみたいな感じなのか。
スピーカー 1
知らぬところの変更とかはないって感じなのか。
スピーカー 2
そうですね。なんでそれが一つのポリレポのメリットでもあるしデメリットでもあるんですかね。
例えば共通ライブラリーが勝手にアップデートされてるから、
知らぬ間に壊れたみたいな。
こっちの新しいロジックがこっちのサービスだったら正しいんだけど、
スピーカー 2
こっちからしたらおかしいみたいな感じになってるときに、
ライブラリーが勝手にアップデートしたから壊れたみたいな感じになっちゃうけど、
こっちは自分で意思持ってアップデートしない、
ポリレポの場合は意思持ってアップデートしない限り普通はならない。
で、自分で上げない限りは勝手に壊れないっていう。
スピーカー 1
なるほど。
スピーカー 1
怒られちゃって。勉強になりました。
これで、うちはモノレポなんですよって自信を持って。
スピーカー 2
なんだっけ、オフジョベットみたいな。
モノレポでCIをいい感じにリフとって、パースして、差分をテストしてるんですよって。
スピーカー 1
逆に知らないやつそうだ。
オフジョベットしたっていうのをカットしてみた。
スピーカー 2
確かにね、エンジニアの会話聞いてたら、これと同じようなオフジョベットしたテフをマフガットしてリュットみたいなのに聞こえるかもしれないですね。
スピーカー 1
そうね。でも何回か出てくる単語は、単語ではなくて。
スピーカー 2
言語学習の処方。
スピーカー 1
本当そうですよ。さっきのシェルとかもそうです。
スピーカー 2
聞いたことあるみたいな。
スピーカー 1
聞いたことはある。
スピーカー 2
パス聞いたことある。
スピーカー 1
聞いたことはある。でも何かは自分では説明できない。
スピーカー 2
なるほどね。
スピーカー 1
そんなばっかりです。
でも何かそれこそ自分で開発するようになったから、ちょっと中身を見ることができるようになったのはかなり、理解の上でも進捗。
スピーカー 2
しかも今もどんだけ聞いても分かんないやついるしね。
スピーカー 1
そうですね。それで分かるのは2割ぐらいかな。
何か分かった気になるけど、実際どうか分かんないっていうね。
なんで?
スピーカー 2
メチルダにも分かるように説明してって言ってもダメなの?
スピーカー 1
そうね。
スピーカー 2
メチルダって誰ですか?
スピーカー 1
LINEが難しいです。小学生にも分かるように説明してとかもプロンプトであるんですけど、
それ言うとマジで変な悟り話ばっかりになって何も分からんみたいな感じになる。
スピーカー 2
プロダクトマネージャーにも分かるように説明しての方が普通にいいんじゃない?
なんかITの基礎は分かってる人への説明、エンジニアリングだけ分からない。
スピーカー 1
だからさっきのポート番号とかもね、そういうやつです。
スピーカー 2
何回も聞くけどよく分からない。
スピーカー 1
なんかネットワークの何かみたいな。
スピーカー 2
でも知らずに過ごせるな、それが幸せ。
スピーカー 1
ポート番号の沼がある。
なのでちょっともし聞いたことあるけどこれ分かんないなーみたいな、
IT用語とか。
スピーカー 2
確かに。
スピーカー 1
これ解説してほしいっていうのがあれば、
うぱさんが解説してくれるので、
メチルダが分かりませんって言って。
スピーカー 2
怖っ、それどうするんですか?漁師コンピューターとか来たら。
スピーカー 1
さすがにリスナーの人はね、空気読んでくれると思うから。
スピーカー 2
子供だから分かりませんね。
スピーカー 1
そういうのはね、よりコンピューター科学ラジオに送ってもらって、
スピーカー 2
こっちには実務寄りの、実務で出てくる細かいやつ。
漁師コンピューターの人が怒っちゃう。
スピーカー 1
ちょっと偉大、偉大というか壮大だから漁師コンピューターとかは。
もうちょっと生活に寄り添った。
スピーカー 2
確かに。
スピーカー 1
生活に寄り添ったITの単語を解説してもらいましょう。
はい、そんな感じで。
感想・質問・フィードバックは、
Xのハッシュタグマヂカル.fm全部小文字、または概要欄のダイレフォーまでお寄せください。
Spotifyのベルマークを押すと更新通知が届きますので、そちらもお願いします。
ありがとうございます。
スピーカー 2
ありがとうございました。