چرا polyrepo برای شرکتهای بزرگ انتخاب بدیه
خلاصهٔ کاملتر
نویسنده تو این مقاله میگه polyrepo (یعنی نگه داشتن هر سیستم تو ریپازیتوری جدای خودش) تو دنیای open source منطقیه، چون هر پروژه صاحب، حاکمیت و ریتم انتشار خودشو داره و مرز جدا همون استقلال رو حفظ میکنه. ولی داخل یه شرکت، سیستمهای مرتبط دارن به یه هدف تجاری مشترک خدمت میکنن و مسئله برعکس میشه: اینجا باید تغییر دادن نرمافزارهای وابسته به هم ارزون باشه، نه ترکیب کردن نرمافزارهای مستقل.
استدلال اصلی مقاله اقتصادیه. نویسنده با اشاره به حرف Ronald Coase میگه شرکتها وجود دارن چون هماهنگی داخلی از مبادله تو بازار ارزونتر تموم میشه. polyrepo همون مبادلهٔ بازاری رو داخل شرکت بازتولید میکنه: هر تغییری که از مرز یه ریپو رد بشه، باید مالک درستش رو پیدا کنی، از چند بکلاگ مسیر باز کنی و برای هر مصرفکننده دوباره یکپارچهسازی و اعتبارسنجی کنی.
عددها هم تو مقاله هست. تو استک نرمافزاری یه شرکت بزرگ، کار طی ۹۰ روز روی حدود ۳۰۰۰ ریپازیتوری پخش شده بود؛ همون شرکت یه ریپوی مشترک هم داره که تو شلوغترین ماه اخیرش حدود ۱۴۰۰ تغییر کاملشده رو جمع کرده، بیشتر از هفت برابر اوج ۲۰۲۳. نویسنده یه مدل تخمینی میده: هفتهای ۳۰ دقیقه کار نگهداری برای هر ریپو در ۴۸ هفته یعنی ۷۲ هزار ساعت، حدود ۴۰ سال-نفر یا ۲.۵ میلیون پوند.
بخش جالب مقاله دربارهٔ AIه. نویسنده میگه AI پیادهسازی رو ارزون میکنه، ولی اگه گلوگاه بعد از کدنویسی باشه، فقط کار بیشتری وارد صف میشه و زمان رسیدن به دست مشتری کم نمیشه. به گزارش DORA 2025 هم اشاره میکنه که AI رو تقویتکنندهٔ همون سازمانی میدونه که ازش استفاده میکنه. monorepo به آدم و به AI کانتکست سورس و وابستگیهای مرتبط رو میده تا یه تغییر گسترده رو ببره جلو، در حالی که مالکها هنوز اختیار review و پروداکشن رو دارن.
در عمل، نویسنده پیشنهاد میکنه کنترلهای اجباری یه بار تو زیرساخت تحویل پیاده بشن نه اینکه برای هزاران ریپو کمپین پذیرش راه بیفته. البته تأکید میکنه این کار مجانی نیست: استاندارد ساخت و تست، مالکیت روشن، دسترسی ریزدانه و زیرساخت build و test مقیاسپذیر میخواد. حرف آخرش اینه که ساختن مرز ریپو ارزونه ولی برداشتنش گرون، پس فقط مرزی رو نگه دار که استقلالش به هزینهٔ دائمیش میارزه.
نکات کلیدی:
- کار یه شرکت بزرگ طی ۹۰ روز روی حدود ۳۰۰۰ ریپازیتوری پخش شده بود
- ریپوی مشترک همون شرکت تو شلوغترین ماه اخیر حدود ۱۴۰۰ تغییر کاملشده داشته، بیش از هفت برابر اوج ۲۰۲۳
- مدل تخمینی مقاله: هفتهای ۳۰ دقیقه برای هر ریپو در ۴۸ هفته یعنی ۷۲ هزار ساعت یا حدود ۲.۵ میلیون پوند
- ریپوهای دستنخورده جزو پرریسکترینها هستن؛ آپدیت امنیتی نمیگیرن و مالکیت و مسیر build شون میپوسه
- monorepo مرز سورس رو برمیداره ولی مالکیت، کنترل و استقلال دیپلوی محصولات میتونه جدا بمونه




