رابرت سی. مارتین در فصل دوم کتاب "The Clean Coder"، به یکی از مهمترین جنبههای حرفهایگری در توسعه نرمافزار میپردازد: توانایی "نه" گفتن. او توضیح میدهد که چرا و چگونه برنامهنویسان باید بتوانند در موقعیتهای خاصی به درخواستهای غیرمنطقی یا غیرممکن پاسخ منفی بدهند. این فصل بر اهمیت مرزبندیهای حرفهای و احترام به محدودیتهای زمانی و کیفی در توسعه نرمافزار تأکید دارد.
تجربهی یک پروژه فاجعهبار
مارتین فصل را با بازگویی تجربهای از دوران جوانیاش آغاز میکند، زمانی که به همراه دو دوست ۱۹ سالهاش در اوایل دهه ۷۰ میلادی، روی یک سیستم حسابداری بلادرنگ برای اتحادیه تیمسترها در شیکاگو کار میکردند. این پروژه توسط شرکتی به نام ASC انجام میشد و فشار زیادی برای تحویل به موقع وجود داشت. رئیس شرکت، فرانک، یک سرهنگ بازنشسته نیروی هوایی بود که مدیریت سختگیرانهای داشت و هیچ اعتراضی را نمیپذیرفت. مارتین و همکارانش تحت فشار زیادی بودند و مجبور بودند ۶۰ تا ۸۰ ساعت در هفته کار کنند تا به تاریخ مشخص شده برسند.با این حال، یک هفته قبل از تاریخ تعیین شده برای راهاندازی، سیستم باگهای بسیاری داشت و مشکلات زیادی باقی مانده بود. اما به دلیل فشار فرانک و رئیس مستقیم مارتین، آنها مجبور شدند سیستم را به موقع راهاندازی کنند. نتیجه یک فاجعه کامل بود. سیستم با اتصال ترمینالهای با سرعت پایین ۳۰۰-باد( baud )به طور مداوم دچار قفل شدن میشد و خروجی چاپگرها در وسط فرآیند چاپ متوقف میشد. کاربران مجبور بودند چندین بار سیستم را راهاندازی مجدد کنند و دادهها را از ابتدا وارد کنند. پس از نیم روز ناکارآمدی، دفتر اتحادیه تیمسترها به مارتین و تیمش دستور داد که سیستم را خاموش کنند و تا زمانی که کار نمیکند، آن را دوباره روشن نکنند.
درسهایی از شکست: اهمیت "نه" گفتن
مارتین از این تجربه به عنوان یک درس کلیدی یاد میکند: در برابر فشارهای غیرمنطقی برای تحویل به موقع نرمافزار، "نه" گفتن یک مهارت ضروری است. او توضیح میدهد که اگرچه "نه" گفتن ممکن است در لحظه سخت باشد و به نظر برسد که به موفقیت کوتاهمدت آسیب میزند، اما در بلندمدت بهترین گزینه برای حفظ کیفیت و اعتبار است.
برنامهنویسان باید مرزهایی را تعیین کنند که در آن قادر به ارائه کیفیت مطلوب باشند. آنها باید بدانند که به دلیل قبول درخواستهای غیرمنطقی، ممکن است نه تنها به اعتبار حرفهای خود، بلکه به شرکت و مشتریان نیز آسیب برسانند.
چرا "نه" گفتن مهم است؟
چگونه به طور مؤثر "نه" بگوییم؟
مارتین تأکید میکند که "نه" گفتن به معنای رد کردن بیپرده و ناگهانی نیست. او پیشنهاد میکند که برنامهنویسان باید راههای مؤثر و حرفهای برای "نه" گفتن بیاموزند. این شامل تکنیکهای زیر میشود:
نتیجهگیری: "نه" گفتن به معنای حرفهایگری است
فصل دوم کتاب "The Clean Coder" به وضوح نشان میدهد که "نه" گفتن یکی از مهارتهای اساسی برای هر توسعهدهنده نرمافزار حرفهای است. توانایی "نه" گفتن به طور مؤثر و حرفهای، نشاندهنده احترام به خود، تیم و مشتریان است. این مهارت به شما کمک میکند که کیفیت کار خود را حفظ کنید، انتظارات را به درستی مدیریت کنید و از خستگی و فرسودگی جلوگیری کنید. در نهایت، "نه" گفتن میتواند به شما کمک کند که در حرفه خود موفقتر و مطمئنتر عمل کنید.