بسم الله الرحمن الرحیم
سلام علیکم
فکر می کنید اولین و مهم ترین ویژگی مدرس برنامه نویسی چیست ؟
بارها از بزرگان یاد گرفتیم که می گویند که (( معلم باید اندیشیدن را یاد بدهد نه اندیشه ها را )) .
در واقع او باید نوع تفکر کردن را به مخاطبش یاد بدهد نه اینکه فقط یک انباری از اطلاعات در ذهن افراد درست کند.
اما در برنامه نویسی چه طور می شود این چنین فردی رو تربیت کرد ؟
یکی از دوستان می گفت که تا دو سال که در حال یادگیری برنامه نویسی بودم و فیلم های زیادی نگاه کرده بودم مشکلی که داشتم این بود که بعد از تمام شدن فیلم آموزشی , مسیر یادم می رفت و فراموش می کردم که چه طور این همه کد کنار هم سوار شد . و برنامه به این جا رسید . با این که فیلم های زیادی از اساتید دیده بودم ولی باز هم مسیر ذهنی من شکل نمی گرفت . با توجه به این که در جاهای مختلف از نرم افزار گیت شنیده بودم که نرم افزار خوبی هست ولی چون چند بار در نصب و به کارگیری آن شکست خورده بودم از آن استفاده نمی کردم . تا این که یک روزی در میان یکی از این فیلم های آموزشی , مدرس محترم هر بار که یک جلسه آموزشی تمام می شد کدهای آن جلسه رو در نرم افزار گیت هم بررسی می کرد و با ویرایشگر وی اس کد و گزینه دیدن آخرین تغییرات , در پایان جلسه به بررسی و مرور آخرین تغییرات انجام شده می پرداخت .
وقتی این ویژگی بی نظیر گیت رو بعد از دوسال در وسط یک فیلم آموزشی دیدم خیلی راغب شدم که هر جور شده گیت رو نصب کنم و بتوانم از آن استفاده کنم . و بلافاصله آموزش های دیگر را قطع کردم و شروع به یادگرفتن گیت از چندین منبع آموزشی کردم .
نتیجه این تلاش خیلی فوق العاده بود. توانستم با فیلم های چندین مدرس و تکمیل کردن و ترکیب کردن آموزش های این فیلم ها گیت رو راه اندازی کنم و بتوانم از آن استفاده کنم .
نرم افزار گیت دقیقا همان مشکل من را برطرف می کرد و با فرستادن کد های هر جلسه به گیت می توانستم تغییرات رو در جلسه های مختلف یادگیری , ببینم و با یادداشت هایی که در کنار کدها قرار می دادم کاملا مسیر رسیدن به کدهای پایانی در ذهنم شکل می گرفت .و با پایان جلسات امکان مرور تمام مسیر برای من میسر می شد.
این تجربه بی نظیر از یکی از دوستان نکات جالبی رو همراه خودش دارد :
چرا تمام مدرسان این فرد در طول این دو سال به آموزش گیت در حین تدریس نپرداخته اند ؟ تا او به جای اینکه دوسال به خاطر فراموشی مسیر آموزش دچار سردرگمی شود از همان اول از این ابزار بی نظیر بتواند استفاده کند.
در واقع جمله اولی که اشاره شد که معلم باید اندیشیدن را یاد بدهد نه اندیشه ها را , دقیقا در همین جا مصداق پیدا می کند یکی از ابزارهای بی نظیر برای کمک کردن به تقویت اندیشیدن در برنامه نویسی همین ابزار گیت هست به دلیل اینکه شما دائما می توانید مسیر را مرور کنید و روش های مختلف و سبک برنامه نویسی در ذهن شما شکل بگیرد. پس یکی از ویژگی های مدرس برنامه نویسی این است که قبل از همه چیز ابزار اندیشیدن را به دانش پژوه برنامه نویسی یادبدهد که متاسفانه این مورد به ندرت اتفاق می افتد .
روشی که آن مدرس برای شناساندن ابزار گیت و ویژگی ممتاز اون به این فرد انجام داد چه بود ؟ دقیقا آن مدرس با استفاده مکرر خود باعث شناساندن ویژگی نرم افزار گیت به این دانش پژوه برنامه نویسی شد . یعنی او به جای اینکه مدام بگوید از گیت استفاده کنید خودش اون نرم افزار رو در حین تدریس نصب کرد و هم اینکه به صورت پی در پی از آن در طرح استفاده کرد تا فرد به صورت شهودی کاربرد این ابزار را ببیند و خودش مشتاقانه به دنبال این ابزار برود .
پس ویژگی دوم مدرس برنامه نویسی این است که به جای مدام گفتن اسم ابزارها , خودش مکرر از آنها در حین تدریس استفاده کند تا خود دانشجو بتواند به صورت اختیاری و از روی اشتیاق به دنبال این ویژگی برود.
خیلی از اوقات انسان ها به دنبال یک مسیری و برای یافتن چیزی می روند ولی چیز دیگری پیدا می کنند و مسیر دیگری به رویشان باز می شود .پیشنها می کنم کتاب سطح عمیق رو بخونید . هنگام ضبط فیلم آموزشی مدرس نباید فقط هدفش یاددادن خود زبان برنامه نویسی باشد باید به ابزارهای مکمل برنامه نویسی و چیزهای که خودش به تجربه به آن ها رسیده هم نگاهی بکند و ای بسا خود این تجربه و ابزارها از یادگیری زبان مورد نظر بیشتر برای مخاطب سود داشته باشد .
در واقع یادگیری سبک زندگی برنامه نویسی , بیشتر از خود زبان مورد نظر , برای مخاطب کاربرد دارد.
// in the name of the universe programmer if ( می خواهی برنامه نویس بشی ){ ویژگی های معلم خوب(); } function ویژگی های معلم خوب() { const معلم خوب برنامه نویسی = { یاد دادن اندیشیدن , نگاه جامع به سبک زندگی برنامه نویس, دانستن نیازهای یک برنامه نویس, } }