تغییر دادن ابزارها ارزون شده، نگهداشتنشون نه
خلاصهٔ کاملتر
نویسنده تو این پست به مقالهٔ Devtools must be open source از David Crawshaw جواب میده. کراوشا استدلال کرده که ایجنتهای کدنویسی باعث میشن هر کسی سورس ابزارهای روزمرهش رو دستکاری کنه و پچهاش رو خودکار روی نسخههای جدید ریبیس کنه. نویسنده میگه این تصویر جذابه، ولی اون جملهٔ کراوشا که «هزینهٔ اولیه و هزینهٔ جاری شخصیسازی نرمافزار از بین رفته» فقط نیمهٔ اولش درسته.
مثالی که میزنه یه دیفویوئر متنبازه بدون API افزونه: از ایجنت میخوای یه «حالت تمرکز» بهش اضافه کنه که ایمپورتها و فایلهای تولیدشده رو جمع کنه. اولش عالی کار میکنه. بعد آپاستریم قابلیت تشخیص جابهجایی توابع رو اضافه میکنه و حالا معلوم نیست حالت تمرکز باید با تابعی که هم جابهجا شده هم کمی ویرایش، چی کار کنه. ریبیس خودکار کامپایل رو درست میکنه، ولی این تصمیم رو نه.
نکتهٔ اصلی نویسنده همینه: توجه. اگه بگی «بذار ایجنت تصمیم بگیره»، اختیارت رو واگذار کردی؛ اگه نه، باید وقت بذاری. یه ابزار شاید بهندرت خراب شه، ولی وقتی همهٔ ابزارهات فورک شخصی دارن، احتمال اینکه یکیشون درست سر بزنگاه بشکنه بالا میره. تو تیمها بدتره: نویسنده میگه تو یه شرکت بزرگ دیگه، تیمهای مختلف Perfetto رو جدا جدا فورک کردن و حالا یکی داره تلاش میکنه دوباره یکیشون کنه.
ابزار مشترک بخشی از زبان مشترک آدمهاست؛ آموزش دادن، بازتولید یه بررسی و مطمئن شدن از اینکه همه دارن راجع به یه چیز حرف میزنن، همه به یه مبنای مشترک وابستهن. به گفتهٔ نویسنده چیدمان و فیلتر شخصی بیضرره، ولی وقتی شخصیسازی معنی وضعیت و اولویت و گردش کار رو عوض کنه، دردسر شروع میشه.
از نظر اون نباید آپاستریم قبل و بعد از AI رو یکی گرفت؛ نگهدارندهها هم همین ایجنتها رو دارن و بهتره وقتی که آزاد شده رو صرف قابلیتهای عمومی، کلیدهای تنظیمات و نقاط توسعه کنن — چون کار آپاستریم به همه سود میده، ولی فورک شخصی فقط به خودت. جایگزین محتملتر هم همون «اقتصاد بلوکهای ساختمانی» میچل هشیموتوئه: هستهٔ باکیفیت بهعلاوهٔ قطعات مستند، که ایجنتها روش چیز بسازن.
نکات کلیدی:
- هزینهٔ تغییر نرمافزار با ایجنتها کم شده، ولی هزینهٔ تصمیمگیری و نگهداری نه
- ریبیس خودکار پچها فقط کانفلیکتها رو حل میکنه، نه سؤالهای طراحی رو
- هر فورک شخصی یه نقطهٔ شکست تازهست؛ روی چند ابزار، ریسک ضرب میشه
- ابزار مشترک زبان مشترک تیمه؛ فورکهای تیمی معنیها رو از هم دور میکنن
- مسیر محتملتر: هستهٔ قوی با نقاط توسعهٔ مشخص و بلوکهای ساختمانی، نه فورک همگانی




