برنامه‌نویسی را از کجا شروع کنم؟ نقشه راه واقع‌بینانه - مجله آموزش برنامه‌نویسی داناورس
آموزش برنامه‌نویسی بازبینی علمی: مهدی خزاعی ۷ دقیقه مطالعه

برنامه‌نویسی را از کجا شروع کنم؟ نقشه راه واقع‌بینانه

این سوال را هزاران نفر در روز جست‌وجو می‌کنند و متأسفانه بیشتر جواب‌هایی که می‌گیرند یا تبلیغ یک دوره است، یا فهرستی از ده زبان برنامه‌نویسی که آدم را گیج‌تر می‌کند. این مقاله سعی می‌کند جواب صادقانه بدهد — حتی جایی که جواب صادقانه آن چیزی نیست که دوست دارید بشنوید.

اول یک حقیقت ناخوشایند

سوال «کدام زبان را یاد بگیرم؟» تقریباً همیشه سوال اشتباهی است. نه به این دلیل که زبان مهم نیست، بلکه چون بیشتر کسانی که این سوال را می‌پرسند، شش ماه بعد هیچ زبانی یاد نگرفته‌اند — نه به خاطر انتخاب اشتباه، بلکه چون هیچ‌وقت از مرحله‌ی انتخاب عبور نکردند.

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

مرحله‌ی صفر: هدفتان را دقیق کنید

«می‌خواهم برنامه‌نویسی یاد بگیرم» مثل این است که بگویید «می‌خواهم ورزش کنم». شنا و وزنه‌برداری هر دو ورزش‌اند ولی هیچ ربطی به هم ندارند. قبل از هر چیز مشخص کنید کدام‌یک از این‌ها هستید:

  • می‌خواهم شغلم را عوض کنم و وارد بازار کار نرم‌افزار شوم. افق زمانی شما ۸ تا ۱۸ ماه است و باید از همان اول با جدیت پروژه بسازید.
  • می‌خواهم در شغل فعلی‌ام کارآمدتر باشم. شاید اصلاً به برنامه‌نویسی کامل نیاز ندارید؛ ممکن است اتوماسیون ساده یا ابزارهای هوش مصنوعی کافی باشد.
  • کنجکاوم و می‌خواهم ببینم چطور است. عالی است — ولی صادق باشید و از روز اول هدف «استخدام در شش ماه» نگذارید، چون فشارش شما را زودتر از موعد خسته می‌کند.
  • برای فرزندم دنبال مسیر هستم. این یک مسیر کاملاً متفاوت است و پایین‌تر جداگانه به آن می‌پردازیم.

حالا زبان: چرا پایتون برای اکثر آدم‌ها جواب درست است

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

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

چه زمانی پایتون انتخاب درستی نیست؟ اگر هدف مشخصی دارید که زبان دیگری می‌خواهد: ساخت وب‌سایت تعاملی (جاوااسکریپت)، اپلیکیشن اندروید (کاتلین)، یا بازی‌سازی حرفه‌ای (سی‌شارپ). در این حالت‌ها مستقیم سراغ همان بروید و وقت را در پایتون تلف نکنید.

سه ماه اول: دقیقاً چه کار کنید

ماه اول — پایه‌ها و اولین خروجی

متغیر، شرط، حلقه، تابع و لیست. همین. این‌ها حدود ۸۰ درصد کدی است که یک برنامه‌نویس در روزمره می‌نویسد. هدف ماه اول این نیست که همه‌چیز را بفهمید؛ این است که اولین برنامه‌ی کوچکی که کار می‌کند را بسازید — یک ماشین‌حساب، یک بازی حدس عدد، یک برنامه که فایل‌های یک پوشه را مرتب می‌کند.

ماه دوم — پروژه‌ی واقعی و آشنایی با خطا

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

ماه سوم — گیت‌هاب و بازخورد

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

تله‌ای که اکثر آدم‌ها در آن می‌افتند

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

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

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

واقعاً چقدر طول می‌کشد؟

با فرض روزی یک تا دو ساعت مداوم:

  • ۱ تا ۲ ماه: می‌توانید برنامه‌های کوچک بنویسید و کد ساده را بخوانید.
  • ۴ تا ۶ ماه: می‌توانید یک پروژه‌ی کامل را از صفر تا انتشار ببرید.
  • ۸ تا ۱۸ ماه: بازه‌ی واقع‌بینانه برای آماده شدن به سطح جونیور — با پورتفولیو، نه فقط دانش.

هر کسی به شما بگوید «در سه ماه برنامه‌نویس شو و استخدام شو»، یا تعریف متفاوتی از برنامه‌نویس دارد یا چیزی می‌فروشد. البته که استثنا وجود دارد، ولی برنامه‌ریزی بر اساس استثنا تصمیم خوبی نیست.

اگر برای فرزندتان دنبال مسیر هستید

مسیر کودکان کاملاً متفاوت است و مهم‌ترین اشتباه والدین این است که همان مسیر بزرگسالان را کوچک‌شده به کودک می‌دهند.

  • زیر ۱۰ سال: اسکرچ بهترین شروع است. کودک با کشیدن بلوک‌های رنگی بازی و انیمیشن می‌سازد و بدون درگیر شدن با تایپ و خطای نگارشی، تفکر الگوریتمی یاد می‌گیرد. این همان پایه‌ای است که بعداً یادگیری هر زبانی را آسان می‌کند.
  • ۱۰ تا ۱۴ سال: پایتون کودکان مناسب‌تر است. در این سن نوجوان معمولاً از «بازی‌گونه» بودن اسکرچ عبور کرده و می‌خواهد چیز «واقعی» بسازد.
  • علاقه‌مند به ساخت و سخت‌افزار: اگر فرزندتان بیشتر اهل باز کردن وسایل و ساختن است تا نشستن پای صفحه، رباتیک کودکان انتخاب طبیعی‌تری است.

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

و اگر اصلاً نمی‌دانم به چه چیزی علاقه دارم؟

این حالت رایج‌تر از چیزی است که فکر می‌کنید و هیچ ایرادی ندارد. ولی هزینه‌ی انتخاب تصادفی بالاست: چند ماه در مسیری که با شیوه‌ی فکر کردنتان نمی‌خواند، معمولاً به این نتیجه‌ی اشتباه ختم می‌شود که «من استعدادش را ندارم».

دو راه رایگان برای روشن شدن دارید:

  1. آزمون استعدادیابی — ۱۸ سوال، حدود دو دقیقه، بدون ثبت‌نام. نیمرخ شما را در شش بُعد می‌سنجد (منطق، خلاقیت بصری، سیستم و سخت‌افزار، تحلیل داده، پشتکار و کار تیمی) و بر اساس دو بُعد قوی‌تان مسیر محتمل‌تر را پیشنهاد می‌دهد.
  2. دو هفته تست عملی — یک هفته چیزی بصری بسازید (مثلاً طراحی یک صفحه) و یک هفته چیزی منطقی (مثلاً یک اسکریپت کوچک). ببینید کدام‌یک باعث می‌شود متوجه گذر زمان نشوید. این حس، اطلاعات واقعی‌تری از هر آزمونی می‌دهد.

اگر بین مسیر طراحی و برنامه‌نویسی مردد هستید، مقاله‌ی تفاوت UI و UX تصویر روشن‌تری از سمت طراحی به شما می‌دهد.

خودآموز یا دوره؟

هر دو جواب می‌دهند و انتخاب بین آن‌ها بیشتر به شخصیت شما برمی‌گردد تا به کیفیت منابع.

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

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

جمع‌بندی: پنج قدم عملی

  1. هدفتان را در یک جمله بنویسید. اگر نمی‌توانید، هنوز آماده‌ی انتخاب زبان نیستید.
  2. یک زبان انتخاب کنید — برای اکثر آدم‌ها پایتون — و دیگر به انتخابتان شک نکنید.
  3. روزی یک ساعت، اما هر روز. یک ساعت روزانه از پنج ساعت آخر هفته مؤثرتر است.
  4. از هفته‌ی دوم پروژه بسازید. صبر نکنید تا «آماده» شوید؛ هیچ‌وقت نمی‌شوید.
  5. کدتان را به کسی نشان بدهید. بازخورد سریع‌ترین راه کوتاه کردن مسیر است.

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

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

مطالعه‌ی بیشتر

پایتون مقدماتی
پیشنهاد ویژه یادگیری

پایتون مقدماتی

ورود قدرتمند به دنیای مهندسی نرم‌افزار و پایتون.

مشاهده دوره و ثبت‌نام

مقالات مرتبط

برچسب‌ها: #آموزش برنامه‌نویسی #داناورس

بحث و تبادل نظر 0 دیدگاه

💭

هنوز دیدگاهی ثبت نشده است. شما اولین نفر باشید!

مشاوره و پشتیبانی در واتس‌اپ