راهنمای یادگیری خودآموز برنامه‌نویسی

راهنمای یادگیری خودآموز برنامه‌نویسی

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

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

چگونه شروع کنید؟

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

  1. انتخاب یک حرفه
  2. جمع‌آوری منابع یادگیری مورد نیاز
  3. شروع یادگیری
  4. پیاده‌سازی و ساخت ایده‌ها
  5. شبکه‌سازی

بیایید مراحل را با جزئیات بیشتری مرور کنیم.

۱) انتخاب یک حرفه

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

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

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

  1. امیدوارید با یادگیری برنامه‌نویسی به چه چیزی دست پیدا کنید؟ آیا می‌خواهید یک فری‌لنسر شده و کسب درآمد خود را آغاز کنید؟ یک شغل خوب پیدا کرده یا ایده خود را بسازید؟
  2. دوست دارید برای چه پلتفرم‌هایی برنامه‌نویسی کنید؟ وب (فرانت‌اند و بک‌اند)، موبایل (اندروید و iOS)، دسکتاپ، embedded، تجزیه و تحلیل داده‌ها و …

البته این بدان معنا نیست که بعدا نتوانید زمینه‌های دیگر را امتحان یا آزمایش کنید، اما باید با یکی از آنها مسیرتان را شروع کنید.

۲) جمع‌آوری منابع یادگیری مورد نیاز

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

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

  1. از چه زبان‌ها و فناوری‌هایی در این حرفه استفاده می‌شود؟ لیستی از حداقل مواردی که باید برای رسیدن به هدفی که در مرحله قبل انتخاب کرده‌اید، تهیه کنید. در اینجا تاکید بر حداقل است، فقط به این دلیل که قبل از برداشتن اولین قدم به سوی هدف، نباید منتظر یادگیری همه چیز باشید. در غیر این صورت، می‌بایست زمان زیادی را منتظر بمانید.
  2. به چه ابزارهایی نیاز دارید؟ ابزارهای مورد نیازتان را بشناسید و چگونگی استفاده از آنها را یاد بگیرید.
  3. در بیشتر زمینه‌ها نیاز است که یک ابزار یا زبان را قبل از دیگری یاد بگیرید و فراموش نکنید که همیشه با اصول اولیه مسیرتان را شروع کنید.

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

۳) شروع یادگیری

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

مقاومت

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

برای خود هدفی تعیین کنید

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

متمرکز بمانید

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

۴) پیاده‌سازی و ساخت ایده‌ها

پشتکار در انجام تمرین‌ها می‌تواند باعث ایجاد تفاوت میان شما و افراد با استعداد شود.

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

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

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

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

۵) شبکه‌سازی

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

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

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

خودتان را به دیگران معرفی کنید

به یاد داشته باشید که فرصت‌ها به افرادی داده می‌شود که واجد شرایط باشند و هم دیگران آنها را بشناسند. درمورد خود و آنچه که در حال انجام آن هستید با دیگران صحبت کنید. این باعث می‌شود تا بیشتر در معرض دید قرار بگیرید و بتوانید فرصت‌های بیشتری کسب کنید. برای این کار می‌توانید یک حساب GitHub درست کرده و کدهای خود را به آن push و در حساب Twitter خود درمورد آنچه که یاد می‌گیرید صحبت کنید.

سوال بپرسید

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

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

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

سلام، من (نام شما) هستم و امیدوارم حال شما خوب باشد. مدتی است که محتوای تولید شده توسط شما را دنبال می‌کنم و متوجه شدم در زمینه (زمینه مدنظرتان) فعالیت می‌کنید. من می‌خواستم (نوع چالشی که با آن روبرو هستید) را درک کنم و به همین دلیل سعی کردم (درج روش‌هایی که برای حل چالش خود استفاده کرده‌اید)، آیا شما می‌توانید در (آنچه که لازم دارید) کمک کنید؟ متشکرم.

جمع‌بندی پایانی

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

منبع: https://www.freecodecamp.org/news/the-self-taught-developers-guide-to-coding

خدمات رایگان لیارا

۲.۵ گیگابایت فضای ذخیره‌سازی ابری رایگان

۲.۵ گیگابایت Object Storage سازگار با پروتکل S3 با دیسک‌های SSD به‌صورت رایگان دریافت کنید.

هاست رایگان برای دیتابیس‌

دیتابیس‌های MariaDB، PostgreSQL و Redis را فقط با یک کلیک و به‌صورت رایگان تهیه کنید.

سرویس DNS رایگان

به سادگی دامنه‌تان را اضافه کنید و به صورت رایگان رکورد‌های آن را مدیریت کنید.

۱۰۰ هزار تومان اعتبار اولیه

بعد از ثبت نام در لیارا مبلغ ۱۰۰ هزار تومان اعتبار هدیه دریافت می‌کنید که با توجه به ساعتی بودن هزینه سرویس‌ها، می‌توانید تمامی خدمات پولی را برای چندین هفته رایگان استفاده کنید.

ارسال ۱۰۰ ایمیل تراکنشی رایگان در هر ماه

در سرویس ایمیل لیارا شما می‌توانید تا ۱۰۰ ایمیل رایگان در هر ماه ارسال کنید و فقط برای بیش از آن هزینه پرداخت کنید. (به‌همراه دسترسی SMTP)

هاست رایگان برای انواع وبسایت

تفاوتی ندارد برای وبسایت خود از Node استفاده می‌کنید یا Laravel و Django، در لیارا می‌توانید به صورت کاملا رایگان آن را میزبانی کنید.

توسعه‌دهندگان درباره‌ی ما چه می‌گویند

تجربه کار باliara_cloud@امروز خیلی خوب بود. یکی از سرویس هام رو منتقل کردم روش و راضیم. انقد سریع و جذاب کارم راه افتادم اصن باورم نمیشد! برعکس سرویس های PaaS دیگه با اون همه پیچیدگیشون. دمتون گرم
...

MohammadReza
liara testimonial
keikaavousi

بعد از بسته شدن @fandoghpaas و ناراحتی همه‌مون از اینکه یه سرویس خوب و صادق نمی‌تونه از پس هزینه‌ها بر بیاد، سرویسم رو منتقل کردم به پاس لیارا (https://liara.ir @liara_cloud) . تجربه راحت و خوب. تفاوت‌هایی داشت که کمی کار می‌خواست ولی تا الان کاملا راضی.

jadi
liara testimonial
jadi

یه خسته نباشید باید به تصمیمliara_cloud@بگم،
بعد از چندین روز سرکله زدن با سرویس های مشابه بالاخره تصمیم گرفتم لیارا رو امتحان کنم و باور نمیشه ۱۰ دقیقه بیشتر وقت نبرد،
دمتون گرم.

Arch
liara testimonial
EbadiDev

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

Ali Najafi
liara testimonial
me_ali_najafi

یکی از کارهای خوبی که جدیداً میکنم اینه که یه دیتابیس روی لیارا میسازم و به پروژه وصل میکنم اینطوری هم خونه و هم محل کار دیتابیس بروز رو دارم و راحت میتونم ادامه بدم کار روliara_cloud@

Navid
liara testimonial
1navid

عاشقliara_cloud@شدم درسته در حد AWS نیست ولی خب تجربه خوبی واسه پروژه های داخل ایران ارائه میده، میتونم رو CD هم اجراش کنم

Amir H Shekari
liara testimonial
vanenshi

همراه شما هستیم

در خصوص سفارش یا استفاده از سرویس‌ها سوالی دارید؟
تلفن واحد فروش:
۰۲۵-۳۳۵۵۷۶۱۹ (روزهای کاری ۹ الی ۱۷)
تلفن واحد فروش: ۳۳۵۵۷۶۱۹-۰۲۵ (روزهای کاری ۹ الی ۱۷)