آموزش زبان انگلیسی (دورهٔ ۹۰ درسی) · درس ۶۵ از ۹۰

تخمین و ددلاین؛ «این چقدر طول می‌کشه؟» بدونِ دروغ و بدونِ جنگ

⚡ پاسخ کوتاه

سوالِ «چقدر طول می‌کشه؟» سه جوابِ حرفه‌ای دارد: بازه (two to three days), مفروضات (assuming the docs are ready), و گزینه‌های معاوضه (by Friday if we cut the export feature). فرمولِ گفتنِ «نه»: never بدونِ گزینه — "We can do that, if we push the migration to next sprint."

درس ۶۵ از ۹۰ — تخمین و ددلاین؛ «این چقدر طول می‌کشه؟» بدونِ دروغ و بدونِ جنگ

تخمین، جایی است که دو فرهنگ به هم می‌خورند: فرهنگِ «هرچیزی سریع انجام می‌شود» (فشارِ مدیر/بازار) و واقعیتِ مهندسی (کار، زمانِ خودش را می‌خواهد). برنامه‌نویسِ تازه‌وارد معمولاً یکی از دو خطا را می‌کند: زیرتخمین از خجالت، یا جوابِ «نمی‌دانم» خشک. مهندسِ حرفه‌ای هیچ‌کدام را نمی‌گوید — «بازه + مفروض + معاوضه» می‌گوید.

این درس، جمله‌های تخمین را با منطقِ پشتشان می‌دهد؛ نیمهٔ دومِ درس، مدیریتِ همان تخمین در طولِ sprint است: اعلامِ زودهنگامِ خطر، که تفاوتِ «ددلاین سوخت» و «ددلاین جابه‌جا شد» است.

قالبِ تخمین؛ بازه + مفروض + معاوضه

Ballpark: two to three days — assuming the payment API sandbox is ready and there are no surprises in the old data.حدوداً دو-سه روز — با فرضِ اینکه سندباکسِ API پرداخت آماده باشه و توی دیتای قدیمی چیزی عجیب نباشه.
Realistically, that's a week of work. If you need it by Friday, we'd have to cut the admin dashboard from this release.واقع‌بینانه یه هفته کاره. اگه تا جمعه لازمش دارید، باید داشبوردِ ادمین رو از این ریلیز حذف کنیم.

واژه‌های تخمین که باید راحت بگویی: ballpark (حدودِ کلی), rough estimate (تخمینِ خشن), a couple of days (دو-سه روز), a week-ish (یه هفته‌ی حدودی), timebox (سقفِ وقت: "Let's timebox it to two days and see how far we get"), ideal vs elapsed time (زمانِ خالصِ کار vs زمانِ تقویمی با جلسه‌ها). و سه‌نقطه‌ایِ کلاسیک: "Best case two days, most likely three, worst case five if the vendor API misbehaves." — همین یک جمله، تخمینِ حرفه‌ایِ کامل است.

موقعیت جوابِ حرفه‌ای
سوالِ سریعِ راهرو "Ballpark, three days — let me sanity-check after standup."
جلسهٔ planning "I'd say five points. Unknown: the legacy schema — I'll spike it first."
فشارِ مدیر برای تاریخِ زود "We can hit Friday if we drop the export. Otherwise Tuesday is realistic."
کارِ واقعاً ناشناخته "I can't estimate blind — give me a half-day spike and I'll come back with a number."

نه گفتن به اسکوپ؛ هنرِ معاوضه

هر «بله» به کارِ جدید، یک «نه» به کارِ دیگری است — و جملهٔ حرفه‌ای همین را شفاف می‌کند: "Sure, we can add batch import. That pushes the bugfix release by three days — which one wins?" (می‌تونیم ایمپورتِ گروهی اضافه کنیم. این ریلیزِ فیکس‌ها رو سه روز عقب می‌ندازه — کدومش برنده باشه؟) قالب‌های معاوضه: «…if we push X to next sprint» · «…if someone else takes the support tickets» · «…with a smaller first version — v1 without reports». و مخالفِ مقدس: قولِ «می‌سازمش خیلی سریع، شب کار می‌کشم» — زیرِ هر ددلاینِ جادویی، یک خطای تخمین است که بعداً صورت‌حساب می‌دهد؛ حرفه‌ای‌ها به‌جای شب‌کاریِ قهرمانانه، معاوضهٔ شفاف می‌دهند.

مدیریتِ تخمین؛ اعلامِ خطرِ زودهنگام

تخمین، تازه آغازِ ماجراست؛ پایانِ حرفه‌ای‌اش، اعلامِ به‌موقعِ انحراف است — نه در ضرب‌الاجل، در اولین نشانه: "Heads-up: the migration is slower than estimated. I'm 60% through — realistically I need one more day. Do we push the demo or cut the scope?" (خبر: مایگریشن از تخمین کندتره. ۶۰٪ جلو اومدم — واقعاً یه روز دیگه می‌خوام. دمو رو عقب بندازیم یا اسکوپ رو کم؟) سه واژهٔ نجاتِ این مکالمه: heads-up (هشدارِ مؤدبانه), at risk (در خطر: "The release is at risk"), slip (جابه‌جا شدن: "The date might slip by a day"). و قانونِ فرهنگِ سالم: خبرِ بدِ زودهنگام، امتیاز است؛ خبرِ بدِ آخرین لحظه، شکستِ مشترک.

The ticket looked like a two, it's behaving like an eight. I've split out the scraping part — new estimate: two days for the core, one for scraping.تیکت دوتایی به نظر می‌رسید، هشتایی رفت. بخشِ اسکرپ رو جدا کردم — تخمینِ جدید: دو روز برای هسته، یک روز برای اسکرپ.

گرامرِ عمیق‌تر: قالب‌های عددیِ تخمین

تخمین، زبانِ بازه و شرط است: two to three days (دو تا سه روز), a week, give or take (یه هفته، مثلاً — give or take یعنی ±), assuming X (با فرضِ X), unless X (مگر اینکه X). برای ابهامِ صادقانه: "I can't give you a real number blind — give me half a day." و برای بازنگری: "It's behaving like an eight, not a two." (هشتایی رفتار می‌کنه، دوتایی نیست). و جفت‌های اعلام: on track (طبقِ برنامه), at risk (در خطر), slipping (می‌خوره عقب) — سه‌تایی که همهٔ وضعیت‌های sprint را پوشش می‌دهند.

Ballpark: three days, give or take a day — assuming the vendor sandbox behaves. If the sandbox is flaky, all bets are off and I'll flag it within a day.حدوداً سه روز، مثلاً ± یک روز — با فرضِ اینکه سندباکسِ فروشنده آدم‌حرف باشه. اگه سندباکس بی‌ثبات بود، همه‌چیز قید می‌شه و ظرفِ یه روز خبر می‌دم.

گفتگو: اعلامِ خطرِ زودهنگام

You: Heads-up — the migration is at risk. I'm 60% through, but the legacy data is dirtier than we sampled. — PM: How dirty?تو: خبر — مایگریشن در خطره. ۶۰٪ جلو اومدم، ولی دیتای قدیمی کثیف‌تر از نمونه‌ایه که دیدیم. — PM: چقدر کثیف؟
You: Think "duplicate IDs with different casing." Realistically one more day, maybe two. — PM: The demo is Friday. Options?تو: چیزی مثل «شناسه‌های تکراری با حروفِ متفاوت». واقع‌بینانه یه روزِ دیگه، شاید دو. — PM: دمو جمعه‌ست. گزینه‌ها؟
You: Three: cut the historical import (demo works on fresh data), slip the demo to Monday, or I hero it overnight — which I don't recommend. My call is option one: the demo still lands, the import becomes its own ticket. — PM: Agreed — cut it. And thanks for flagging early, not Friday at five.تو: سه تا: حذفِ ایمپورتِ تاریخی (دمو با دیتای تازه کار می‌کنه)، جابه‌جاییِ دمو به دوشنبه، یا من شب‌قهرمانش کنم — که توصیه نمی‌کنم. پیشنهادِ من اولیه: دمو میمونه، ایمپورت تیکتِ جدا می‌شه. — PM: موافقم — حذفش. و ممنون که زود خبر دادی، نه جمعه ساعتِ پنج.

اشتباه‌های رایجِ فارسی‌زبان‌ها در همین درس

این بخش را با یک قرارداد بخوان: هر ❌ یعنی «مغزِ فارسی‌زبانت این را می‌سازد و طبیعی است»، و هر ✅ یعنی «این همان چیزی است که گیرندهٔ انگلیسی‌زبان می‌شنود». خطاها اثرِ مستقیمِ ترجمهٔ ذهنیِ فارسی به انگلیسی‌اند؛ با هر جفت بلند تکرار کن تا شکلِ درست در گوشت نشست کند.

❌ This work needs two weeks time.❌ «دو هفته زمان می‌برد» با needs + time ترجمه می‌شود؛ فعلِ استانداردِ تخمین take است — it takes two weeks — و about / give or take بازه را صادقانه می‌کند. تخمینِ بی‌بازه، قولِ قایم‌شده است.
✅ This will take about two weeks, give or take.✅ شکل درست را دو بار بلند بگو؛ حالا یک بار در یک جملهٔ خودت.
❌ I will finish it until Friday.❌ جفتِ مرگبارِ until/by: فارسیِ «تا جمعه» هر دو را یکی ترجمه می‌کند؛ ددلاین with by — until ادامهٔ رخداد می‌خواهد (the flaky sandbox stays until Friday). این یکی، مرزِ تخمینِ حرفه‌ای و آماتور است.
✅ I'll finish it by Friday.✅ شکل درست را دو بار بلند بگو؛ حالا یک بار در یک جملهٔ خودت.
❌ Everything is going good, no problem.❌ «کارها خوب پیش می‌رود» going good می‌سازد — قید well است نه good؛ و no problem مستقیم از «مشکلی نیست». وضعیتِ اسپرینت اسم دارد: on track / at risk / slipping — نام‌گذاریِ وضعیت، نصفِ مدیریتِ پروژه است.
✅ We're on track — no risks so far.✅ شکل درست را دو بار بلند بگو؛ حالا یک بار در یک جملهٔ خودت.

تمرین‌های این درس — چهار قدم، بی‌عجله

تخمین، زبانِ بازه و شرط است؛ چهار تمرین را با جمله‌های کامل و شمرده بلند بگو، بعد پاسخ‌ها را باز کن.

  1. بازه بده: مایگریشن — حدوداً سه روز، ± یک روز، با فرضِ خوب‌رفتاریِ سندباکس.
  2. اصلاح کن و توضیح بده: «I will finish the migration until Friday.»
  3. سه برچسبِ وضعیت را در سه جملهٔ جدا بیاور: on track / at risk / slipping — با استوری‌های واقعی از ذهنت.
  4. خبرِ بد را با سه گزینه بده: دیتای قدیمی از نمونه کثیف‌تر است، دمو جمعه — قالبِ درس.

پاسخ تمرین‌ها — اول خودت جواب بده، بعد باز کن

پاسخ تمرین ۱
"Ballpark: three days, give or take a day — assuming the vendor sandbox behaves." بازه + give or take + assuming؛ سه لایهٔ تخمینِ قابلِ دفاع.
پاسخ تمرین ۲
"I'll finish the migration by Friday." ددلاین با by است؛ until یعنی «تا وقتی که جمعه بیاید ادامه دارد» — برای وضعیت‌هاست، نه برای لحظهٔ تحویل.
پاسخ تمرین ۳
نمونه: "The retry tests are on track. The SSO timeout is at risk — I'm 60% through and the data is dirtier than we sampled. The demo is slipping — I'd move it to Monday." سه برچسب، سه وضعیتِ واقعی؛ نام‌گذاری، مسیرِ گفتگو را با مدیر هموار می‌کند.
پاسخ تمرین ۴
نمونه: "Heads-up: the import is at risk. Three options — cut the historical import, slip the demo to Monday, or I hero it overnight, which I don't recommend. My call: option one." خبرِ بد + سه گزینه + یک پیشنهاد؛ مدیر با گزینه حرف می‌زند، با فاجعه فقط فریاد.

چالشِ امروز

🎯 برای کاری که همین حالا درگیرش هستی یک تخمینِ سه‌لایه بنویس (بازه + فرض + ریسک) و برای همکارت در چت بفرست — امروز، در خطِ واقعی.

نکات مکالمهٔ واقعی که کتاب‌ها کم می‌گویند

  • سه‌گزینه بده، نه گلوله — هر خبرِ بد با سه گزینه و یک پیشنهاد — مدیر با گزینه حرف می‌زند؛ با فاجعه فقط فریاد.
  • heads-up روزِ دوم، نه روزِ آخر — شاخصِ ۶۰٪/خطر را که دیدی اعلام کن — دیرتر گفتن، تمامِ گزینه‌ها را می‌کُشد.
  • give or take و realistically — دو قید را در جمله‌های تخمین بکار — صداقتِ بازه، اعتمادِ عدد را می‌سازد.
🔑 جمع‌بندی این درس

تخمین = بازه (two to three days) + مفروض (assuming…) + معاوضه (if we cut X). واژه‌ها: ballpark, timebox, at risk, slip, spike. هر بلهِ جدید را با «کدوم می‌بره؟» بپیچ و انحراف را با heads-up در اولین نشانه اعلام کن. حرفه‌ای‌ها قولِ شب‌کاری نمی‌دهند؛ گزینه می‌دهند.

پرسش‌های رایج

مدیر عدد را «بالا» می‌داند و پایین می‌کِشد!
سه حرکت: ۱) عدد را با تجزیه بفروش: "Two days isn't a feeling — one for the API, one for the UI and tests. Where would you cut?" (دو روز حس نیست — یکی برای API یکی برای UI و تست. کجاش رو کم کنیم؟) ۲) تاریخِ جایگزینِ صادقانه بده: "If it must be Thursday, I'd rather ship without the export." ۳) اگر باز پایین کشید، سوابق را داوطلبانه ثبت کن: "Let's log this estimate — I'll report the actuals in retro so we both calibrate." — این جمله، گفتگو را از چانه‌زنی به داده می‌برد؛ و بعد از دو-سه retro، عددِ تو با احترام خوانده می‌شود.
تخمینم همیشه کم است — چطور اصلاح کنم؟
سه ضربِدرِ دو قانونِ شناخته‌شده: تخمینِ اولت را **دو برابر** کن (کارِ واقعی همیشه «یک چیزِ دیگر» هم دارد), بعد **ضریبِ تقویم** (جلسه‌ها، context switch): سه روزِ کاریِ خالص = چهار-پنج روزِ واقعی. و تمرینِ data-driven: دو هفته، تخمین و واقعیتت را کنارِ هم بنویس؛ ضریبِ شخصیِ تو (مثلاً «من همیشه ۱/۷ برابر تخمینم طول می‌کشم») را پیدا کن و در planning همان را اعلام کن: "My historical factor is about 1.7 — so I'm putting five days." — مهندسِ آماریِ تخمین، موردِ احترامِ همهٔ مدیرهاست.

انگلیسی را همین امروز در گوشی‌ات تمرین کن

واژه‌های این درس را هر جا که دیدی با منوی «ذخیره در آپ‌ورد» به فلش‌کارت‌هایت اضافه کن؛ الگوریتم مرور فاصله‌دار سرِ موعد یادآوری‌شان می‌کند، تلفظ‌شان را می‌شنوی و در مکالمهٔ هوش مصنوعی همان‌جا که لازم است استفاده‌شان می‌کنی.