
این کد به درد نمیخوره باید از اول بنویسیم!
بدهی فنی داره نمیذارم مرج بشه!
این نسخه MVP هست و بعدا از اول مینویسیم!
و … هزاران جمله دردناک آشنای دیگه که گاهی شک میکنیم واقعا درستن یا نه؟ و اکثرا هم عامل دعوای #بیزینس و #فنی میشه!
در کتاب “The Pragmatic Programmer” نوشته آندرو هانت و دیوید توماس نوشته شده:
“#Technical_debt is not inherently bad. It’s a conscious choice that we make to achieve a goal. The #mess, on the other hand, is often the result of neglect and poor practices.”
یعنی بدهی فنی الزاما هم بد نیست، #بدهی_فنی میتونه یک انتخاب آگاهانه باشه که به شما اجازه میده تا سریعتر وارد #بازار بشید ولی کاملا اسمش روشه! بدهی! شما باید یه روز پرداختش کنی و گاهی چِک میدی و گاهی قسطی پرداختش میکنی.
من با پرداخت قسطیِ بدهیها، بیشتر موافقم.
اما تو همین متن میخونیم که واااااااااای از #mess ! به نظرم بهترین ترجمه براش شلختگی کده.
بدهی فنی یه سری ویژگی داره که شلختگی نداره:
-- آگاهانه و استراتژیکه
-- قابل اندازه گیری و در نتیجه قابل مدیریته
-- هدف و تاریخ سر رسید داره! (هر بدهی ایی یه تاریخ سر رسید داره! چیزی که بهش در دنیای #نرم_افزار دقت نمیشه)
ولی شلختگی این ویژگیها رو نداره
احتمالا زیاد این غُر غُر رو از همکارهای من شنیدین که "این کد باید #ریفکتور بشه!" و به عنوان یه #مدیر بعضی وقتها پیش خودتون میگین: این ریفکتورها کی تموم میشه؟ مگه همین چند وقت پیش ریفکتور نکرده بود؟ آقا اصلا کسی اسم ریفکتور رو آورد آویزون میشه و …. 🙂
علتش میدونین چیه؟
اول اینکه hashtag#برنامه_نویس ها بیشتر از اینکه کد بنویسن مجبورن کد بخونن (کد خودشون یا همکارشون)
و دوم۲ یه قانون اساسی و بنیادی توی برنامهنویسیه: خوندن کد از نوشتن کد سختتره.” - جوئل اسپولسکی
نتیجه اش چی میشه؟ -> انجام بیشترِ کارِ سخت تر!
و اگه حواسمون نباشه به تفاوت بدهی آگاهانه و شلختگی ناآگاهانه میافتیم تو لوپ ریفکتور و باگ
در مورد تفاوت این ۲تا و بحث بازپرداخت قسطی بدهیها خیلی حرفها دارم که کم کم مینویسم
این شروع این داستان بود ....
نظر شما چیه؟