یکی از سوالاتی که خیلی از من پرسیده شده و قطعا ممکنه سوال شما هم باشه اینه:
چجوری می تونم برنامه نویس بشم؟
اما قبل از اینکه این سوال رو جواب بدم، سعی کنید سوال زیر رو جواب بدید:
آیا به برنامه نویسی علاقه کامل دارم؟
اگه پاسخ تون به این سوال مثبته می تونید از ادامه خوندن این بخش صرف نظر کنید و مستقیم برید نقشه راه رو مطالعه کنید. (اسکرول کنید) اما اگر پاسخ تون به این سوال منفی هست، متاسفانه باید بگویم شروع و ادامه این مسیر ممکنه سخت باشه براتون. چرا که برنامه نویس شدن یک شبه، و حتی چند ماهه اتفاق نمیوفته و مثل هر حرفه دیگه ای کلی باید تمرین کنید و ممارست به خرج بدید و اگر علاقه ای نداشته باشید ممکنه خیلی سریع دلسرد بشید و بیخیالش بشید!
شاید کمی عجیب باشه اما ممکنه واقعا ندونید علاقه ای به برنامه نویس شدن دارید یا نه. ینی میدونید که جذابه اما نمیدونید ارزش داره وقت بزارید روش و سختی های راهش رو تحمل کنید یا نه؟ جواب این سوال برای هر انسانی ممکنه متفاوت باشه اما اگر من در همچین موقعیتی قرار داشتم به صورت زیر فکر می کردم.
آیا شغل و حرفه ای دارم و ازش راضی هستم؟ اگه جواب تون به این سوال آره است پیشنهاد می کنم وقت و تمرکز تون رو بذارید روی شغل و حرفه ای که دارید و سعی کنید هر روز بهتر و حرفه ای تر بشید و دانش و تجربه تون رو بیشتر و بیشتر کنید. قطعا رضایت و درآمد بیشتر نصیب تون خواهد شد. اما اگر کلا هیچ شغل و حرفه ای ندارید و به دنبال شاغل شدن هستید و یا اینکه شغل و حرفه دارید اما بهش علاقه ای ندارید یا ناراضی هستید (به هر دلیلی): باید بگم سختی های راه ارزشش رو داره! برنامه نویسی یاد بگیرید و وارد دنیای تکنولوژی و کامپیوتر بشید، زیرا پر واضح هستش که آینده داره به همین سمت حرکت می کنه. (بدون شک تا کنون کلیدواژه هایی مثل ارز دیجیتال، دنیای مجازی، متاورس، طراحی وب، اندروید و... به گوش تون خورده باشه)
پیشنهاد دیگه ای که برای این دسته از دوستان دارم اینه که، به جز برنامه نویسی، بر روی سایر مهارت هایی که میشه با کامپیوتر به دست آورد تحقیق کنید. مانند:
سخن پایانی این قسمت:
هیچ وقت کورکورانه تصمیم نگیرید و قبلش حتما جنبه های مختلف رو در نظر بگیرید و حسابی تحقیق کنید.
توجه: اینکه این نقشه راه رو چجوری یاد بگیرید و دنبال کنید برای هر شخصی متفاوت هستش و با توجه به مدل خودتون تصمیم بگیرید. مثلا یه نفر توی اینترنت سرچ میکنه و محتوای رایگان می بینه، یه نفر دوره آموزشی ثبت نام میکنه، یه نفر معلم خصوصی می گیره، یکی ممکنه کتاب بخره و یه نفر هم ممکنه خیلی از نقشه راه رو بلد باشه!
حالا که تصمیمت رو گرفتی وقتشه از همین امروز شروع کنی! اولین قدم یادگیری مفاهیم اولیه هستش. این مفاهیم عبارتند از: (منبع: لینک اول، پیوست شده در بخش منابع)
آیا لازمه واقعا همه این ها رو قبل شروع یاد بگیرم؟ آره! چون قراره کد نویسی کنید و چیزایی بنویسید که کامپیوتر قراره بفهمه و اجرا کنه براتون پس حتما باید باهاش آشنایی اولیه داشته باشید! از طرفی هم یادگیری زبان انگلیسی خیلی خیلی بهتون کمک میکنه. چرا؟ چون این علم در حال حاضر دست خارجی هاست و کلی منابع خوب فقط به زبان انگلیسی موجوده! حالا تصور کن انگلیسی بلد باشی! به کلی منابع تازه و جدید دسترسی داری و کلی جلو میوفتی!
بعد اینکه مفاهیم اولیه رو یاد گرفتی وقتش میرسه که اولین زبان برنامه نویسی تون رو انتخاب کنید. اگه دوست دارید یک برنامه نویس خوب و حرفه ای باشی پیشنهاد میکنم یکی از زبان های سی، سی پلاس پلاس و یا جاوا را انتخاب کنید. به شخصه توصیه نمی کنم برای شروع سمت زبان هایی مانند Python و یا JavaScript برید. زیرا پایتون برای شروع خیلی ساده هستش و ممکنه با بعضی از مفاهیم مهم برنامه نویسی مثل تخصیص حافظه، پوینتر و... آشنا نشید و از طرفی جاوا اسکریپت پیچیدگی ها و رفتار های عجیب و غریب خودش رو داره و ممکنه گیج بشید.
توجه: هیچ گونه مخالفتی با این دو زبان برنامه نویسی ندارم و به شخصه خیلی دوسشون دارم و ازشون استفاده میکنم. اما بدلیل آشنایی که با این زبان ها دارم، آنها را برای شروع مناسب نمیدونم.
حالا باید مفاهیم یادگرفته شده رو کلی تمرین کنید. در سایت های مختلف کلی سوال و چالش برنامه نویسی وجود داره که میتونه کمک تون کنه. نمونه ای از این سایت ها عبارتند از:
پیشنهاد میکنم در این قدم حداقل 100 سوال مختلف رو حل کنید و حسابی خودتون رو به چالش بکشید.
در این قدم یادگیری و تمرین کردن با هم باید اتفاق بیوفته چون حجم مطالب زیاده و اگر تمرین نکنید تبدیل میشه به نقطه ضعف تون! حتما حتما حتما تمرین کردن رو جدی بگیرید!
حالا که احتمالا سه چهار ماهی باید گذشته باشه، میشه گفت تقریبا برنامه نویسی رو یاد گرفتید. وقتشه یک حوزه تخصصی رو انتخاب کنید و توی اون متخصص بشه. حتما در مورد حوزه های مختلف تحقیق کنید و ببینید به چه چیزی بیشتر علاقه دارید. نمونه هایی از حوزه های مختلف عبارتند از:
در پایان توجه شما رو به اثر دانینگ کروگر جذب می کنم:
یادگیری و پیشرفت توی هر چیزی بالا پایین های خاص خودش رو داره، اما شما اینو می دونید! اگه قراره متخصص بشید، هیچ وقت ناامید نشید و دست از تلاش برندارید.
سعی کنید تو یه حوزه خوب قوی و متخصص بشید و بعدش برید حوزه های دیگه که علاقه دارید رو هم یادبگیرید. در کل یادگیری همیشه ادامه داره و هیچ وقت نباید متوقف بشید. چون دنیای کامپیوتر داره با سرعت سرسام آوری پیش میره و اگه یاد نگیری عقب میمونی. پس شد:
رمز پیشرفت = تمرین زیاد + یادگیری همیشگی
با آرزوی بهترین ها، اون بالا مالاها ببینمتون ?
من در لینکدین: seyyedaliayati
من در اینستاگرام: cpt9m0