Teaching Is Leaning: با آموزش برنامه‌نویسی مهارت‌های کدنویسی خود را ارتقاء بخشید‍

Teaching Is Leaning: با آموزش برنامه‌نویسی مهارت‌های کدنویسی خود را ارتقاء بخشید‍

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

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

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

توضیحاتی متناسب با دنیای واقعی ارائه دهید
از به کار بردن عبارات گنگ و نامفهوم مثل Multithreading ،Polymorphism و اصطلاحاتی از این دست خودداری کنید چرا که این کلمات برای کسانی که برنامه‌نویسی بلد نیستند، هیچ معنایی ندارد. در واقع، چیزی که دولوپرهای تازه‌کار به خوبی درک می‌کنند همان دنیای واقعی است که در آن حضور دارند؛ بنابراین برای توضیح دادن مفهومی مثل سوپرکلاس می‌توانید از مثال وسائل نقلیه استفاده کنید به طوری که مثلاً سوپرکلاس همان وسایل نقلیه است و اتومبیل، کامیون، اتوبوس، قطار، هواپیما و غیره همان ساب‌کلاس‌ها هستند و بدین صورت است که ایشان می‌توانند با این مثال‌ها به خوبی ارتباط برقرار کنند.

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

به طور کلی، ماهیت حل مسئله و برنامه‌نویسی این‌گونه است که نیاز به پشتکار و سِماجت دارد و کدآموزان با گذشت زمان به این موضوع پی برده و آن را در خود تقویت می‌کنند. به یاد داشته باشید که این مسئله چیزی نیست که بتوانید آن را با کمک کلمات به آن‌ها یاد بدهید بلکه ایشان صبر را از رفتار شما فرا خواهند گرفت (مثلاً وقتی که در پروسهٔ آموزش به باگی می‌خورید، وقتی که کدآموز می‌بینید که سر حوصله تمامی جواب را تک‌ به تک سنجیده و مراحل مختلف را طی می‌کنید تا به سولوشن نهایی برسید، صبر، حوصله، سخت‌گوشی و سِماجت را هم علاوه بر نکات فنی از شما فرا خواهد گرفت.)

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

- چگونه یاد می‌گیریم؟ (درآمدی بر پروسهٔ یادگیری)
مفهوم سواد در قرن ۲۱ام: برخورداری از مهارت‌های Unlearn ،Learn و Relearn
از Death Valley (درهٔ مرگ) تا استعدادیابی افراد

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

داستان‌های واقعی تعریف کنید
یکی از متداول‌ترین اتفاقاتی که در پروسهٔ تدریس برای مدرس رخ می‌دهد مواجه شدن با این سؤال است که به طور مثال هدف از یادگیری فلان چیز چیست؟ در این راستا، همواره سعی کنید از یکسری به اصطلاح Use Case واقعی بهره بگیرید و به ایشان نشان دهید که مثلاً هَش کردن دیتای حساس کاربران چه تأثیر مثبتی در حفظ حریم خصوصی ایشان دارد (برای آشنایی بیشتر با اهمیت تعریف کردن داستان‌های واقعی، می‌توانید به مقالهٔ Storytelling: ابزاری به نام داستان‌گویی کلید موفقیت در بازاریابی محتوا است! مراجعه نمایید.)

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



هانیه نیرومند جلالی