تبليغاتX
نوشته های کاوه یزدی نژاد

نوشته های کاوه یزدی نژاد

این وبلاگ حاوی مطالبی است که براساس مطالعات و یا تجربیات خودم به آنها دست پیدا کرده ام

overdose - خارج از ظرفیت ....

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

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

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

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

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

۳- اضطرار :وفتیکه پروژه های زیادی روی دست باقیمانده و چندتااز آنها هم در آستانه لغو شدن هستند
               و شرکت هم در آستانه یک زیان بزرگ، آن وقت دیگر چاره ای جز این عمل وجود ندارد ...

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

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

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

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

● برای OverDose آماده باشید:
مواردی که در زیر ذکر میشود شرایطی است که اگر در تمام طول مدت کاری شما پیش نیامده باشد حتما در طول مدت OverDose برای شما پیش خواهد آمد ، پس اگر قصد OverDose  دارید آماده باشید:

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

چند نکته متفرقه  در مورد  OverDose

●زمان همیشه از چیزی که فکر میکنید سریعتر میگذرد و کارها از چیزی که فکر میکند کندتر انجام میشود.  نتیجه : چون مقداری کتابخانه و کد آماده دارید فکر نکنید که میتوانید با آنها زمان را بخرید...

●یک برنامه نویس خوب میتواند همزمان فقط برروی دو پروژه کارکند، فقط برنامه نویسهای احمق همزمان برروی سه پروژه کارمیکنند ...

● کارهای برنامه نویسی را از سر بازنکنید وگرنه فردا مجبورید که دوبرابر امروز برنامه نویسی کنید .

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

 ● نوشتن یک پروژه OverDose بصورت گروهی همان و اشتباهات فراوان در تحلیل و یا نحوه کدنویسی همان، بنابراین قبل از شروع بکار همه برنامه نویسها را مجبور کنید که تمام جزئیات تحلیل نرم افزار را بخوانند و به آن مسلط شوند. 

 ● مهم نیست که در پایان یک شیفت کاری یک خط کد نوشته اید یا صد خط کد، تمام برنامه نویسهای پروژه باید در آخر وقت تمام کدهای نوشته شده را باهم کنترل کنند ، مطمئن باشید که خیلی چیزها نمایان خواهد شد .

● برای هرپروژه در طول روز مدت زمانی مشخصی وقت بگذارید و بیش از آن  کارنکنید ، کارکردن تا ساعت یک یا دو صبح برروی یک پروژه قابل تقدیر است ولی وقتیکه فردا صبح دیر از خواب بیدار شدید ، زمان مفید کارکردن برروی پروژه دیگری را از دست خواهید داد ... 

● به برنامه نویسهای تازه کار اعتماد نکنید ، برای یک یا دوماه ابتدای شروع پروژه همواره سعی کنید که کارهایشان را کنترل کنید و گاهگاه سری به کدهای نوشته شده شان بزنید.

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


 

+ نوشته شده در  دوشنبه بیست و هفتم خرداد 1387ساعت 15:58  توسط کاوه یزدی نژاد  | 

مطالب قدیمی‌تر