معرفی ۲۹ سایت آموزش برنامه نویسی رایگان + نقشه راه ۶ ماهه
- مقالات آموزشی
- بروزرسانی شده در

احتمالاً این اولین مقالهای نیست که دربارهٔ یادگیری رایگان برنامهنویسی میخونید و احتمالاً مثل بقیه، آخرش بیست تا تب باز میمونه، هیچکدوم شروع نمیشه، و یه هفته بعد دوباره همون عبارت رو سرچ میکنید.
مشکل کمبود منبع نیست. منبع رایگان و باکیفیت اونقدر زیاده که خودش تبدیل شده به مانع. مشکل واقعی اینه که هیچکس بهتون نمیگه از بین این همه، کدوم یکی برای وضعیت شما منطقیه و به چه ترتیبی باید برید جلو.
این مقاله سعی میکنه همین تصمیم رو براتون ساده کنه. اول مشخص میکنیم شما کجای مسیرید و کدوم گزینه به دردتون میخوره، بعد ۲۹ منبع رایگان رو در هفت گروه معرفی میکنیم — با نقطهضعفهاشون، نه فقط تعریف — و آخرش یه نقشهٔ راه ششماههٔ مشخص میذاریم جلوتون.
ضمناً چند جا دربارهٔ چیزهایی حرف میزنیم که توی لیستهای ترجمهشده پیدا نمیکنید: کدوم سایتها از ایران باز میشن، با انگلیسی ضعیف چطور جلو برید، توی عصر هوش مصنوعی اصلاً یادگیری کد چقدر معنی داره، و بعد از یادگیری پول از کجا میاد.
این مقاله برای کیه؟ کسی که میخواد از صفر شروع کنه، یا قبلاً شروع کرده و وسط راه ول کرده. اگه توسعهدهندهٔ حرفهای هستید، مستقیم برید سراغ بخش مرجع و هوش مصنوعی.
آنچه در این مقاله میخوانید
کدام یک برای شما بهتر است؟
یه حقیقت رو همین اول بگم که کل مقاله رو براتون مفیدتر میکنه، شما به بیست تا سایت نیاز ندارید. به یکی نیاز دارید که تمومش کنید.
شایعترین دلیل شکست خودآموزها این نیست که منبع خوب پیدا نکردن. اینه که هر دو هفته منبع عوض کردن. یه دوره رو تا ۳۰ درصد جلو میرن، به یه جای سخت میرسن، فکر میکنن مشکل از دورهست، میرن سراغ بعدی، و دوباره از صفر شروع میکنن. بعد از شش ماه، پنج بار HTML رو یاد گرفتن و هیچوقت به جاوااسکریپت نرسیدن. پس این لیست رو مثل یه منو نبینید. یکی رو انتخاب کنید، تمومش کنید، بعد برگردید.
کدام زبان بهتر است؟
تقریباً فرقی نمیکنه، به شرطی که یکی رو انتخاب کنید و شش ماه پاش بمونید. مفاهیم پایه — متغیر، شرط، حلقه، تابع، ساختار داده — بین همهٔ زبانها مشترکه. وقتی یکی رو خوب یاد بگیرید، دومی رو در عرض چند هفته میگیرید. تمام وقتی که صرف مقایسهٔ پایتون و جاوااسکریپت میکنید، وقت هدررفتهست. ولی اگه واقعاً میخواید یه قانون ساده داشته باشید:
- میخواید سایت بسازید ← جاوااسکریپت (بههمراه HTML و CSS)
- میخواید کار با داده، اتوماسیون یا هوش مصنوعی کنید ← پایتون
- نمیدونید چی میخواید ← پایتون شروع کنید. سینتکسش به زبان انسان نزدیکتره و کمتر دلسردتون میکنه.
چقدر طول میکشه؟
هر کسی بهتون بگه «در ۳۰ روز برنامهنویس شوید»، حقیقت رو نگفته. با فرض روزی یک تا دو ساعت مطالعهٔ منظم — و تأکید روی منظم، چون هفتهای ده ساعت پراکنده نتیجهٔ خیلی کمتری داره:
| بازه | به کجا میرسید |
|---|---|
| ماه ۱ تا ۲ | مبانی زبان، میتونید برنامهٔ کوچیک بنویسید |
| ماه ۳ تا ۴ | اولین پروژهٔ واقعی، آشنایی با گیت |
| ماه ۵ تا ۸ | سه چهار پروژه توی نمونهکار، آمادهٔ کارآموزی یا پروژهٔ فریلنس کوچیک |
| ماه ۹ تا ۱۲ | سطح جونیور قابل استخدام |
این بازهها میانگینه، نه قول. بعضیها زودتر میرسن و خیلیها دیرتر. ولی اگه کسی بهتون گفت شش هفته، بدونید که یا از یه تعریف خیلی سخاوتمندانه از «برنامهنویس» استفاده میکنه یا داره دوره میفروشه.
توی عصر هوش مصنوعی، هنوز باید کدنویسی یاد گرفت؟
این سؤال رو جدی میگیریم، چون احتمالاً واقعاً ذهنتون رو مشغول کرده. جواب کوتاه: بله، ولی چیزی که باید یاد بگیرید عوض شده. بذارید بهجای شعار دادن، دقیق بگم چی عوض شده و چی نه.
چی واقعاً عوض شده
نوشتن کد ارزونتر شده. کارهایی که قبلاً نیمساعت طول میکشید — نوشتن یه تابع تکراری، ساختن یه فرم، تبدیل فرمت داده — الان با ابزارهایی مثل Copilot و Cursor و Claude Code در چند ثانیه انجام میشه. این واقعیته و انکارش فایده نداره.
در نتیجه، ارزش از «تایپ کردن کد» جابهجا شده به اینها:
- فهمیدن اینکه اصلاً چه چیزی باید ساخته بشه
- خوندن کدی که یکی دیگه (یا AI) نوشته و تشخیص اینکه درسته یا نه
- دیباگ کردن وقتی چیزی کار نمیکنه
- تصمیمگیری دربارهٔ ساختار پروژه
و بازار کار سطح ورودی سختتر شده. این رو هم صادقانه بگم بهتره تا اینکه بعداً غافلگیر بشید. کارهای سادهای که قبلاً به تازهکارها سپرده میشد، الان بخشیش با AI انجام میشه. یعنی برای ورود، باید یه پله بالاتر از چیزی باشید که پنج سال پیش کافی بود.
چی عوض نشده
AI با اطمینان کامل، کد غلط مینویسه. این مهمترین نکتهست. مدلهای زبانی خطا رو با همون لحن مطمئنی مینویسن که جواب درست رو. تشخیصش فقط با دانش خودتون ممکنه.
نمیتونید چیزی رو بازبینی کنید که بلد نیستید بخونید. اگه کدی که AI تولید کرده رو نفهمید، دو حالت داره: یا کار میکنه و شما نمیدونید چرا، یا کار نمیکنه و شما نمیدونید چرا. هر دو حالت بنبسته.
دیباگ همچنان کار شماست. وقتی برنامهتون توی محیط واقعی خطا میده، AI به لاگ سرور شما و ساختار پروژهتون دسترسی نداره. باید خودتون بفهمید کجا شکسته.
پروژههای واقعی خیلی بزرگتر از یه فایلن. AI توی نوشتن یه تابع عالیه. توی تصمیمگیری دربارهٔ اینکه این سیستم چطور باید ساخته بشه، هنوز شما لازمید.
پس تشبیه درست این نیست که «AI جای برنامهنویس رو میگیره». درستترش اینه که AI یه دستیار خیلی سریع و خیلی مطمئنبهخودشه که گاهی اشتباه میکنه — و ارزش شما اینه که بتونید اشتباهش رو بگیرید.
دام اصلی: یادگیری با AI که یادگیری نیست
اگه تازهکارید، ابزارهای AI بزرگترین خطر مسیر یادگیری شمان، نه بزرگترین کمک. چرا؟ چون یه حلقهٔ خیلی راحت درست میکنن: تمرین رو کپی میکنید، پیست میکنید توی چت، جواب میگیرید، کپی میکنید توی ادیتور، کار میکنه، میرید تمرین بعدی. حس میکنید دارید پیشرفت میکنید. سه ماه بعد یه پروژهٔ ساده بهتون میدن و هیچی بلد نیستید. این حالت خیلی شایعه و اسم داره: توهم شایستگی. مغز شما «دیدن جواب درست» رو با «بلد بودن» اشتباه میگیره.
چهار قانون برای استفاده از AI موقع یادگیری
اینها رو یه جایی بنویسید و کنار دستتون بذارید:
۱. اول خودت بنویس، بعد نقد بگیر.
هر تمرین رو اول خودتون حل کنید، حتی بد و ناقص. بعد از AI بخواید نقدش کنه: «این کد من رو ببین، کجاش میتونست بهتر باشه؟» اینطوری AI نقش معلم رو بازی میکنه نه جواببرگ رو.
۲. هیچ کدی رو کپی نکن که نمیتونی خطبهخط توضیحش بدی.
قانون ساده: اگه نمیتونید هر خط رو با زبون خودتون توضیح بدید، هنوز مال شما نیست. بپرسید تا بفهمید، بعد بروید جلو.
۳. سؤال رو عوض کن.
بهجای «این رو درست کن»، بپرسید «چرا این کار نمیکنه؟». بهجای «کد بنویس»، بپرسید «چه راههایی برای حل این هست و هر کدوم چه معایبی داره؟». همون ابزار، دو تا نتیجهٔ کاملاً متفاوت.
۴. اول پونزده دقیقه خودت با خطا کلنجار برو.
وقتی به ارور میخورید، اول خودش رو بخونید. سعی کنید بفهمید چی میگه. این پونزده دقیقهٔ ناخوشایند، دقیقاً همون جاییه که یادگیری اتفاق میافته. اگه هر بار مستقیم برید سراغ AI، این عضله هیچوقت ساخته نمیشه.
یه نتیجهٔ عملی برای انتخاب منبع
همهٔ اینها یه اثر مستقیم روی بخش بعدی مقاله داره. توی این فضا، منابعی که مجبورتون میکنن بسازید خیلی ارزشمندتر از منابعی هستن که فقط ویدیو نشونتون میدن. تماشای ویدیو رو AI بهراحتی جایگزین میکنه؛ ساختن یه پروژهٔ واقعی که خودتون دیباگش کردید رو نه.
برای همین توی لیست پیشرو، پلتفرمهایی مثل The Odin Project و Full Stack Open و Frontend Mentor — که کارشون سختتره و دستتون رو کمتر میگیرن — از خیلی دورههای ویدیویی راحتتر، برای شما ارزش بیشتری دارن.
چهار واقعیتی که خوانندهٔ ایرانی باید بدونه
اینجا جاییه که این مقاله از نسخههای دیگه جدا میشه. اکثر لیستهای «بهترین سایتهای آموزش برنامهنویسی» ترجمهٔ مقالههای انگلیسیان. مشکلشون این نیست که غلطن؛ مشکل اینه که برای کسی نوشته شدن که وقتی روی لینک کلیک میکنه، سایت باز میشه. برای شما لزوماً اینطور نیست. پس قبل از رفتن سراغ لیست، چهار تا موضوع رو روشن کنیم. اگه اینها رو ندونید، ممکنه دو هفته وقت بذارید روی مسیری که از همون قدم اول بنبسته.
واقعیت اول: همهٔ این سایتها از ایران باز نمیشن
بذارید اول توضیح بدم مشکل چند شکل داره، چون تشخیص نوعش کمک میکنه بدونید اصلاً قابل حله یا نه.
- نوع اول — بسته از سمت سایت. بعضی پلتفرمها بهخاطر مقررات صادراتی آمریکا، آیپی ایران رو مسدود میکنن. علامتش اینه که یه پیام مشخص میبینید که به تحریم اشاره میکنه.
- نوع دوم — بسته از سمت ایران. سایت اصلاً لود نمیشه یا خطای اتصال میده، بدون هیچ پیام توضیحی.
- نوع سوم — نیمهباز. این آزاردهندهترین نوعه. سایت باز میشه، صفحهها رو میبینید، ولی وسط کار گیر میکنید: ثبتنام کامل نمیشه، ایمیل تأیید نمیاد، کپچا لود نمیشه، یا ورود با حساب گوگل کار نمیکنه.
- نوع چهارم — سایت باز است ولی ابزارش نه. خود سایت لود میشه ولی محیط اجرای کد آنلاین، دانلود فایل، یا CDN جواب نمیده. یعنی درس رو میخونید ولی نمیتونید تمرین رو اجرا کنید.
چند نکتهٔ عملی که وقتتون رو نجات میده
فیلترشکن مرورگری با فیلترشکن سیستمی فرق داره. اگه افزونهٔ مرورگر استفاده میکنید، فقط ترافیک همون مرورگر رد میشه. وقتی بخواید پکیج نصب کنید، از ترمینال چیزی دانلود کنید، یا با گیت کار کنید، اونها از مسیر دیگهای میرن و گیر میکنن. برای کار توسعه، اتصال سیستمی لازم دارید.
روی یه کشور ثابت بمونید. جابهجایی مدام بین کشورهای مختلف، احتمال اینکه سرویس ازتون تأیید هویت بخواد یا حساب رو موقتاً قفل کنه بالا میبره.
حساب اصلیتون رو وسط نذارید. برای ثبتنام توی این پلتفرمها یه ایمیل جداگونه بسازید. اگه حسابی قفل شد، ایمیل اصلی و بقیهٔ سرویسهاتون درگیر نمیشن.
حساب گیتهاب رو جدی بگیرید. این تنها حسابیه که واقعاً براتون سرمایهست، چون نمونهکارتون اونجاست. حتماً ورود دومرحلهای فعال کنید، ایمیل بازیابی بذارید، و کدهای پشتیبان رو یه جای امن نگه دارید. از دست دادن دسترسی به گیتهاب یعنی از دست دادن همهٔ چیزی که ساختید.
بکآپ محلی داشته باشید. به هیچ پلتفرم آنلاینی بهعنوان تنها محل نگهداری کدتون تکیه نکنید. پروژهها رو روی سیستم خودتون هم داشته باشید.
اگه گیر کردید، سراغ منابع بدون وابستگی برید. بعضی منابع فقط یه فایل متنی یا ویدیوی قابل دانلودن و اصلاً حساب کاربری نمیخوان. MDN، مستندات رسمی زبانها، و MIT OCW از این دستهان. یادگیری با اینها کمی ساختار کمتری داره ولی هیچوقت وسط کار قطع نمیشه.
واقعیت دوم: گواهی و پرداخت
اکثر امکانات پولی این پلتفرمها برای شما در دسترس نیست. گواهی Coursera، نسخهٔ Pro کدآکادمی، LeetCode Premium، مدرک تأییدشدهٔ edX — همهشون کارت اعتباری بینالمللی میخوان.
خیلی از مقالههای فارسی این رو سرسری رد میکنن و مینویسن «بعداً میتونید برای گواهی هزینه بدید». این جمله برای خوانندهٔ ایرانی عملاً بیمعنیه و بهتره صادق باشیم. ولی خبر خوب اینه که این تقریباً هیچ اهمیتی نداره. بذارید یه حقیقت رو دربارهٔ بازار کار بگم که خیلی زود باید بدونید:
گواهی این پلتفرمها در استخدام تقریباً بیارزشه. نه در ایران، نه در خارج. کارفرما نمیپرسه چه مدرکی داری؛ میپرسه چی ساختی. یه لینک گیتهاب با سه تا پروژهٔ واقعی، از ده تا گواهی آنلاین بیشتر میارزه. پس این محدودیت در عمل چیزی از شما نمیگیره. چیزی که مهمه — خود آموزش، تمرینها، و پروژهها — توی اکثر این پلتفرمها رایگانه.
در نتیجه، معیار انتخاب منبع برای شما باید این نباشه که «گواهی میده یا نه»، بلکه «آخرش چیزی برای نشون دادن دارم یا نه». پلتفرمی که ازتون میخواد ده تا پروژه بسازید و روی گیتهاب بذارید، از پلتفرمی که آخرش یه PDF بهتون میده خیلی ارزشمندتره.
یه هشدار: به دورههای فارسی «تضمین استخدام» با قیمتهای سنگین مشکوک باشید. اگه بودجه دارید، اول همین منابع رایگان رو تا آخر برید. اگه بعد از سه چهار ماه دیدید نیاز به راهنما و ساختار بیشتری دارید، اونوقت با دید بازتری میتونید انتخاب کنید — و میدونید که دارید بابت چی پول میدید.
واقعیت سوم: انگلیسی
بریم سراغ چیزی که مانع اصلی اکثر مبتدیهای ایرانیه. بذارید با یه خبر خوب شروع کنم، چون احتمالاً بیشتر از چیزی که فکر میکنید نگرانید.
انگلیسی برنامهنویسی، انگلیسی معمولی نیست. واژگانی که برای خوندن مستندات فنی لازم دارید، حدود سیصد تا کلمهست که مدام تکرار میشن: function، return، array، loop، value، parameter، error، request. بعد از دو هفته مواجههٔ روزانه، اینها براتون عادی میشن. ضمناً متن فنی از متن ادبی خیلی سادهتره: جملهها کوتاهن، اصطلاح و ضربالمثل نداره، و ساختارش تکراریه.
تاکتیکهای عملی
۱. خوندن رو قبل از شنیدن راه بندازید. خوندن خیلی راحتتره چون کنترل سرعت دستتونه. اول چند ماه با منابع متنمحور کار کنید (freeCodeCamp، The Odin Project، MDN)، بعد سراغ دورههای ویدیویی برید. برعکسش خیلیها رو دلسرد میکنه.
۲. ترجمهٔ خودکار مرورگر رو روشن کنید، ولی نصفه. کروم و فایرفاکس صفحه رو ترجمه میکنن. بهترین روش اینه که اول انگلیسی رو بخونید، هر جا گیر کردید ترجمه رو روشن کنید، بعد دوباره برگردید به انگلیسی. اگه از اول ترجمه بخونید، هیچوقت انگلیسیتون راه نمیافته.
۳. زیرنویس انگلیسی، نه فارسی. برای ویدیوها زیرنویس انگلیسی بذارید و سرعت پخش رو روی ۰.۷۵ کم کنید. شنیدن همراه با دیدن متن، سریعترین راه عادت کردن گوشه.
۴. پیامهای خطا رو ترجمه نکنید — حفظشون کنید. پیامهای ارور محدود و تکراریان. undefined is not a function رو بعد از پنج بار دیدن، دیگه ترجمه لازم ندارید؛ میدونید یعنی چی و باید کجا رو نگاه کنید.
۵. از AI بهعنوان مترجم فنی استفاده کنید، نه مترجم متن. بهجای اینکه کل صفحه رو بدید ترجمه بشه، بپرسید «این پاراگراف چی میگه، ساده توضیح بده». اینطوری هم مفهوم رو میگیرید، هم متن اصلی جلوی چشمتون میمونه.
مسیر پیشنهادی برای کسی که انگلیسیاش ضعیفه
سه چهار ماه اول رو با منابع فارسی پیش برید تا مفاهیم پایه براتون جا بیفته. وقتی حلقه و تابع و آرایه رو مفهومی فهمیدید، خوندن متن انگلیسی دربارهٔ همونها خیلی راحتتر میشه، چون دیگه دنبال مفهوم نیستید، فقط دنبال کلمهاید.
بعد از اون، موازی کار کنید: تمرینها رو از منبع فارسی بگیرید، ولی مستندات رو از MDN بخونید. این پل، بعد از چند هفته خودش عبور رو کامل میکنه.
هیچ مسیر حرفهای در برنامهنویسی بدون انگلیسی وجود نداره. منابع فارسی برای شروع عالیان، ولی بهروزترین مستندات، جواب مشکلات نادر، و بحثهای فنی همه انگلیسیان. هدف این نیست که از انگلیسی فرار کنید؛ اینه که ورودش رو برای خودتون آسونتر کنید.
واقعیت چهارم: بعد از یادگیری، درآمد از کجا میاد؟
سه تا مسیر پیش رو دارید و هر کدوم شرایط خودش رو داره.
۱. بازار کار داخلی. واقعبینانهترین گزینه برای شروع. شرکتهای ایرانی جونیور استخدام میکنن و مهمتر اینکه بهتون تجربهٔ کار تیمی میدن — چیزی که خودآموزی هیچوقت نمیده. حقوق اولیه معمولاً پایینه، ولی سال اول کار توی یه تیم واقعی، از سال اول فریلنسری خیلی بیشتر یاد میده.
۲. فریلنس داخلی. پروژههای کوچیک از طریق پلتفرمهای ایرانی یا شبکهٔ آشناها. برای شروع و ساختن نمونهکار خوبه. رقابت زیاده و قیمتها پایین، ولی هیچ مانع ورودی نداره.
۳. دورکاری برای کارفرمای خارجی. درآمدش قابل مقایسه با بقیه نیست، ولی سختترین مسیره — و نه به دلیل فنی. مشکل اصلی، دریافت پوله. قبل از اینکه وقت زیادی روی این مسیر بذارید، دربارهٔ شرایط فعلی و محدودیتهاش تحقیق کنید و با کسانی که واقعاً این کار رو میکنن حرف بزنید.
دو تا نتیجهٔ عملی برای همین امروز
اول: از ماه دوم، گیتهاب داشته باشید. لازم نیست پروژهٔ چشمگیری باشه. تمرینها، پروژههای کوچیک، هر چی نوشتید رو آپلود کنید. کارفرما — چه ایرانی چه خارجی — قبل از هر چیز اینجا رو نگاه میکنه. کسی که یه سال کد نوشته و گیتهاب خالی داره، از دید کارفرما یه سال کد ننوشته.
دوم: هر چیزی که ساختید، منتشرش کنید. پروژهای که فقط روی لپتاپ شماست، وجود خارجی نداره. سایت سادهتون رو یه جایی بالا بیارید و لینکش رو داشته باشید. یه پروژهٔ کوچیک آنلاین، از پنج پروژهٔ بزرگ روی هارد ارزشمندتره.
خب، حالا که میدونید کجای مسیرید، چه محدودیتهایی دارید و مقصد کجاست، بریم سراغ خود لیست.
گروه ۱: مسیرهای کامل از صفر تا استخدام
این چهارتا با بقیهٔ لیست فرق دارن. بقیه ابزار و مرجع و تمرینان؛ اینها مسیر کاملن. یعنی اگه یکیشون رو انتخاب کنید و تا آخر برید، لازم نیست خودتون تصمیم بگیرید بعدش چی — برنامهش از قبل چیده شده.
توصیهام همینه: از این گروه یکی انتخاب کنید و بقیهٔ مقاله رو بهعنوان مکمل ببینید، نه جایگزین.
freeCodeCamp — بهترین نقطهٔ شروع
اگه فقط همین یه سایت رو از همین مقاله انتخاب کنید کافیه. freeCodeCamp یه سازمان غیرانتفاعیه و کل محتواش رایگانه — نه رایگان با نسخهٔ پولی کنارش، نه رایگان با تبلیغات. واقعاً رایگان.

روشش متنمحوره: یه توضیح کوتاه میخونید، بعد یه چالش کدنویسی توی خود مرورگر حل میکنید، و میرید بعدی. آخر هر مسیر باید چند پروژهٔ واقعی تحویل بدید.
چرا برای شما بهتر از بقیهست؟ چون متنمحوره. با انگلیسی متوسط میتونید بخونیدش، سرعتش دست خودتونه، و ترجمهٔ مرورگر روش کار میکنه — چیزی که روی ویدیو نمیشه.
ضعفش: یهکم خشکه. خبری از ویدیو و انیمیشن نیست و اگه با تماشا کردن بهتر یاد میگیرید، ممکنه خسته بشید. ضمناً دستتون رو زیادی میگیره؛ اینکه یه پروژه رو از صفر روی سیستم خودتون بسازید، اینجا یاد نمیگیرید.
مناسب: مبتدی مطلق · سطح: از صفر · زبان: انگلیسی ساده · زمان: ۳ تا ۶ ماه برای اولین مسیر
The Odin Project — سختتر، ولی واقعیتر
اگه freeCodeCamp کلاس درسه، Odin Project کارگاهه. اینجا از روز اول با ابزار واقعی کار میکنید: ترمینال، گیت، گیتهاب، ادیتور روی سیستم خودتون. هیچ محیط امن آمادهای وجود نداره. خودتون باید محیط رو بسازید، خودتون باید ارورها رو حل کنید.
نکتهٔ کلیدی: Odin بیشتر از اینکه محتوا تولید کنه، مسیر میچینه. شما رو میفرسته سراغ بهترین منابع موجود (MDN، مستندات رسمی، مقالات) و بعد یه پروژه میده. یعنی همون کاری که یه توسعهدهندهٔ واقعی هر روز میکنه.
چرا مهمه؟ چون آخرش نمونهکار دارید. پروژههاتون روی گیتهابن و لینکشون رو میتونید بفرستید. این دقیقاً همون چیزیه که کارفرما میخواد ببینه.
ضعفش: برای شروع مطلق سخته و نرخ ول کردنش بالاست. اگه هیچ پیشزمینهای ندارید، اول دو سه ماه با freeCodeCamp گرم کنید و بعد بیاید اینجا.
مناسب: کسی که پایه داره و پروژه میخواد · سطح: مقدماتی به بالا · زبان: انگلیسی متوسط · زمان: ۶ تا ۱۲ ماه
Full Stack Open — بهترین دورهٔ رایگان فولاستک
Full Stack Open توی لیستهای فارسی تقریباً هیچوقت نیست، در حالی که یکی از باکیفیتترین منابع رایگان دنیاست.
دورهٔ رسمی دانشگاه هلسینکیه و روی استک مدرن جاوااسکریپت تمرکز داره: ریاکت، Node.js، مانگودیبی، تست، تایپاسکریپت و مقداری داکر و GraphQL.
تفاوتش با بقیه: سطحش دانشگاهیه ولی لحنش کاملاً عملیه. کل دوره متنیه، بدون ویدیو، و هر بخش چند تمرین جدی داره. چیزی که یاد میگیرید عملاً همون چیزیه که توی یه شرکت واقعی استفاده میشه.
ضعفش: برای مبتدی مطلق نیست. باید HTML، CSS و مبانی جاوااسکریپت رو بلد باشید. مستقیم اومدن سراغش، تجربهٔ ناامیدکنندهایه.
مناسب: بعد از یادگیری مبانی جاوااسکریپت · سطح: متوسط · زبان: انگلیسی متوسط به بالا · زمان: ۴ تا ۸ ماه
CS50 هاروارد — اگه دنبال عمق هستید
CS50 دورهٔ مقدماتی علوم کامپیوتر دانشگاه هارواردـه که رایگان در دسترسه، و شهرتش بیدلیل نیست. اینجا یاد نمیگیرید چطور سایت بسازید. یاد میگیرید کامپیوتر چطور کار میکنه: حافظه، الگوریتم، ساختمان داده. با زبان C شروع میشه — که عمداً سخته — و بعد میره سراغ پایتون، SQL و جاوااسکریپت.
چرا ارزشش رو داره؟ چون بعدش هر زبان جدیدی رو خیلی سریعتر میگیرید. کسی که CS50 رو تموم کرده، موقع یادگیری زبان دوم دنبال مفهوم نیست، فقط دنبال سینتکسه.
ضعفش — و این جدیه: سنگینه. هفتهای ده تا بیست ساعت میخواد و تمرینهاش واقعاً سختن. ضمناً ویدیوییه و سخنرانیها سریعن، پس با انگلیسی ضعیف مسیر سختیه.
اگه هدفتون سریع رسیدن به بازار کاره، این دوره اولویت شما نیست. بعداً بگذرونیدش.
مناسب: کسی که پایهٔ علمی میخواد · سطح: چالشبرانگیز · زبان: انگلیسی خوب (زیرنویس دارد) · زمان: حدود ۱۲ هفته
مقایسه چهار سایت
| وضعیت شما | انتخاب |
|---|---|
| از صفر شروع میکنم | freeCodeCamp |
| مبانی رو بلدم، نمونهکار میخوام | The Odin Project |
| جاوااسکریپت بلدم، میخوام حرفهای بشم | Full Stack Open |
| وقت دارم و پایهٔ محکم میخوام | CS50 |
یه مسیر ترکیبی که خوب جواب میده: سه ماه freeCodeCamp ← بعد The Odin Project ← و اگه رفتید سمت جاوااسکریپت، Full Stack Open. CS50 رو هم میتونید موازی و آروم جلو ببرید.
گروه ۲: یادگیری تعاملی و بصری
اگه خوندن متنهای طولانی خستهتون میکنه، این گروه برای شماست. اینجا بیشتر میبینید و کلیک میکنید تا اینکه بخونید.
ولی یه هشدار قبل از شروع: این گروه برای شروع عالیه، برای رسیدن به سطح حرفهای نه. هر چهارتا دستتون رو زیاد میگیرن و توی محیط آمادهٔ خودشون نگهتون میدارن. برای غلبه بر ترس اولیه خوبن، ولی نباید بیشتر از دو سه ماه توشون بمونید.
Scrimba — نوآورانهترین روش آموزش

Scrimba یه ایدهٔ ساده ولی خیلی هوشمندانه داره: ویدیوهاش ویدیو نیستن. وقتی مدرس داره کد میزنه، شما میتونید هر لحظه ویدیو رو نگه دارید، روی همون کد کلیک کنید، تغییرش بدید و اجراش کنید. یعنی بهجای تماشای منفعل، مدام درگیرید.
چرا مؤثره؟ چون فاصلهٔ بین «دیدن» و «انجام دادن» رو حذف میکنه. توی دورههای ویدیویی معمولی، آدم ویدیو رو میبینه، حس میکنه فهمیده، و هیچوقت تایپ نمیکنه. اینجا این اتفاق نمیافته.
ضعفش: بخش رایگانش محدوده. دورههای مقدماتی HTML و CSS و جاوااسکریپت رایگانن، ولی مسیرهای کامل و پروژهها پولیان.
مناسب: کسی که با دیدن یاد میگیره · سطح: مبتدی · زبان: انگلیسی (ویدیویی) · زمان: چند هفته برای بخش رایگان
Codecademy — خوب برای تست کردن، نه برای تمام کردن
Codecademy یکی از قدیمیترین پلتفرمهای تعاملیه و محیطش هنوز از بهترینهاست. بدون نصب هیچ چیزی، توی مرورگر کد میزنید و نتیجه رو کنارش میبینید.
ولی باید صادق باشم: Codecademy دیگه اون Codecademy چند سال پیش نیست. بعد از اینکه به یه شرکت بزرگتر فروخته شد، بخش زیادی از محتوا رفت پشت نسخهٔ پولی. الان لایهٔ رایگانش عمدتاً درسهای مقدماتیه؛ پروژهها، مسیرهای شغلی و آزمونها پولیان.
پس به چه دردی میخوره؟ برای یه کار مشخص عالیه: تست کردن زبانها. اگه نمیدونید پایتون دوست دارید یا جاوااسکریپت، درس مقدماتی هر دو رو اینجا امتحان کنید. دو ساعت وقت میبره و جواب میگیرید. برای همین ازش استفاده کنید، نه بهعنوان مسیر اصلی.
مناسب: امتحان کردن چند زبان · سطح: مبتدی · زبان: انگلیسی ساده · زمان: چند ساعت تا چند هفته
Khan Academy — برای غلبه بر ترس اولیه
آکادمی خان یه مؤسسهٔ غیرانتفاعیه و بخش برنامهنویسیش با انیمیشن و مثالهای بصری درس میده. لحنش دوستانهست و اصلاً ترسناک نیست. اگه چند بار تلاش کردید برنامهنویسی یاد بگیرید و هر بار همون اول جا زدید، این یکی میتونه یخ رو بشکنه. با کشیدن شکل و ساختن انیمیشن ساده شروع میکنید و بدون اینکه بفهمید، مفهوم حلقه و شرط و تابع دستتون میاد.
ضعف مهمش رو حتماً بدونید: محیط برنامهنویسیش استاندارد نیست و مخصوص خودشونه. یعنی چیزی که اونجا مینویسید، مستقیماً توی دنیای واقعی قابل استفاده نیست. این یه نقطهٔ شروعه، نه یه مسیر. بعد از یکی دو ماه حتماً به منبع اصلیتون کوچ کنید.
مناسب: کسی که قبلاً جا زده · سطح: کاملاً مبتدی · زبان: انگلیسی ساده · زمان: ۱ تا ۲ ماه
Code.org — برای نوجوانها و کودکان
Code.org یه مؤسسهٔ غیرانتفاعی جهانیه که هدفش آشنا کردن بچهها با علوم کامپیوتره. با بازی، پازل و شخصیتهای محبوب کارتونی، مفاهیم پایه رو آموزش میده.
نکتهٔ مهم برای شما: فارسی داره. این یکی از معدود منابع باکیفیت جهانیه که ترجمهٔ فارسی داره و برای بچههای ایرانی مستقیماً قابل استفادهست.
برای بزرگسال؟ بهعنوان مسیر یادگیری نه. ولی بخش «یک ساعت کد» (Hour of Code) اش برای کسی که هیچ تصوری از برنامهنویسی نداره و میخواد ببینه اصلاً حسش چطوریه، یه شروع بیضرر و کوتاهه.
مناسب: کودکان و نوجوانان · سطح: کاملاً مبتدی · زبان: فارسی موجود است · زمان: ۱ ساعت تا چند هفته
جمعبندی این گروه
| اگه… | برید سراغ |
|---|---|
| با ویدیو بهتر یاد میگیرید | Scrimba |
| نمیدونید کدوم زبان رو انتخاب کنید | Codecademy (بخش رایگان) |
| قبلاً چند بار جا زدید | Khan Academy |
| برای بچهتون دنبال منبعید | Code.org |
یادتون باشه: هیچکدوم از این چهارتا مقصد نیستن. دو سه ماه اینجا بمونید، بعد برگردید به گروه اول.
گروه ۳: تمرین، چالش و آمادگی مصاحبه
خیلیها فکر میکنن این سایتها جای دورهان. در صورت که نیستن. اینها جای تمرینان، نه جای یادگیری. اگه هنوز مبانی یه زبان رو بلد نیستید، اومدن اینجا فقط ناامیدتون میکنه. زمان درست ورود به این گروه: وقتی مبانی یه زبان رو یاد گرفتید ولی هنوز روون نیستید. یعنی میدونید حلقه چیه، ولی موقع نوشتنش باید فکر کنید.
Codewars — بهترین گزینه برای تمرین روزانه

Codewars تمرینها رو به شکل بازی درآورده. هر چالش یه «کاتا»ست و با حل کردنشون درجهتون بالا میره.
ولی چیزی که واقعاً ارزشمندش میکنه این نیست. بعد از اینکه یه چالش رو حل کردید، راهحل بقیه رو میبینید. و اینجاست که یاد میگیرید. مسئلهای که شما با پونزده خط حل کردید، یکی با سه خط حل کرده. کدش رو میخونید، یه تابع جدید کشف میکنید، دفعهٔ بعد خودتون ازش استفاده میکنید. این حلقه، سریعترین راه روون شدن توی یه زبانه.
نکتهٔ عملی: از سطح ۸ و ۷ شروع کنید. اگه اول رفتید سراغ سطحهای سخت، دلسرد میشید.
مناسب: روون شدن توی یه زبان · سطح: بعد از یادگیری مبانی · زبان: انگلیسی کوتاه · زمان: روزی ۱۵ تا ۳۰ دقیقه، مستمر ·
Exercism — تنها جایی که بازخورد انسانی میگیرید
بزرگترین مشکل خودآموزی اینه که هیچکس بهتون نمیگه کدتون خوبه یا نه. کار میکنه، ولی نمیدونید حرفهای نوشتید یا نه. Exercism دقیقاً همین رو حل کرده. تمرین رو حل میکنید و برای یه منتور داوطلب میفرستید. یه آدم واقعی کدتون رو میخونه و بازخورد شخصی میده: اینجا میتونستی سادهتر بنویسی، این اسم گویا نیست، این تابع بهتر بود. این ارزشمندترین چیزیه که یه خودآموز میتونه رایگان گیر بیاره و تقریباً هیچجای دیگه پیدا نمیشه.
ضعفش: صبر میخواد. بسته به محبوبیت زبان، ممکنه چند ساعت تا چند روز طول بکشه تا منتور جواب بده.
مناسب: کسی که بازخورد میخواد · سطح: مبتدی به بالا · زبان: انگلیسی متوسط · زمان: موازی با مسیر اصلی
LeetCode — لازم، ولی نه الان
LeetCode بزرگترین مجموعهٔ مسائل الگوریتم و ساختمان داده رو داره و استاندارد آماده شدن برای مصاحبههای فنی شرکتهای بزرگه. ولی بذارید صریح بگم: برای ۹۰ درصد خوانندههای این مقاله، LeetCode الان اولویت نیست.دو تا دلیل:
یک — مصاحبهٔ الگوریتمی سبک شرکتهای بزرگ آمریکایی، توی اکثر شرکتهای ایرانی رایج نیست. خیلی از تیمهای داخلی بهجاش پروژهٔ عملی میدن یا نمونهکارتون رو بررسی میکنن. اگه هدفتون بازار داخلیه، وقتی که صرف LeetCode میکنید بهتره صرف ساختن پروژه بشه.
دو — LeetCode مهارت روزمرهٔ توسعهدهنده رو نمیسازه. حل مسائل انتزاعی الگوریتمی، شما رو در ساختن یه اپلیکیشن واقعی بهتر نمیکنه.
پس کی سراغش برید؟ وقتی یه مصاحبهٔ مشخص جلوی رومه که این سبک سؤال میپرسه. اونوقت شش هشت هفته متمرکز روش کار کنید. نه زودتر.
مناسب: آمادگی مصاحبهٔ شرکتهای بزرگ · سطح: متوسط به بالا · زبان: انگلیسی فنی · زمان: ۶ تا ۸ هفته، هدفمند
HackerRank — تمرین ساختاریافتهتر
HackerRank شبیه LeetCode ولی مسیر یادگیری منظمتری داره. بهجای یه دریای مسئله، مسیرهای مشخص میده: مبانی پایتون، SQL، ساختمان داده — با ترتیب مشخص و سطحبندی تدریجی. قویترین بخشش SQL هست. اگه دنبال کار با دیتابیس یا تحلیل داده هستید، بخش SQL این سایت یکی از بهترین منابع رایگان تمرینه. ضمناً بعضی شرکتها آزمون فنی استخدامشون رو روی همین پلتفرم برگزار میکنن، پس آشنایی با محیطش بیفایده نیست.
مناسب: تمرین با مسیر مشخص، مخصوصاً SQL · سطح: مبتدی به بالا · زبان: انگلیسی متوسط · زمان: موازی با مسیر اصلی · دسترسی از ایران: ــ
چطور از این گروه درست استفاده کنیم
یکی رو انتخاب کنید، نه همه رو. برای تمرین روزانه Codewars کافیه. Exercism رو هفتهای یکی دو بار برای بازخورد استفاده کنید. روزی بیست دقیقه، نه هفتهای سه ساعت. تمرین الگوریتمی مثل ورزشه؛ استمرار مهمتر از حجمه.
و مهمترین نکته: اینها جایگزین ساختن پروژه نیستن. آدمی که پونصد تمرین حل کرده ولی یه پروژهٔ کامل نساخته، توی مصاحبه راحت لو میره. تمرین، مکمل پروژهست نه جایگزینش.
| اگه… | برید سراغ |
|---|---|
| میخواید توی یه زبان روون بشید | Codewars |
| میخواید کسی کدتون رو نقد کنه | Exercism |
| مصاحبهٔ الگوریتمی دارید | LeetCode |
| دنبال SQL و دیتا هستید | HackerRank |
گروه ۴: دانشگاههای معتبر
این گروه یه ویژگی مشترک داره: محتوا عالیه، ولی ساختار نگهدارنده نداره. هیچکس اینجا بهتون یادآوری نمیکنه، تکلیفتون رو چک نمیکنه، و اگه دو هفته غیبت کنید کسی متوجه نمیشه. برای همین نرخ رها کردنش بالاست.
پس یه توصیهٔ صادقانه: این گروه رو بهعنوان مسیر اصلی انتخاب نکنید. بهعنوان مکمل عالیان، ولی اگه تنها منبعتون باشن، احتمال زیادی هست که نصفه رهاشون کنید.
MIT OpenCourseWare — کتابخانهٔ باز MIT

دانشگاه MIT تقریباً تمام محتوای درسیش رو رایگان منتشر کرده: جزوه، ویدیوی کلاس، تکلیف و حتی برگهٔ امتحان. برای برنامهنویسی، دورهٔ Introduction to Computer Science and Programming Using Python (کد ۶.۰۰۰۱) معروفترین گزینهشه.
قوتش: عمق. چیزی که اینجا یاد میگیرید توی هیچ دورهٔ تجاری پیدا نمیشه.
ضعفش: اصلاً ساختار کلاس نداره. نه نمرهای، نه ترتیب اجباری، نه کسی که جوابتون رو بده. یه انبار محتواست و شما باید خودتون معلم خودتون باشید.
یه مزیت عملی برای شما: چون بیشتر محتواش فایل قابل دانلوده، وابستگیش به دسترسی مداوم کمتره. میتونید یه بار دانلود کنید و آفلاین جلو برید.
مناسب: خودآموز منضبط · سطح: آکادمیک · زبان: انگلیسی خوب · زمان: ۱۰ تا ۱۴ هفته
The Missing Semester — چیزی که هیچکس یادت نمیده
MIT متوجه شد دانشجوهاش الگوریتم بلدن ولی با ابزار کار کردن بلد نیستن. برای همین این دوره رو ساخت: ترمینال، شل، گیت، ویرایشگر متن، دیباگ، اسکریپتنویسی.
چرا مهمه؟ چون اینها همون چیزهاییه که هیچ دورهای آموزش نمیده ولی هر روز لازمشون دارید. خیلی از تازهکارها نه بهخاطر ضعف در کدنویسی، بلکه بهخاطر ناتوانی در کار با ترمینال و گیت گیر میکنن.
کی برید سراغش؟ بعد از یکی دو ماه که مبانی رو گرفتید. کل دوره حدود ۱۱ جلسهٔ کوتاهه و در دو هفته تمومه.
مناسب: همه، بعد از ماه دوم · سطح: مقدماتی به بالا · زبان: انگلیسی متوسط · زمان: ۲ هفته
Coursera — دانشگاههای برتر با گزینهٔ رایگان
Coursera دورههای دانشگاههای بزرگ و شرکتهایی مثل گوگل و متا رو ارائه میده. با گزینهٔ «شنونده» (Audit) میتونید بدون پرداخت به ویدیوها و مطالب دسترسی داشته باشید. معروفترین گزینهش برای مبتدیها Python for Everybody از دانشگاه میشیگانه که یکی از بهترین دورههای مقدماتی پایتون دنیاست.
محدودیتهای نسخهٔ رایگان: معمولاً به تمرینهای نمرهدار و گواهی دسترسی ندارید.
و همونطور که توی بخش دوم گفتیم، گواهی برای شما اهمیتی نداره. چیزی که مهمه — ویدیوها و محتوا — رایگان در دسترسه. پس این محدودیت در عمل ضرری بهتون نمیزنه.
مناسب: یادگیری ساختاریافتهٔ یه موضوع خاص · سطح: متغیر · زبان: انگلیسی، اکثراً زیرنویسدار · زمان: ۴ تا ۸ هفته برای هر دوره
edX — خانهٔ CS50
edX رو هاروارد و MIT تأسیس کردن و ساختارش شبیه Coursera است: شرکت رایگان، گواهی پولی. مهمترین دلیل حضورش توی این لیست، CS50 است که توی گروه اول معرفی کردیم. اگه اون رو انتخاب کردید، مسیرتون از اینجا میگذره. فراتر از CS50، دورهٔ CS50’s Web Programming with Python and JavaScript هم گزینهٔ خوبی برای ادامهٔ مسیر توسعهٔ وبه. تفاوتش با Coursera اینه که آکادمیکتره و کمتر سراغ دورههای کاربردی و بازارمحور میره.
مناسب: کسی که دنبال CS50 یا دورهٔ دانشگاهیه · سطح: آکادمیک · زبان: انگلیسی، زیرنویسدار · زمان: متغیر
چطور از این گروه استفاده کنیم
The Missing Semester رو حتماً بگذرونید. کوتاهه و تأثیرش زیاده. این تنها موردیه که برای همه توصیه میکنم.
بقیه رو موازی و آروم جلو ببرید، نه بهعنوان مسیر اصلی. یه دوره از Coursera کنار freeCodeCamp، خیلی بهتر از دو تا دورهٔ نیمهکارهست.
و یه هشدار: ثبتنام کردن توی دوره حس پیشرفت میده، ولی پیشرفت نیست. اگه پنج تا دوره باز دارید و هیچکدوم رو تموم نکردید، مشکل از دورهها نیست.
گروه ۵: ساخت پروژه و نمونهکار
تنها چیزی که آخر مسیر برای شما میمونه، چیزیه که ساختید. نه گواهی، نه تعداد دورههای تمومشده، نه تعداد تمرینهای حلشده. کارفرما — چه ایرانی چه خارجی — یه لینک میخواد که کلیک کنه و چیزی ببینه.
مشکل اینجاست که بین «دوره رو تموم کردم» و «یه پروژهٔ واقعی ساختم» یه درهٔ عمیق هست. توی دوره همهچیز مشخصه؛ توی پروژهٔ واقعی هیچی مشخص نیست. این گروه دقیقاً برای عبور از همین درهست.
Frontend Mentor — پل بین آموزش و کار واقعی

توی Frontend Mentor یه فایل طراحی حرفهای بهتون میدن و میگن این رو بساز. و این دقیقاً همون کاریه که یه توسعهدهندهٔ فرانتاند توی شرکت واقعی انجام میده. طراح یه فایل میده، شما تبدیلش میکنید به یه صفحهٔ کارآمد و واکنشگرا.
چرا اینقدر مؤثره؟ چون مشکل «نمیدونم چی بسازم» رو کامل حذف میکنه. خیلی از تازهکارها ماهها دنبال ایده میگردن و هیچی نمیسازن. اینجا ایده آمادهست، فقط باید بسازید. ضمناً میتونید کارتون رو منتشر کنید و از بقیهٔ اعضا بازخورد بگیرید.
نکتهٔ عملی: از چالشهای سطح Newbie شروع کنید. سه چهار تا از این پروژهها روی گیتهاب، نمونهکار قابل قبولی برای شروع میسازه.
مناسب: ساختن نمونهکار فرانتاند · سطح: بعد از HTML و CSS · زبان: انگلیسی کم · زمان: هر چالش ۱ روز تا ۱ هفته
JavaScript30 — سی پروژه در سی روز
توی JavaScript30 دورهٔ رایگان با یه ایدهٔ ساده میبینید، سی روز، هر روز یه پروژهٔ کوچیک با جاوااسکریپت خالص. نکتهٔ کلیدیش اینه که بدون فریمورک، بدون کتابخانه هست. فقط جاوااسکریپت خام. و این عمدیه. خیلی از تازهکارها مستقیم میرن سراغ ریاکت و بعد گیر میکنن، چون پایهٔ جاوااسکریپتشون ضعیفه. این دوره دقیقاً همون شکاف رو پر میکنه. پروژهها کوچیکن — ساعت دیجیتال، پخشکنندهٔ صدا، نقاشی با کنواس — ولی هر کدوم یه مفهوم مشخص یاد میده.
بهترین زمان استفاده وقتیه که مبانی جاوااسکریپت رو خوندید ولی حس میکنید هنوز نمیتونید چیزی بسازید.
مناسب: تثبیت جاوااسکریپت · سطح: مقدماتی به بالا · زبان: انگلیسی ویدیویی · زمان: ۳۰ روز، روزی ۱ ساعت
CodePen — دفترچهٔ تمرین آنلاین
CodePen یه محیط کدنویسی آنلاین برای فرانتانده. HTML و CSS و جاوااسکریپت رو توی سه پنل مینویسید و نتیجه رو بلافاصله میبینید.
دو تا کاربرد اصلی داره:
اول، آزمایش سریع. وقتی میخواید یه چیز کوچیک رو تست کنید، لازم نیست پروژه بسازید. باز میکنید، مینویسید، میبینید.
دوم — و مهمتر — یاد گرفتن از بقیه. هزاران نمونهٔ آمادهٔ دیگران رو میتونید ببینید و کدشون رو بخونید. برای کشف تکنیکهای CSS و افکتهای جاوااسکریپت، منبع فوقالعادهایه.
ولی یه نکتهٔ مهم: CodePen جای نمونهکار نیست. چیزی که اینجا میسازید یه قطعهٔ کوچیکه، نه پروژه. نمونهکار شما باید روی گیتهاب باشه.
مناسب: تمرین سریع و الهام گرفتن · سطح: همه · زبان: انگلیسی کم · زمان: پراکنده
roadmap.sh — نقشهٔ راه، نه آموزش
این یکی محتوای آموزشی نداره و برای همین خیلیها اشتباه ازش استفاده میکنن. roadmap.sh نقشههای تصویری مسیرهای شغلیه: فرانتاند، بکاند، دواپس، هوش مصنوعی و دهها مسیر دیگه. هر نقشه نشون میده برای اون شغل چه چیزهایی لازمه و به چه ترتیبی.
چطور درست ازش استفاده کنیم؟ بهعنوان نقشه، نه فهرست کارها. نقشهٔ فرانتاند رو باز کنید تا بدونید کجای مسیرید و بعدش چی میاد. همین.
چطور اشتباه ازش استفاده میشه؟ خیلیها نقشه رو باز میکنن، میبینن پنجاه تا آیتم داره، وحشت میکنن و همونجا رها میکنن. یا بدتر: سعی میکنن همهش رو یاد بگیرن. واقعیت اینه که برای اولین شغلتون، به بیست درصد این نقشه نیاز دارید. بقیهش رو در طول کار یاد میگیرید.
مناسب: جهتیابی و برنامهریزی · سطح: همه · زبان: انگلیسی کم · زمان: یه بار نگاه، هر چند وقت مرور
سه قانون برای نمونهکار
۱. هر چیزی که ساختید، منتشرش کنید. پروژهای که فقط روی لپتاپ شماست، وجود خارجی نداره. حتی ناقص و ساده — بذاریدش روی گیتهاب.
۲. توضیح بنویسید. کنار هر پروژه یه فایل README بذارید: این چیه، با چی ساخته شده، چطور اجراش کنم. پروژهای که توضیح نداره، نصف ارزشش رو از دست میده.
۳. سه تا پروژهٔ کامل، بهتر از ده تا نصفهست. کیفیت مهمتر از تعداده. یه پروژه که تمیز و کامل و آنلاینه، از پنج تا پروژهٔ رهاشده ارزش بیشتری داره.
گروه ۶: مرجع و مستندات
این گروه فرقش با بقیهٔ لیست اینه که دوره نداره بلکه یه سایت مرجع هست. مهارت استفاده ازشون، خودش یکی از چیزهاییه که تازهکار رو از حرفهای جدا میکنه. آدمی که بلده مستندات بخونه، دیگه به هیچ دورهای وابسته نیست.
MDN Web Docs — مرجع اصلی توسعهٔ وب

MDN رو موزیلا نگه میداره و معتبرترین مرجع HTML و CSS و جاوااسکریپت دنیاست. هر توسعهدهندهٔ وب حرفهای، روزی چند بار بازش میکنه.
عادتی که باید بسازید اینه که وقتی یه تابع یا خاصیت رو نمیشناسید، اول MDN، نه گوگل. جواب دقیقتره و بروزتر.
ضمناً MDN فقط مرجع نیست؛ راهنماهای آموزشی کاملی هم داره که از صفر شروع میکنن. بخش یادگیریش برای مبتدیها کاملاً قابل استفادهست.
یه نکته: خوندن مستندات اولش سخته و این طبیعیه. زبانش دقیقه، نه دوستانه. بعد از چند هفته عادت میکنید و اونوقت دیگه سرعت یادگیریتون چند برابر میشه.
مناسب: همه، از روز اول · زبان: انگلیسی فنی (بخشی فارسی دارد)
web.dev — راهنمای مدرن گوگل
خیلی از مقالههای فارسی هنوز «Google Web Fundamentals» رو معرفی میکنن. اون منبع دیگه وجود نداره و محتواش سالها پیش به web.dev منتقل شد. اگه جایی اون اسم رو دیدید، بدونید مقاله قدیمیه. web.dev رو تیم کروم نگه میداره و تمرکزش روی ساختن سایتهای سریع، امن و قابل دسترسه. دورههای ساختاریافتهٔ HTML، CSS و جاوااسکریپت هم داره که کیفیتشون بالاست.
کی برید سراغش؟ بعد از اینکه مبانی رو یاد گرفتید. مباحثی مثل بهینهسازی سرعت، طراحی واکنشگرا و دسترسپذیری، چیزهاییه که سطحتون رو از «کار میکنه» به «خوب کار میکنه» میبره.
مناسب: بعد از مبانی · زبان: انگلیسی فنی
W3Schools — با احتیاط
W3Schools قدیمیترین و شناختهشدهترین مرجع سریع وبه. ساختارش سادهست و پنجرهٔ «خودت امتحان کن» داره که میتونید همونجا کد رو تغییر بدید.
اما نکته مهم اینه که این سایت سابقهٔ طولانی در ارائهٔ اطلاعات ناقص، قدیمی یا گاهی نادرست داره و در جامعهٔ توسعهدهندگان بهعنوان منبع اصلی توصیه نمیشه. برای شما که مبتدی هستید، خطرش اینه که نمیتونید تشخیص بدید کجا اطلاعات ناقصه.
پس قانون ساده: برای یادآوری سریع یه دستوری که قبلاً بلد بودید، خوبه. برای یاد گرفتن چیز جدید، سراغ MDN برید.
مناسب: مرور سریع، نه یادگیری · زبان: انگلیسی ساده · دسترسی از ایران: ــ
گروه ۷: هوش مصنوعی و داده
اگه مسیرتون به سمت هوش مصنوعی یا کار با دادهست، این بخش برای شماست.
ولی یه هشدار جدی اول: خیلیها مستقیم از صفر میرن سراغ یادگیری ماشین و بعد از دو ماه ول میکنن. دلیلش اینه که این حوزه پیشنیاز داره.
قبل از ورود به این گروه باید پایتون رو در حد قابل قبول بلد باشید و با ریاضیات پایه (آمار مقدماتی، جبر خطی در حد مفهوم) راحت باشید. بدون اینها، دورههای هوش مصنوعی برای شما مجموعهای از دستورات حفظی میشن.
Kaggle Learn — سریعترین ورود به دنیای داده

Kaggle بزرگترین جامعهٔ علم دادهست و بخش Learn اش دورههای کوتاه و کاملاً عملی داره: پایتون، پانداس، مصورسازی داده، مبانی یادگیری ماشین.
قوتش: هر دوره چند ساعتهست، همهچیز توی مرورگر اجرا میشه، و از همون درس اول با دادهٔ واقعی کار میکنید.
مزیت بزرگترش: بعد از دورهها میتونید توی مسابقات شرکت کنید. حل یه مسئلهٔ واقعی با دادهٔ واقعی، چیزیه که هیچ دورهای جاش رو نمیگیره.
مناسب: شروع علم داده · پیشنیاز: پایتون مقدماتی · زمان: هر دوره ۳ تا ۵ ساعت
Hugging Face Courses — مرجع مدلهای زبانی
Hugging Face پلتفرم اصلی مدلهای متنباز هوش مصنوعیه و دورههای رایگانش یکی از بهترین منابع برای فهمیدن اینه که مدلهای زبانی چطور کار میکنن.
دورههاشون کاملاً عملیه — کد مینویسید و مدل واقعی اجرا میکنید — و پوشششون از پردازش زبان طبیعی تا مبانی ساخت عاملهای هوشمند میره.
ضعفش: مبتدیپسند نیست. حتماً باید پایتون بلد باشید.
مناسب: بعد از پایتون و مبانی ML · پیشنیاز: پایتون متوسط · زمان: چند هفته
CS50 AI — اگه پایهٔ نظری میخواید
دنبالهٔ CS50 که مخصوص هوش مصنوعیه. الگوریتمهای جستجو، منطق، احتمال، بهینهسازی و شبکههای عصبی رو با پایتون آموزش میده.
فرقش با بقیه اینه که بهجای اینکه یادتون بده چطور از کتابخانهها استفاده کنید، یادتون میده این الگوریتمها چطور کار میکنن. سنگینتره ولی چیزی که میمونه عمیقتره.
مناسب: پایهٔ نظری AI · پیشنیاز: پایتون · زمان: حدود ۱۲ هفته
یه توصیهٔ واقعبینانه دربارهٔ مسیر هوش مصنوعی
این حوزه الان پرهیاهوترین بخش برنامهنویسیه و همین باعث شده خیلیها از اینجا شروع کنن. توصیهام اینه که نکنید.
یک — بازار کار سطح ورودی این حوزه خیلی محدودتر از توسعهٔ وبه. موقعیتهای شغلی معمولاً مدرک یا تجربهٔ قبلی میخوان.
دو — بدون مهارت مهندسی نرمافزار، مدل به درد نمیخوره. مدلی که نمیتونید به یه سرویس واقعی تبدیلش کنید، توی نوتبوک میمونه.
مسیر منطقیتر: اول برنامهنویسی و توسعهٔ وب رو یاد بگیرید، بعد به سمت هوش مصنوعی برید. اینطوری هم شغلپذیرترید، هم وقتی به AI برسید ابزار پیادهسازیش رو دارید.
منابع رایگان فارسی
اگه انگلیسیتون هنوز راه نیفتاده، این بخش برای شماست.
یه نکته رو صادقانه بگم، منابع فارسی برای شروع عالیان، ولی برای ادامهٔ مسیر کافی نیستن. بهروزترین مستندات و جواب مشکلات نادر، همه انگلیسیان. پس اینها رو بهعنوان پل ببینید، نه مقصد — سه چهار ماه اینجا، بعد کوچ به منابع اصلی.
کوئرا — مهمترین گزینهٔ این بخش. تمرینهای الگوریتمی فارسی، مسابقات، و بخش کاریابی — همه یکجا. برای کسی که هدفش بازار کار داخلیه، ترکیب تمرین و آگهی شغلی توی یه پلتفرم، مزیت واقعیایه که هیچ سایت خارجی نداره. جایگزین منطقی LeetCode برای شما.
مکتبخونه — دورههای دانشگاهی ضبطشدهٔ اساتید ایرانی. بخشی از محتوا رایگانه. برای مبانی برنامهنویسی و ساختمان داده به زبان فارسی، گزینهٔ خوبیه.
فرادرس — کتابخانهٔ بزرگی از دورههای فارسی داره که بخشیشون رایگانه. کیفیت بین دورهها متفاوته، پس قبل از شروع نمونهٔ ویدیو و نظرات رو ببینید.
یوتیوب فارسی — چند کانال فارسیزبان محتوای آموزشی خوبی منتشر میکنن. مزیتش رایگان و بهروز بودنه؛ ضعفش نبود مسیر منظم. برای رفع اشکال یه موضوع خاص عالیه، بهعنوان مسیر اصلی نه.
قبل از انتخاب، دو چیز رو چک کنید: تاریخ انتشار دوره (محتوای برنامهنویسی سریع قدیمی میشه) و اینکه دقیقاً چه بخشی رایگانه.
جدول مقایسهٔ کامل
| # | سایت | رایگان | سطح | زبان | مناسب برای |
|---|---|---|---|---|---|
| ۱ | freeCodeCamp | کامل | از صفر | انگلیسی ساده | بهترین نقطهٔ شروع |
| ۲ | The Odin Project | کامل | مقدماتی+ | انگلیسی متوسط | نمونهکار واقعی |
| ۳ | Full Stack Open | کامل | متوسط | انگلیسی متوسط+ | فولاستک جاوااسکریپت |
| ۴ | CS50 | کامل | چالشبرانگیز | انگلیسی خوب | پایهٔ علمی عمیق |
| ۵ | Scrimba | محدود | مبتدی | انگلیسی ویدیویی | یادگیری تعاملی |
| ۶ | Codecademy | محدود | مبتدی | انگلیسی ساده | تست کردن زبانها |
| ۷ | Khan Academy | کامل | کاملاً مبتدی | انگلیسی ساده | غلبه بر ترس اولیه |
| ۸ | Code.org | کامل | کاملاً مبتدی | فارسی دارد | کودک و نوجوان |
| ۹ | Codewars | کامل | مقدماتی+ | انگلیسی کوتاه | تمرین روزانه |
| ۱۰ | Exercism | کامل | مبتدی+ | انگلیسی متوسط | بازخورد انسانی |
| ۱۱ | LeetCode | محدود | متوسط+ | انگلیسی فنی | مصاحبهٔ الگوریتمی |
| ۱۲ | HackerRank | کامل | مبتدی+ | انگلیسی متوسط | تمرین SQL و دیتا |
| ۱۳ | MIT OCW | کامل | آکادمیک | انگلیسی خوب | عمق دانشگاهی |
| ۱۴ | The Missing Semester | کامل | مقدماتی+ | انگلیسی متوسط | ترمینال و گیت |
| ۱۵ | Coursera | شنونده رایگان | متغیر | انگلیسی + زیرنویس | دورهٔ ساختاریافته |
| ۱۶ | edX | شنونده رایگان | آکادمیک | انگلیسی + زیرنویس | خانهٔ CS50 |
| ۱۷ | Frontend Mentor | محدود | مقدماتی+ | انگلیسی کم | نمونهکار فرانتاند |
| ۱۸ | JavaScript30 | کامل | مقدماتی+ | انگلیسی ویدیویی | تثبیت جاوااسکریپت |
| ۱۹ | CodePen | کامل | همه | انگلیسی کم | تمرین سریع |
| ۲۰ | roadmap.sh | کامل | همه | انگلیسی کم | نقشهٔ راه شغلی |
| ۲۱ | MDN | کامل | همه | انگلیسی فنی | مرجع اصلی وب |
| ۲۲ | web.dev | کامل | مقدماتی+ | انگلیسی فنی | بهینهسازی و استاندارد |
| ۲۳ | W3Schools | کامل | مبتدی | انگلیسی ساده | فقط مرور سریع |
| ۲۴ | Kaggle Learn | کامل | نیاز به پایتون | انگلیسی متوسط | شروع علم داده |
| ۲۵ | Hugging Face | کامل | نیاز به پایتون | انگلیسی فنی | مدلهای زبانی |
| ۲۶ | CS50 AI | کامل | نیاز به پایتون | انگلیسی خوب | پایهٔ نظری AI |
| ۲۷ | کوئرا | بخشی | همه | فارسی | تمرین + بازار کار ایران |
| ۲۸ | مکتبخونه | بخشی | مبتدی+ | فارسی | مبانی به زبان فارسی |
| ۲۹ | فرادرس | بخشی | متغیر | فارسی | دورههای متنوع فارسی |
اگه قراره فقط سه انتخاب داشته باشید
| هدف شما | سهتای پیشنهادی |
|---|---|
| از صفر تا اولین شغل | freeCodeCamp ← The Odin Project ← Frontend Mentor |
| با انگلیسی ضعیف | کوئرا ← مکتبخونه ← freeCodeCamp |
| سریعترین مسیر به نمونهکار | The Odin Project + Frontend Mentor + گیتهاب |
| پایهٔ علمی محکم | CS50 ← The Missing Semester ← MIT OCW |
نقشه راه ۶ ماهه
تا اینجا لیست منابع رو دارید. حالا مسئله اینه که با کدوم، کِی و چقدر. این نقشه با فرض روزی یک تا دو ساعت مطالعهٔ منظم نوشته شده و مسیر توسعهٔ وب رو در نظر گرفته (پرتقاضاترین مسیر برای شروع). اگه پایتون و دیتا انتخاب کردید، ساختار کلی همینه فقط منابعش عوض میشه.
یه هشدار: این جدول یه پیشنهاده، نه قانون. اگه ماه دوم طول کشید سه ماه، مشکلی نیست. چیزی که مهمه ترتیبه، نه سرعت.
ماه ۱ — مبانی
HTML و CSS رو تموم کنید و وارد جاوااسکریپت بشید.
منبع: freeCodeCamp
خروجی این ماه: یه صفحهٔ وب ساده که خودتون از صفر نوشتید
ماه ۲ — جاوااسکریپت و ابزار
جاوااسکریپت رو جدی جلو ببرید. و همین ماه The Missing Semester رو بگذرونید — ترمینال و گیت باید از الان دستتون بیاد، نه ماه پنجم.
منبع: freeCodeCamp + The Missing Semester
خروجی: حساب گیتهاب فعال با اولین کدهاتون
ماه ۳ — تثبیت
اینجا جاییه که خیلیها گیر میکنن: مفاهیم رو بلدید ولی نمیتونید چیزی بسازید. JavaScript30 دقیقاً برای همینه.
منبع: JavaScript30 + روزی ۲۰ دقیقه Codewars
خروجی: چند پروژهٔ کوچیک روی گیتهاب
ماه ۴ — اولین پروژهٔ واقعی
از محیط آموزشی بیاید بیرون. Frontend Mentor بهتون طرح میده و شما باید بسازیدش.
منبع: Frontend Mentor + شروع The Odin Project
خروجی: دو پروژهٔ کامل، منتشرشده و آنلاین
ماه ۵ — عمق و بکاند
وارد مباحث جدیتر بشید: کار با API، پایگاه داده، فریمورک.
منبع: The Odin Project یا Full Stack Open
خروجی: یه پروژه که به داده وصل میشه
ماه ۶ — پروژهٔ نهایی و نمونهکار
یه پروژهٔ کامل بسازید که ایدهش مال خودتون باشه. رزومه و پروفایل گیتهاب رو مرتب کنید.
خروجی: سه تا چهار پروژهٔ کامل + رزومهٔ آماده
هر ماه یه چیز منتشر کنید. حتی کوچیک. آدمی که شش ماه یاد گرفته و هیچی منتشر نکرده، از دید کارفرما شش ماه کاری نکرده.
پنج اشتباهی که ۹۰ درصد خودآموزها میکنن
۱. عوض کردن مداوم منبع. هر بار به جای سخت میرسید، فکر میکنید مشکل از دورهست و میرید سراغ بعدی. نتیجه: شش بار HTML یاد گرفتن و هیچوقت نرسیدن به جاوااسکریپت. جای سخت، جای یادگیریه، نه نشانهٔ منبع بد.
۲. تماشا کردن بهجای نوشتن. ویدیو دیدن حس پیشرفت میده ولی پیشرفت نیست. قانون ساده: به ازای هر ساعت تماشا، دو ساعت تایپ.
۳. نساختن پروژه تا وقتی «آماده» بشید. هیچوقت آماده نمیشید. اولین پروژهتون قراره بد باشه؛ این بخشی از فرآینده. از ماه سوم شروع کنید.
۴. تکیه به AI بهجای فهمیدن. کدی که نمیتونید توضیح بدید، مال شما نیست.
۵. یادگیری در سکوت. پروژههاتون رو منتشر کنید، توی جامعههای برنامهنویسی بپرسید، بازخورد بگیرید. یادگیری خصوصی، کندترین نوع یادگیریه.
سؤالات متداول
بهترین زبان برای شروع چیه؟
جاوااسکریپت اگه میخواید سایت بسازید، پایتون برای بقیهٔ موارد. ولی مهمتر از انتخاب، پای انتخابتون موندنه.
بدون مدرک دانشگاهی میشه برنامهنویس شد؟
بله. کارفرما نمونهکار میبینه نه مدرک. مدرک در بعضی موقعیتها کمک میکنه ولی شرط لازم نیست.
چقدر طول میکشه تا استخدام بشم؟
با روزی یک تا دو ساعت منظم، معمولاً ۸ تا ۱۲ ماه تا سطح جونیور. کمتر از این هم ممکنه، ولی نادره.
گواهی این سایتها به درد میخوره؟
تقریباً نه. لینک گیتهاب شما از هر گواهیای ارزشمندتره.
سنم برای شروع زیاده؟
نه. این حوزه یکی از کمتعصبترین بازارهای کار نسبت به سنه، چون معیار سنجش، کدیه که مینویسید.
ریاضی قوی لازمه؟
برای توسعهٔ وب نه، ریاضی دبیرستان کافیه. برای هوش مصنوعی و گرافیک بله.
همزمان دو زبان یاد بگیرم؟
نه. یکی رو تا حد ساختن پروژه ببرید، بعد دومی رو در چند هفته میگیرید.
بدون لپتاپ قوی میشه شروع کرد؟
بله. برای وب و پایتون، یه سیستم معمولی کافیه. برای یادگیری ماشین بعداً به منابع بیشتری نیاز پیدا میکنید که اونموقع سرویسهای ابری هست.
حرف آخر
اگه تا اینجا خوندید، احتمالاً بیشتر از خیلیها دربارهٔ مسیر یادگیری میدونید. ولی این خودش یه دام داره. خوندن دربارهٔ برنامهنویسی، برنامهنویسی نیست. آدمی که ده تا مقالهٔ «بهترین منابع» خونده و یه خط کد ننوشته، از آدمی که یه دورهٔ متوسط رو تموم کرده خیلی عقبتره.
پس پیشنهادم برای همین امروز اینه که یکی از منابع گروه اول رو باز کنید و درس اول رو تموم کنید. همین. نه انتخاب زبان، نه خرید دوره، نه نصب ادیتور حرفهای. فقط درس اول. و از هفتهٔ بعد، یه ساعت ثابت در روز — ترجیحاً همون ساعت مشخص. استمرار در این مسیر، از استعداد و از تعداد ساعتها مهمتره. کسی که هر روز یک ساعت میخونه، شش ماه بعد از کسی که آخر هفتهها هفت ساعت میخونه خیلی جلوتره.
اگه سؤالی داشتید یا وسط راه گیر کردید، توی دیدگاهها بنویسید. و اگه این مسیر رو رفتید و به نتیجه رسیدید، تجربهتون رو بنویسید برای کسی که تازه شروع کرده، شنیدن از کسی که همین راه رو رفته ارزشش از هر مقالهای بیشتره. موفق و پیروز باشید. 🙂

سلام ببخشید من چطوری میتوانم به دوره ی ۱۲ قدم برنامه نویسی دسترسی داشته باشم ؟ هرکجای سایتتون گشتم نبود ممنون میشم راهنمایی کنید
خیلی از این ها بر خلاف صحبت شما فقط چند روز رایگان هستند و در ادامه پولی هستند. لطفاً واقعاً وبسایت های رایگان را درج کنید.
سلام
میشه سایت های رایگان آموزش برنامه نویسی که زبان فارسی باشه بزارید
با سلام
خیر متاسفانه این امکان وجود ندارد
سلام.
لطفا در صورت امکان منابع رایگان برای یادگیری سئو، کسب و کار و مارکتینگ را نیز معرفی نمایید.
با تشکر فراوان
با سلام
https://mihanwp.com/seo/yoast-seo/
آموزش رایگان سئو خدمت شما