آیا یادگیری کدنویسی سخت است؟

آیا واقعا یادگیری کدنویسی سخت است؟ بیایید بررسی کنیم که چه مواردی باعث می شود که یادگیری هر موضوعی سخت به نظر برسد؟ اگر کدام یک از شرایط زیر وجود داشته باشد می توان گفت که یادگیری یک موضوع سخت است؟

  • اگر جدید و متفاوت از سایر چیزهایی باشد که تاکنون یاد گرفته ایم؟
  • اگر یادگیری آن نیاز به صرف زمان زیاد، پشتکار و تلاش داشته باشد؟
  • اگر منابع کافی برای یادگیری آن وجود نداشته باشد؟

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

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

علاقه به کدنویسی نباشد، کارتان سخت می شود (البته نه غیرممکن)!

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

از کجا بدونم به کدنویسی علاقه دارم یا نه؟

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

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

پیش داوری ممنوع!

گاهی اوقات، تصمیم گیری انسان نسبت به علاقمندی به موضوعات، از روی پیش داوری های غلط صورت می گیرد که باید از آن ها پرهیز شود. به عنوان مثال بعضی افراد از ریاضیات خوششان نمی آید و طبق بعضی پیش داوری های نادرست، فکر می کنند برای کدنویسی حتما باید در ریاضیات قوی باشند و به این ترتیب نتیجه می گیرند که به کدنویسی هم علاقه ندارند! البته در برخی حوزه های کدنویسی که بیشتر با هوش مصنوعی در ارتباط است (دقت کنید گفتیم بعضی از آن ها)، بله این موضوع درست است؛ اما در همه موارد این طور نیست و قوی بودن و علاقمند بودن به ریاضیات ارتباطی به کدنویسی ندارد. پس پیش داوری را کنار بگذارید و خودتان را در معرض موضوعات مرتبط قرار دهید و سعی کنید با مطالعه موثر، کسب اطلاع کنید. البته باز هم تاکید می کنیم که بالاخره کمی باید درگیر موضوع شوید و به اصطلاح تن به آب بزنید تا ببینید که واقعا به کدنویسی علاقه دارید یا خیر.

در ادامه مطلب در مورد سوالاتی که در ابتدای مطلب ذکر کردیم و آن ها را به عنوان دلایلی برای سخت بودن یادگیری کدنویسی بیان کردیم، بیشتر توضیح می دهیم.

کدنویسی جدید و متفاوت است، مثل خیلی چیزهای دیگر!

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

یادگیری کدنویسی از این نظر ممکن است برای برخی متفاوت و عجیب و غریب باشد که ملموس نیست. مثلا وقتی می خواهیم رانندگی کنیم یک ماشین است و یک گاز و کلاچ و فرمان و دنده! می دانیم که باید با این چیزهایی که می بینیم کار کنیم و کاملا ملموس است. اما یادگیری کدنویسی چطور؟

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

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

تخصص در کدنویسی به زمان و تلاش زیادی نیاز دارد؛ مثل هر تخصص دیگر!

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

یک پزشک برای اینکه دکترای عمومی بگیرد 7 سال درس می خواند و برای دکترای تخصصی بعضا تا چهار سال دیگر هم باید ادامه دهد. در رشته های مهندسی برای کارشناسی چهار سال، کارشناسی ارشد دو سال و دوره دکتری هم حدود چهار سال و مجموعا ده سال زمان صرف می شود. برای متخصص شدن در هر رشته و شغلی، زمان زیادی نیاز است (بگذریم از متخصص نماهای مدرک گرای کار نابلد). مالکوم گلدول گفته برای متخصص شدن در یک موضوع باید 10 هزار ساعت زمان صرف شود. البته این به این معنی نیست که کسی که مثلا هزار ساعت زمان گذاشته هیچ چیز یاد نگرفته است. خیر! این یک مسیر است و شما در این مسیر روز به روز به مهارتتان افزوده می شود و بالاخره زمانی خواهد رسید که تبدیل به یک متخصص حرفه ای خواهید شد ان شاءالله.

منابع آموزشی کافی

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

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

اما ذکر یک نکته خیلی مهم را از قلم نیندازیم. اگر می خواهید ان شاءالله در آینده به طور حرفه ای کدنویسی را (در هر کدام از شاخه های آن) ادامه دهید، بهتر است از منابع دست اول استفاده کنید. متاسفانه از آنجایی که علم کامپیوتر یک علم بومی نیست زبان آن هم فارسی نیست. پس باید زبان انگلیسی تان را تقویت کنید تا بتوانید به منابع آموزشی با کیفیت و تنوع بالاتر دسترسی داشته باشید. البته این نکته فقط برای افرادی است که می خواهند در حوزه کاری خودشان جزء افراد رده بالا باشند.

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

مقالات مرتبط

پاسخ‌ها

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *