استانداردسازی کدی که هوش مصنوعی مینویسه
خلاصهٔ کاملتر
مقالهٔ IBM با یه آمار نگرانکننده شروع میکنه: ۵۵٪ از مدیران مهندسی نگرانن که تیمهاشون درک مشترکشون از نحوهٔ تکامل کدبیس رو از دست بدن، و ۳۹٪ هم نگران اینن که وقتی عاملهای هوش مصنوعی کد بیشتری مینویسن، بشه با اطمینان محصول رو منتشر کرد. به گفتهٔ نویسنده اینها فرض و گمانهزنی نیستن، واقعیت توسعهٔ نرمافزار تو سال ۲۰۲۶ ـن.
نویسنده تأکید میکنه که مشکل اصلی این نیست که AI کد بد تولید میکنه؛ مشکل اینه که بدون استانداردسازی، عامل هوش مصنوعی هر توسعهدهنده تصمیم متفاوتی میگیره. یکی برای تست از Jest استفاده میکنه اونیکی از Mocha؛ یکی الگوی مدیریت خطای تیم رو رعایت میکنه، اونیکی یه الگوی جدید از خودش درمیاره. کد کار میکنه، ولی کدبیس کمکم درککردن و نگهداریش سختتر میشه.
این ناسازگاری بهمرور سه جا خودشو نشون میده. اول «بدهی شناختی» (cognitive debt) که سریعتر جمع میشه، چون قبلاً برنامهنویسها موقع کدنوشتن شهود سیستمی و حس لبههای خطرناکو پیدا میکردن ولی وقتی عامل مینویسه اون درک شکل نمیگیره. دوم کیفیت ناهمگون میشه. و سوم آنبوردینگ آدم جدید تقریباً غیرممکن میشه، چون وقتی خود کد ناسازگاره، چیزی برای یادگرفتن ازش نمیمونه.
نویسنده میگه شکاف بزرگتر بین پذیرش سریع AI و کندی تغییرات سازمانیه: با اینکه ۴۸٪ کد الان توسط AI تولید میشه، تو نظرسنجی از ۲۱۹ مدیر مهندسی فقط ۱۹ سازمان تعریف نقشها رو رسماً عوض کردن، ۱۵ تا فرایند آنبوردینگ و ۳۲ تا نحوهٔ سنجش بهرهوری رو. اسم این وضعیت رو «بدهی نیت» (intent debt) میذاره: وقتی هدفها و محدودیتهایی که باید سیستم رو هدایت کنن، درست ثبت و نگهداری نمیشن.
راهحلی که مقاله جلو میذاره قانونهای سطحپروژه (project-level rules) ـه: یه سری دستور ماندگار که برخلاف پرامپتهای یکبارمصرف، کل عمر پروژه فعال میمونن و همون قراردادها و استانداردهایی که یه آدم رعایت میکنه رو به عامل AI هم میدن. این قانونها میتونن استانداردهای کدنویسی، الزامات مستندسازی، روشهای تست، فرایندهای گیت و قراردادهای مخصوص تیم رو مشخص کنن و عامل رو از یه دستیار عمومی به یه عضو تخصصی تیم تبدیل کنن.
به گفتهٔ نویسنده این قانونها یه سلسلهمراتب دارن: قانونهای سراسری (global) که روی همهٔ پروژهها اعمال میشن و برای استانداردهای پایه مثل امنیت و کتابخانههای مجازن، و قانونهای فضایکاری (workspace) که فقط تو همون پروژه اعمال میشن و کارهای خاص همون پروژه مثل فریمورک تست رو دستشون میگیرن. وقتی تضاد پیش بیاد، قانون فضایکاری بر قانون سراسری اولویت داره.
جمعبندی نویسنده اینه که با زیادترشدن سهم AI تو کد پروداکشن، تیمهای برنده اونهایی نیستن که بیشترین کد رو تولید میکنن، بلکه اونهاییان که بیشترین درک رو حفظ میکنن. این قانونها هم باید مثل مستندات زنده باشن نه آرتیفکت ثابت: مرتب بازبینی بشن، موارد قدیمی حذف و همهچیز تحت کنترل نسخه ثبت بشه.
نکات کلیدی:
- مشکل کد تولیدشده با AI بدبودنش نیست، نبود استاندارده که هر عامل رو به تصمیم متفاوت میکشونه.
- «قانونهای سطحپروژه» دستورهای ماندگاریَن که قراردادها و استانداردهای تیم رو به عامل AI منتقل میکنن.
- بدون این قانونها، «بدهی شناختی» و «بدهی نیت» با هر کامیت بیشتر جمع میشه.
- قانونها دو لایه دارن: سراسری برای استانداردهای پایه، فضایکاری برای نیازهای خاص پروژه؛ لایهٔ فضایکاری اولویت داره.
- قانونها باید مثل مستندات زنده و تحت کنترل نسخه مرتب نگهداری و بازبینی بشن.




