پنج‌شنبه ۱ آذر ۱۴۰۳ |  عضویت / ورود

چه شد که من به برنامه نویسی علاقه‌مند شدم؟ (معرفی سرویس CodeHS)


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

یا مثلاً همانطور که در مطلب «یک خواهش از مدرسین زبان C : با نرم افزار Scratch آشنا شوید» گفته بودم، Scratch یک انقلاب در تدریس برنامه‌نویسی به حساب می‌آید!

از وقتی این برنامه را در تدریس برنامه‌نویسی به کار گرفته‌ام اشتیاق عجیبی در دانشجوها برای یادگیری برنامه‌نویسی می‌بینم. (نسبت به آن بیزاری که قبلاً وجود داشت، واقعاً متفاوت است) مثلاً این نظر که در این ترم و بعد از به کارگیری Scratch در درس مبانی برنامه‌نویسی به دستم رسید را بخوانید:

سلام استاد.از بابت آموزش امروز ممنون.چون دیپلم من مرتبط نیست برنامه نویسی برام کمی سخت بود اما امروز خیلی برام راحت شد.مرسی

اما چه شد که من خودم به برنامه‌نویسی علاقه‌مند شدم؟

شاید روز اول دانشگاه (در دوره کارشناسی) برای من یکی از بهترین روزها بود! وقتی از دانشگاه برگشتم، خواهرم گفت: خوب مهندس! چه خبر از روز اول دانشگاه؟ :)

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

حالا جریان این روبات چه بود؟

استاد عزیزی که داشتیم (و من واقعاً مدیون او هستم و امیدوارم هر کجا هست موفق باشد)، روز اول را با یک بازی شروع کرد:

https://img.aftab.cc/news/92/robot_program.png

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

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

خلاصه فکر می‌کنم در آن کلاس، تنها کسی که به این روبات و برنامه‌هایش علاقه داشت و تحویل می‌داد من بودم!

این مسأله را خودم یک PDF کرده‌ام و در دروس مربتط با برنامه‌نویسی به دانشجویان می‌دهم که در موردش فکر کنند و حتی چند بار در دانشگاه‌ها مسابقه گذاشته‌ایم که ببینیم کدام دانشجو بالاخره می‌تواند این مسأله را حل کند و روبات بیچاره را از اتاق بیرون بیاورد؟

و اما چند روز پیش که در سایت Code.org گشت می‌زدم، چشمم به یک برنامه خورد که بسیار شبیه به این مسأله است:

https://img.aftab.cc/news/92/codehs.png


سایت رسمی آن Codehs.com است.

این پروژه هم چیزی شبیه به آن روبات است. فقط اینجا یک سگ داریم به نام Karel که گوش به فرمان شماست. این سگ چند دستور بیشتر نمی‌فهمد:

move(); یک حرکت به جلو
takeBall(); توپ را برمی‌دارد
putBall(); توپ را زمین می‌گذارد
turnLeft(); به سمت چپ می‌چرخد

بقیه دستورات را می‌توانید خودتان بسازید. مثلاً اگر می‌خواهید به سمت راست بچرخد می‌توانید یک تابع بسازید که با فراخوانی آن کارل سه بار به سمت چپ می‌چرخد (پس به سمت راست چرخیده).

این پروژه یک راهنمای جالب هم دارد که می‌توانید آن‌را طی کنید تا متوجه شوید روال به چه صورت است. ابتدا عضو سایت شوید و وارد Introduction to Karel کلیک کنید...

 

اما من فکر می‌کنم این پروژه می‌توانست بسیار بهتر باشد! معتقدم پروژه روبات استاد ما دوست‌داشتنی‌تر بود. مصر شده‌ام که چیزی شبیه به کارل اما با Robi خودم بسازم ;) فکر می‌کنم بسیار بسیار جالب‌تر از این کارل بشود... منتظر Robi باشید ;)

موفق باشید؛
حمید رضا نیرومند


[ارسال شده در مورخه : چهارشنبه، 15 آبان، 1392 توسط Hamid]
[ #معرفی سایت]



بازدیدها از این مطلب: 7679 بار   امتیاز متوسط :   تعداد آراء: 1   امتیاز دهید:

نظرات طرح شده

نام: [ کاربر جدید ]
ایمیل:

نظر:


اجازه استفاده از تگهای HTML را ندارید


جمع عدد 13 با 10 را در كادر زیر وارد نمایید:
(این كار برای جلوگیری از فعالیت موتورهای اسپمر است)


* توجه: نظر شما بعد از بررسی، نمایش داده خواهد شد.

امیر مسکنی (امتیاز : 0)(لینک نظر)
توسط امیر مسکنی در مورخه : چهارشنبه، 15 آبان، 1392
ما هم این ترم تازه برامون برنامه نویسی گذاشتند.

استادمون هم سواد بالایی داره ولی متاسفانه تو انتقالش مشکل داره

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

--

منتظر روبی جان هستیم


[ ارسال جوابیه ]


[بدون موضوع]                توسط xsbehx در مورخه : چهارشنبه، 15 آبان، 1392(لینک نظر)
سلام

من قبلا با این سایته کار کردم، ولی نصفه ولش کردم

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

پیشنهاد بهتری که به نظر من می رسه اینه که به سایت www.codecademy.com برن که سایت عالی برای کسایی که می خوان html و css و java و payton و ... کار کنن.

پیشنهاد من به دوستان اینه که هر دو سایت رو حتما امتحان کنید.

آقای مهندس نیرومند شما هم اگه با سایتcodecademy آشنا نیستید یه سری بزنید شاید باعث شد ایده بهتری به ذهنتون برسه


[ ارسال جوابیه ]


مجتبی                توسط مجتبی در مورخه : چهارشنبه، 15 آبان، 1392(لینک نظر)
سلام-اگه ممکنه فایل پی دی افی که گفتید برا دانلود بزارید- تا ما هم استفاده کنیم


[ ارسال جوابیه ]


[بدون موضوع]                توسط mhbitarafan در مورخه : جمعه، 17 آبان، 1392(لینک نظر)
خوش به حالتون

ما درس مبانی برنامه نویسی با یه استادی داشتیم که کلن 3-4 جلسه اومد و شاید باورتون نشه و نمیشه در صورتی که حقیقته :

استاد گفت هر کسی int main و return 0 رو توی امتحان بنویسه قبوله :(

دقیقا هم همینطور شد فقط 2-3 نفر که استاد باهاشون لج بود افتادن ...

بله ... همه ی این اتفاقات در یک دانشگاه دولتی و صنعتی افتاد ...

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

بله ... باورش سخته ولی حقیقتیست :(

کاش ما هم یک استادی مثل شما در دانشگاهمون داشتیم ... (البته یکی دوتا خوب هم داریم )


[ ارسال جوابیه ]

    Re: (امتیاز : 1)
    توسط mhbitarafan در مورخه : شنبه، 18 آبان، 1392
    تصحیح میکنم ...

    حدود 8-9 جلسه اومد ...


    [ ارسال جوابیه ]


پوریا (امتیاز : 0)(لینک نظر)
توسط پوریا در مورخه : سه شنبه، 24 دی، 1392
خیلی خوب بود


[ ارسال جوابیه ]