هزینه های تولید نرم افزار با نگاه برنامه نویس محور ( نگاه دوم )

حمیدرضا عباسی

کارشناس نرم افزار
هزینه هایی که حساب نمی شوند!

برنامه نویس ها موتور تولید علم و صنعت نرم افزار هستند، آن ها را گاهی با آدم فضایی ها مقایسه می کنند، از نظر خیلی از آدم های دور و بر آن ها عجیب ترین دانشمند اطراف شان هستند. اما واقعاً برنامه نویس ها چه خصوصیاتی دارند؟

برنامه نویس ها هر چه هستند، آدم فضایی یا یک مهندس نرم افزار، قطعاً انسان های باهوشی هستند، باهوش و سخت کوش. آنها شخصیت های با پشتکاری هستند که دائماً در حال حل مسئله هستند تا یک موضوع چالشی را به اتمام برسانند، هر روز مطالعه می کنند و دوران دانشگاه شان تمامی ندارد. برنامه نویس ها آرام، سخت کوش، شب بیدار، فراموش کار و هدفمند هستند!

وقتی بوهم از کار مهندسی بر اساس نفر-ماه صحبت می کند، منظورش دقیقاً ۱۵۲ ساعت به ازای هر نفر در ماه است. اما آیا واقعاً این اتفاق می افتند؟ در ایران که می توانیم به جرأت بگوییم خیر، در واقع باید بگوییم اگر برنامه نویسی ۱۵۲ ساعت در ماه کار کند، تعجب برانگیز است، شخصیتی که در ایران از یک برنامه نویس برای کارفرما تداعی شده است، چیزی بالغ بر ۱۲ x 6 می باشد، یعنی شش روز هفته، روزی ۱۲ ساعت! یعنی تقریباً ۳۱۲ ساعت در ماه! و شاید تعجب تان بیشتر شود اگر بگوییم بیشتر جاهای دنیا نیز این اتفاق می افتد، مثلاً یک نمونه معروف داریم که در سال ۲۰۰۴ برنامه نویسان شرکت الکترونیک آرتز به دلیل کار زیاد از حد، از کارفرما شکایت قانونی کرده بودند.

 

واقعیت این است که در توسعه یک نرم افزار، هزینه هایی هست که در برآورد به حساب نمی آیند، منظور هزینه های درمانی و آسیب هایی هست که به برنامه نویس ها در اثر فرآیند تولید وارد می شود. در هیچ جای دنیا برای این هزینه ها، به هیچ برنامه نویسی حقوق پرداخت نمی شود، اما مشکل ایران این است که برنامه نویس ها اصلاً حقوق مهندسی دریافت نمی کنند، و این تخریب آسیب ها بیشتر می کند.

با هم مروری به معضلات سلامتی برنامه نویس ها داشته باشیم، در ابتدا از مشکلات جسمی شروع می کنیم:

چاقی: تقریباً ۸۰ درصد از برنامه نویس ها، دچار مشکلات چاقی هستند، حتی آن هایی که دارای جثه ریز و کوچک هستند هم چاقی شکم را تجربه می کنند، این به دلیل سبک زندگی بدون تحرک و استرس بالا می باشد. چاقی می تواند منجر به معضلات قلبی و یا دیابت شود.

چاقی منجر به حملات قلبی: تحقیقات ده ساله یک کلینیک به اسم مایو که درباره قلب و عروق بالینی است، نشان داده است که خطر بروز حمله قلبی در افراد چاق ۳.۶ سال زودتر از افراد معمولی است، این خطر در رابطه با برنامه نویسان بیشتر و در حدود ۸.۲ سال می باشد.

مشکلات چشمی: برنامه نویس ها به طور متوسط روزانه ۸ تا ۱۰ ساعت (شاید در ایران خوشبینانه باشد) به مانیتور خیره میشوند، این امر می تواند منجر به بروز مشکلات حاد چشمی از جمله خشکی چشم و یا پارگی مویرگ های چشمی شود، بعضی از برنامه نویس ها حتی نیاز به جراحی پیدا می کنند و پس از جراحی پایان زندگی حرفه ای در انتظار آن هاست!

مشکلات شانه، دست و مچ دست یا سندرم تونل کوبیتال: فعالیت های بالقوه با دست، همانند کار برنامه نویسی باعث بروز مشکلات جدی در بازو، گردن و شانه می شود، عضلات قفسه سینه را باریک می کند و عضلات پشت را کشیده و ضعیف می کند.

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

 

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

خطر مرگ در اثر عدم تحرک: بر اساس تحقیقاتی که در مارس ۲۰۱۲ منتشر شد، کسانی که بیشتر پشت میز می نشینند، سن زندگی خود را بیشتر کاهش می دهند، در ۴۰ درصد از افراد بالای ۴۵ سال که روزانه بالای ۱۱ ساعت را روی صندلی سپری می کنند، این خطر حدود ۴ سال هم زودتر بروز پیدا می کند. بعضی از برنامه نویسان تقریباً ۱۲ ساعت یا بیشتر از روز را روی صندلی سپری می کنند!

کمر درد: که تأثیر مستقیم زیاد پشت میز نشستن و عدم ورزش می باشد.

عوارض در اثر کم خوابی: عوارض در اثر کم خوابی می تواند شامل افزایش ریسک ابتلاء به دیابت، چاقی، فشار خون بالا و سایر عوامل مضر برای سلامتی باشد.

سندرم تونل کارپ: عصب میانی در ناحیه مچ دست از زیر بافت همبندی مچ دست و از روی استخوانهای مچ عبور می‌کنند، اگر به هر دلیلی این فضا تنگ شده باشد به این عصب فشار وارد شده و اختلالات حسی و حرکتی در انگشتان دست بروز می‌کند که به این بیماری سندرم کارپال تونل گفته می‌شود.

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

در این میان بعضی بیماری ها هم هستند که به دلیل استرس بالا ظهور می کنند و یا بعضی هم به دلیل تأثیر مخرب تمدن می باشند که مشهور ترین آن ها عبارتند از:

آلرژی / فشار خون / اعتیاد به الکل / ترمبوز وریدهای عمقی

مواردی که در بالا اشاره شد، برخی از مشکلات جسمی است که برنامه نویس ها به طور گسترده با آن ها مواجه هستند، اما این ها تنها یک روی سکه است، روی دیگر سکه مشکلات روحی و روانی آن هاست که به مراتب آسیب های جدی تری وارد می کنند.

افسردگی: برنامه نویس ها به سه دلیل در معرض ابتلاء به افسردگی هستند:

▪ استرس بالای کاری

▪ به دلیل محوری بودن شغل (تحقیقات نشان داده که حرفه ای های هر شغل در معرض افسردگی قرار می گیرند، در ادامه نیز یکی از همین موارد یعنی سندرم ایمپاستر را توضیح خواهیم داد.)

▪ کار انفرادی، که این مورد در رابطه با برنامه نویسانی هست که تنها کار می کنند یا به عبارتی Freelancer هستند.

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

سندرم خستگی مزمن: این سندرم همانطور که از نام آن پیداست به خستگی عمومی بدن اطلاق می گردد که به مدت طولانی ادامه داشته باشد، به طوری که به مرور توان عمومی فرد را کاهش می دهد، علت اینکه این مورد را در مشکلات جسمی ذکر نکردیم، این بود که این سندرم بیشتر در اثر مشکلات افسردگی در برنامه نویسان ظهور پیدا می کند و در واقع از عوارض مشکل فوق می باشد، ناگفته نماند که مصرف زیاد کافئین در برنامه نویس ها نیز به این مشکل بیشتر دامن می زند.

از دست دادن اعتماد به نفس: این مشکل در برنامه نویس هایی که به صورت انفرادی کار می کنند بیشتر بروز پیدا می کند، اما شیوع آن در برنامه نویس های تیمی هم زیاد است، دلایل آن را نیز می توان کار انفرادی، احساس بی ارزشی و بی لیاقتی (که حالت خاص آن در برنامه نویس ها را در بخش سندرم ایمپاستر توضیح می دهیم.)، انکار موفقیت های گذشته (که این هم در سندرم ایمپاستر بحث می شود.)، شکایت فراوان از دردهای جسمانی و دلایل پرشمار دیگر دانست.

سندرم ایمپاستر یا خود فریبی و سندرم برنامه نویسان در لحظه: در واقع این دو سندرم از بزرگترین مشکلات برنامه نویس ها می باشند و شیوع آن در حدود ۱۰۰ درصد در برنامه نویسان مجرب می باشد. اما در این رابطه شرح موضوع را به ترجمه مقاله ای از ژولی بورت که در سایت businessinsider.com منتشر شده می سپاریم:

] این روزها برنامه نویسی شغل فوق العاده ای برای تأمین درآمد شده است، همچنین این شغل دارای ضریب امنیت شغلی بالا نیز می باشد. اما شاید جالب باشد که بدانید برنامه نویسی به شکل خارق العاده ای سلامت ذهنی شما را به مخاطره خواهد انداخت.

می خواهیم به دو موضوع اشاره کنیم که برنامه نویسان را تا دیوانگی پیش می برد.

موضوع اول به نام سندرم خود فریبکاری شناخته شده است. این سندرم زمانی ظهور پیدا می کند که شما کاملاً مطمئن شده اید که تمامی برنامه نویسانی که با شما کار می کنند، از شما باهوش تر، ماهر تر و دارای توانایی ذاتی بهتر هستند و شما در ترس از این مسئله به سر می برید که دیگران فکر کنند که شما یک آدم جعلی با توانایی ها و مهارت های ساختگی هستید و دستاوردهای شما را کوچک بشمارند.

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

اگرچه این سندرم در زنان بیشتر دیده است اما بسیاری از مردان نیز از آن در امان نیستند.

این افراد از خود انتظاراتی بالاتر از استاندارند دارند در حالی که این شرایط را برای دیگران قائل نیستند. سندرم فریبکاری غالباً در شغل های کارشناسی بیشتر دیده می شود و نوشتن برنامه یکی از آن شغل هاست، با این حال باید شغل برنامه نویسی متن باز را در معرض خطر بیشتری دانست، زیرا نتیجه کار این برنامه نویسان توسط دیگران قابل رویت و کنکاش هست و آنها از خطر خلق یک کد بهتر توسط دیگران هراس دارند.

سندرم خود فریبی پا را از آنچه هست فراتر می گذارد و دام دیگری را برای برنامه نویسان پهن می کند که در نتیجه آن فرد احساس می کند که برای به اندازه کافی خوب بودن، باید بیشتر و سخت تر کار کند! و به این ترتیب قربانی ساعات کار خود را تقریباً به تمام ساعات بیداری افزایش می دهد و به شمار پروژه های باز خود نیز می افزاید و در نهایت به برنامه نویسی تبدیل می شود که هر لحظه در خدمت برنامه است.

«سندرم برنامه نویس در لحظه» اولین بار توسط یک پست در سایت دریت نام گذاری و جنجالی شد، چیزی که بیان می کند برنامه نویسان در لحظه تنها در کدها زندگی می کنند. یک نویسنده ردیت با نام کاربری «big_al11» می گوید:

« برنامه نویسان در لحظه عاشق برنامه نویسی هستند، آنها عاشق این هستند که تمامی زمان های خود را در حال کد زدن سپری کنند. آنها هرگز به این کار به عنوان یک شغل نگاه نمی کنند، یک برنامه نویس هرگز یک برنامه نویس در لحظه نخواهد بود اگر نتواند برای ۶۰ تا ۸۰ ساعت کار در هفته آن هم با هدف غیر مالی و به منظور تفریح داوطلب شود. این نفوذ فرهنگ صنعتی است! یک برنامه نویس واقعی باید کمترین پارامتر های برنامه نویس های در لحظه را داشته باشد، برای او شب ها نیز روز کاری لقهستند و آخر هفته ها تنها تاریخی برای سپری شدن می باشند، خب همه این ها یعنی برنامه نویسان در لحظه برای فرسودگی شغلی آماده می شوند!»

از سندرم خودفریبی تا برنامه نویسان در لحظه

برای برنامه نویسان کار کردن با ساعات زیاد و تا سرحد مرگ چیز جدید نیست، اما این که آن ها این کار را برای لذت خود انجام می دهند، شاید مطلب تازه ای باشد.

برای مثال حدود یک دهه قبل کتابی به نام «پیاده روی مرگ» توانست بهترین فروش را به خود اختصاص بدهد. این کتاب بررسی کرده بود که چه طور ساعات کاری زیاد و دیوانه وار برنامه نویسان منجر به مشکلات جدی در سلامتی می شود و در نهایت برنامه ریزی و مدیریت ضعیف پروژه را مقصر دانسته بود.

در سال ۲۰۰۴ برنامه نویس ها از شرکت الکترونیک آرتز که یک شرکت تولید بازی های کامپیوتری است در رابطه با ساعات اضافه کار شکایت کردند و توانستند ۱۵ میلیون دلار خسارت دریافت کنند.

چند سال بعد و در سال ۲۰۱۰، ماجرای یک خانم که با یک برنامه نویس که در شرکت تولید بازی های کامپیوتری راک استار شاغل بود،  ازدواج کرده بود، جنجالی شد. این ماجرا توضیح می داد که چطور شرکت انتظار کار روزی ۱۲ ساعت در ۶ روز از هفته را داشته و سلامتی همسر این زن و دیگر برنامه نویسان را به خطر انداخته است.

در سال ۲۰۱۱ یک پست در سایت StackExchange که شبکه اجتماعی متخصصان کامپیوتر است، نقل محافل شد، این پست را آقایی ایجاد کرده بود و در آن گفته بود: «من برنامه ای برای زمان بیکاری ام ندارم، آیا من توسعه دهنده به درد نخوری هستم؟»

در نهایت، می خواهیم به این نتیجه برسیم که شما اگر در ساعات نرمال کاری، کدنویسی کنید، می توانید برنامه نویس خوبی باشید، اما این نکته هم واقعیت دارد که برنامه نویسان بزرگ، از ساعات مرده خود نیز برای برنامه نویسی استفاده میکنند. خب نتیجه گیری گیج کننده ای بود!

بیشتر همیشه بهتر نیست!

این ادعای سوال برانگیزی می باشد، اما دانشجویان دانشگاه استندفورد آمریکا در مورد آن تحقیق کرده اند. آن ها بررسی کردند که چه مقدار زمانی برای برنامه نویسی می تواند سازنده باشد؟ و در نتیجه ای جالب آن ها دریافتند که ساعات کاری زیاد می تواند بهره وری را کاهش دهد، آن ها دریافتند کیفیت کار برنامه نویسانی که در هفته ۶۰ ساعت کار میکنند کمتر از برنامه نویسانی است که در هفته ۴۰ ساعت کار می کنند.

البته شرایط فوق نمی تواند سندرم خودفریبی و برنامه نویس در لحظه را متوقف کند، در واقع داستان های واقعی غم انگیزی در این باره وجود دارد.

برای نمونه، سال گذشته یک برنامه نویس شرکتی به نام کنت پارکر در وبلاگ خود مطلبی تحت عنوان «می دانستم عاقبت کدنویسی دیوانگیست!»، منتشر کرد.

او درباره یکی از همکارانش که سخت کار می کرد و عاقبت دچار سقوط روانی شده بود، توضیح داده بود!

«او یکی از سخت کوش ترین کارمندانی بود که من در حوزه صنعت دیده بودم، اغلب پس از ساعت کاری نیز او را در حال کار بر روی پروژه می دیدیم، او معمولاً در زمان هایی که مدیرعامل، شخصی را برای انجام یک پروژه سریع در آخر هفته نیاز داشت حاضر بود، یکی از علایقش این بود که خودش را برای به اتمام رساندن یک پروژه تحت فشار بگذارد، اما بهره وری او زمانی که به موسسه روانی رفت، دیگر زیاد نبود! »

اخیراً یک مهندس نرم افزار به نام نیک فلوید شروع به نوشتن و صحبت کردن از مسئله ای کرده است که خود او آن را تحت عنوان «تعادل در زندگی خوره ها» می نامد، او پس از اینکه اعتراف کرده است که از سندروم خودفریبی رنج می برده است، به این نکته اشاره کرد که خوره ها از یافتن شغلی که دوست دارند خوشحال می شوند:

«شروع یک حرکت جدید، چالش برانگیز است، سخت و گاهی ترسناک نیز هست،  اما این ها هیچ وقت روی من اثر نداشته اند، قبل از شروع آن ، من برخی اعتقادات را پذیرفته بودم، مثل اینکه، کار همیشه کار است و ممکن خستگی در پیش داشته باشد و زندگی فرار از کارهای ناامید کننده است، اما من این اعتقاد را وارونه کردم،  زندگی عالی است زمانی که چیزی به نام کار راه جدیدی برای عشق ورزیدن می شود. »

از سوی دیگر نویسنده ردیت که بالاتر اشاره کردیم، به نکته درخور توجهی اشاره کرده است:

«من به شدت آرزو دارم که در جامعه ما سخت کار کردن ما تا سر حد مرگ، به عنوان یک فضیلت دیده نشود!»

همانطور که در این نگاه مشاهده کردیم، هزینه هایی وجود دارد که که به قلب های توسعه نرم افزار، یعنی برنامه نویس ها پرداخت نمی شود، اما این هزینه ها حداقل این مطلب را روشن می سازد که چرا یک برنامه نویس باید درآمد خوبی داشته باشد و اینکه چرا اگر درآمدش مناسب نیست باید حتماً شغلش را ترک کند و به یک شغل کم خطر تر و ساده تر بپردازد.

    فایل صوتی این مقاله را گوش دهید: