فرق ago و before و for؛ زمان رو چطور بگیم؟
فرق ago و before و for را با یک Anchor Triangle ساده یاد بگیر؛ بفهم چه وقت از الان حساب میکنی، چه وقت از یک اتفاق دیگر و چه وقت فقط مدت زمان را میگویی.
اگر فاصله رو از الان حساب میکنی → ago؛ اگر چیزی رو نسبت به یک زمان یا اتفاق دیگه میسنجی → before؛ اگر فقط طول مدت رو میگی → for.
«دو سال قبل» در فارسی هنوز جواب کامل نیست. قبل از چی؟ قبل از الان → two years ago. قبل از interview → two years before. برای دو سال → for two years. خودِ «دو سال» عوض نشده؛ anchor عوض شده.
از الان داری عقب میری؟ ago
Cambridge در Ago توضیح میده که ago زمان رو از حال به عقب اندازه میگیره، بعد از عبارت زمانی میاد و در کاربرد معمولِ completed past با past simple میشینه.
Original practice example
I moved here two years ago.
anchor «الان»ـه. داری میگی این move چه فاصلهای با امروز داره. ago هم بعد از two years میاد.
نقل مکان، خرید، سفر، آشنایی، شروع کار، اتفاقهای تمامشده در گذشته.
معنی: «دو سال پیش اومدم اینجا.»
سه اتفاق واقعی بگو: ... days/months/years ago.
این order رو اتوماتیک کن:
two years ago
نه:
ago two years
ago توی این ساختار صندلی عقب رو دوست داره 😄
یه trap مهم: present perfect + ago
برای completed event با زمانِ مشخصِ ago، learner rule امن اینه که past simple استفاده کنی:
I moved here two years ago.
نه:
I have moved here two years ago.
anchor یک اتفاق یا زمان دیگهست؟ before
وقتی reference point «الان» نیست و داری چیزی رو نسبت به یک event یا time دیگه عقبتر میذاری، before وارد میشه.
Original practice example
I had seen her two days before the interview.
anchor «interview»ـه، نه امروز. داری میگی دیدنِ اون شخص دو روز زودتر از اون event اتفاق افتاده.
مصاحبه، جلسه، پرواز، سفر، deadline، داستانگویی دربارهٔ چند event گذشته.
معنی: «دو روز قبل از مصاحبه دیده بودمش.»
یک past event انتخاب کن و بگو چیزی چند روز/هفته قبل از اون اتفاق افتاده.
مثلاً:
- We booked the hotel a week before the trip.
- I had met him years before.
نکته: before خودش به این معنی نیست که حتماً باید past perfect داشته باشی. tense رو کل sentence و timeline تعیین میکنه.
داری فقط طول زمان رو میگی؟ for
British Council در How long، for رو برای گفتن مدت زمان استفاده میکنه: how long something lasted, lasts or has lasted.
Original practice example
I lived there for two years.
اینجا عدد فاصله از now یا event دیگه نیست؛ طول کل stayـه.
زندگیکردن، کارکردن، درسخواندن، صبرکردن، اقامت، سفر.
معنی: «دو سال اونجا زندگی کردم.»
سه duration واقعی بگو: for two hours / for six months / for three years.
for فقط برای present perfect نیست:
- I waited for two hours. — past
- I've lived here for two years. — continuing to now
- We'll stay for three days. — future
jobِ for اینجاست: duration.
همون عدد، سه anchor متفاوت
Original practice example
I moved three years ago. / I had met him three years before. / I lived there for three years.
عدد توی هر سه sentence همونه؛ چیزی که عوض میشه anchorـه: فاصله از now، فاصله از یک event دیگه، یا طول مدت.
timeline شخصی، رزومه، تعریف سفر، داستانگویی، توضیح سابقه.
سه sentence با «سه سال»، ولی سه job زمانی متفاوت.
یک عدد مثل two weeks انتخاب کن و سه version بساز: ago / before / for.
این مهمترین نقطهٔ صفحهست: grammar رو از روی خودِ number انتخاب نکن؛ از روی reference point انتخاب کن.
دو قانون نجاتبخش برای جای کلمه و tense
time phrase + ago
five minutes ago
three weeks ago
ago + completed past → past simple بهعنوان anchor امن
She called me an hour ago.
before → relative to another point
We arrived before the meeting.
for → answers “how long?”
We talked for an hour.
meaning اول، tense دوم. اگر anchor رو اشتباه بگیری، tense درست هم sentence رو نجات نمیده.
چهار صحنهٔ واقعی
نقل مکان
A: When did you move here?
B: About two years ago.
مصاحبه
A: When did you meet Sara?
B: A few days before the interview.
دورهٔ زبان
A: How long did you study English there?
B: For three years.
انتظار
A: How long did you wait?
B: For almost two hours.
کلینیک اشتباه: anchor کجاست؟
I came here ago two years.
Repair
طبقهبندی: غلط برای order استاندارد.
Listener interpretation: منظور «دو سال پیش» قابلفهمه.
Learner intent: فاصله از الان.
Natural alternative: I came here two years ago.
Context note: در این pattern، ago بعد از time expression میاد.
I have moved here two years ago.
Repair
طبقهبندی: غلط برای intended completed-past meaning در standard learner pattern.
Listener interpretation: زمانِ حرکت روشنه، ولی tense با ago جور درنمیاد.
Learner intent: «دو سال پیش اومدم اینجا.»
Natural alternative: I moved here two years ago.
Context note: اگر میخوای استمرار از دو سال پیش تا الان رو بگی، ساختار دیگهای لازم داری؛ این صفحه ownerِ اون درس کامل نیست.
I studied English ago three years.
Repair
طبقهبندی: برای intended duration هم word و هم order اشتباهه.
Listener interpretation: معلوم نیست منظورت «سه سال پیش»ه یا «برای سه سال».
Learner intent: اگر منظور طول دورهست: «سه سال انگلیسی خوندم.»
Natural alternative: I studied English for three years.
Context note: اگر منظورت شروع یا وقوع در سه سال پیشه، جملهٔ دیگری با ago میسازی.
I lived there before two years.
Meaning check
طبقهبندی: برای intended common meanings غیرطبیعی/نامشخصه.
Listener interpretation: anchor روشن نیست؛ «دو سال پیش» یا «برای دو سال» یا «دو سال قبل از چیزی»؟
Learner intent: باید اول مشخص بشه کدوم meaning مدنظره.
Natural alternative: «دو سال پیش» → I lived there two years ago.؛ «برای دو سال» → I lived there for two years.؛ «دو سال قبل از event» → I lived there two years before that.
Context note: این example دقیقاً نشون میده چرا anchor باید قبل از word انتخاب بشه.
Anchor Lab: اول reference point رو انتخاب کن
قبل از باز کردن model، یکی رو انتخاب کن: NOW / OTHER EVENT / LENGTH.
«دو سال پیش اومدم اینجا.»
Model
Anchor: NOW
I came here two years ago.
«دو روز قبل از مصاحبه دیدمش.»
Model
Anchor: OTHER EVENT
I saw her two days before the interview.
«سه سال اونجا زندگی کردم.»
Model
Anchor: LENGTH
I lived there for three years.
«یک ساعت پیش باهاش حرف زدم.»
Model
Anchor: NOW
I talked to him an hour ago.
«یک هفته قبل از سفر رزرو کردم.»
Model
Anchor: OTHER EVENT
I booked it a week before the trip.
«دو ساعت منتظر موندیم.»
Model
Anchor: LENGTH
We waited for two hours.
«پنج سال پیش انگلیسی شروع کردم.»
Model
Anchor: NOW
I started learning English five years ago.
«سه ماه قبل از عروسی نقل مکان کردن.»
Model
Anchor: OTHER EVENT
They moved three months before the wedding.
«برای یک ماه اونجا موندیم.»
Model
Anchor: LENGTH
We stayed there for a month.
«ده دقیقه پیش رسید.»
Model
Anchor: NOW
She arrived ten minutes ago.
تمرین ۳۰ ثانیهای: همون عدد، سه timeline
یک عدد انتخاب کن؛ مثلاً two years.
فاصله از الان:
I moved here two years ago.
فاصله از یک event دیگه:
I had met her two years before.
طول مدت:
I worked there for two years.
حالا با three days یا six months سه sentence شخصی بساز و قبل از هر جمله فارسی بگو anchor چیه.
since چی؟ فقط مرزش رو بدون
since اینجا قرار نیست درس اصلی بشه. فقط این distinction رو نگه دار:
- for two years → طول مدت
- since 2024 → نقطهٔ شروع
since داشت یواشکی وارد مقاله میشد؛ همینجا نگهش میداریم 😄
منابع زبانی این فرق
- Cambridge Grammar: Ago — فاصله از حال، جای ago، past simple و فرق با before/for.
- British Council LearnEnglish: How long — for برای duration و boundaryِ since.
- Oxford Learner’s Dictionaries: ago — الگوی learner-facingِ time expression + ago.
قاعدهٔ آخر: قبل از word، anchor رو پیدا کن
برای فهمیدن فرق ago و before و for، اول از خودت بپرس این عدد داره چی رو اندازه میگیره:
- فاصله از الان؟ → ago
- زودتر از یک time/event دیگه؟ → before
- طول مدت؟ → for
anchor اول، word بعد. وقتی reference point روشن شد، «دو سال پیش / دو سال قبل / برای دو سال» دیگه سه phrase مبهم نیستن.