اصرار بی‌فایده بر کیفیت کد

جالب است که تعداد قابل توجهی از برنامه‌نویس‌ها روی مواردی اصرار می‌کنند که در عین مفید بودن به حال شرکت یا تیم متبوعشان، به خود آنها چندان مربوط نیست. تعدادی از این موارد عبارت هستند از:

۱- کیفیت کد (خوانایی، انجام unit test و…)
۲- بالا بودن امکان نگهداری کد برای افزایش قابلیت تغییر در آینده
۳- documentation صحیح و اصولی برای افزایش فهم کد توسط دیگران
۴- استفاده از ابزارهای Issue Tracking مثل Jira برای افزایش فهم کد توسط دیگران
۵- استفاده از ابزارهای ALM مثل سورس کنترل و Build اتوماتیک برای افزایش همکاری تیمی و افزایش کیفیت کار
۶- …

چرا مربوط نیست؟ چون این مدیر پروژه، مدیر عامل یا سهامدار شرکت است که باید نگران قابلیت‌های کیفی سرمایه‌اش یعنی سورس کد برنامه‌ها باشد نه شخص برنامه‌نویس. متاسفانه بعضی اوقات این روال برعکس است. برنامه‌نویس مجبور می‌شود اصرار زیادی بر استفاده از ابزارهایی مثل سورس کنترل یا نرم‌افزارهای Issue Tracking داشته باشد در حالی که خیلی از اوقات، مدیر عامل شرکت یا مدیر پروژه مقاومت زیادی در برابر تغییر از خودشان نشان می‌دهند. آن هم به دلیل که می‌ترسند تغییرات باعث تاخیر در روال جاری شرکت شوند. به عبارت دیگر منافع بلند مدت فدای منافع کوتاه مدتی مثل تحویل سریع‌تر پروژه به مشتری می‌گردد.