بررسی تاثیر یادگیری برنامهنویسی روی کودکان کم سن و سال:
اخیرا تولید برنامههای کدنویسیِ کامپیوتر برای کودکان، هم در میان معلمان و هم در میان تولیدکنندگان محصولات کامپیوتری رواج یافته است، اما همچنان اطلاعات نسبتا کمی در خصوص مهارتهایی که بچهها در هنگام کدنویسی به دست میآورند، وجود دارد. در سال 2018، آماندا استراکر و مارینا بِرس مقالهای را در خصوص تاثیرات شناختی کدنویسی بر روی کودکان بررسی کردهاند. این تحقیق که بر روی کودکان، در سه سطح کلاسی متفاوت صورت گرفته است، به ارزیابی این موضوع در طی یک دوره برنامه درسی پرداخته است. (مطابق جدول زیر)
مهارت های ScratchJr | مهارت ها | ماژول |
---|---|---|
– راهبری ScratchJr – نام گذاری پروژه ها – ایجاد کاراکتر ها و پشت صحنه های در ScratchJr – استفاده از بلوکه های ScratchJr برای برنامه نویسی کردن فعالیت کاراکترها شامل حرکات و ظاهر آنها – یک برنامه را خوانده و بگوید چه کاری انجام می دهد. برای مثال چگونه بازی آغاز می شود و چه کاراکترهایی حرکت خواهند کرد. | یک صحنه با استفاده از پشت صحنه ها، کاراکترها و فعالیت ها ایجاد می شود. فعالیت ها به صورتی انتخاب می شوند که که یک صحنه کولاژ جدید را ایجاد کند. | 1) درست کردن کولاژ تعاملی |
– از بلوکه های ScratchJr برای تغییرات داستان استفاده کند، برای مثال جابه جا کردن صفحه ها – از بلوکه های ScratchJr برای برنامه نویسی حرکت کاراکترها استفاده کند، که می تواند در برگیرنده سرعت حرکات و حلقه های تکرار شونده باشد. – صداها را ضبط کرده و از متن های کوتاه برای اضافه کردن بخش های داستان به صحنه استفاده کند. – هماهنگکردن کاراکترهای مختلف برای برنامه نویسی مکالمه ها و عکس العمل ها | از کاراکتر ها و پشت صحنه برای روایت داستان استفاده می کند. توالی از فعالیت ها، گفتگو ها، و یا پشت صحنه های جدید در نظر گرفته می شوند، به صورتی که یک ایده را به بهترین نحو به تصویر بکشد. ابتدا، میان و پایان داستان جدید را تعیین می کند. | 2) داستان متحرک |
– برنامه نویسی کردن انتقالات یا عکس العمل ها بر مبنای یک واقعه مشخص (برای مثال یک کاراکتر در صورتی باید عکس العمل نشان دهد، که توسط خود کاربر کلیک شده باشد.) – برنامه نویسی کردن انتقالات و عکس العمل های مختلف برای ایجاد کردن وقایعی مانند: “بردن” یا “باخت” | دستورالعمل های مشخصی را برای بازی مورد نظر برنامه ریزی می کند. از چندین روش مختلف برای طراحی بازی استفاده می کند تا برخی از بازیکن ها برنده و برخی ببازند. انتخاب ها و نتایج متنوع آنها را برای بازی می سازد. | 3) بازی تعاملی |
در این بررسی بچهها از ابزار برنامه نویسی Scratch Jr برای ایجاد داستانهای انیمیشن، بازیها و … استفاده میکنند، و در انتهای بازه برنامه درسی به ارزیابی دانش زبانی Scratch Jr و سایر مهارتهای اساسی کسب شده آنها میپردازد. به خصوص خطاهای بچهها در این ارزیابی مشخص میشود، تا بتوان با بهرهگیری از آن مهارتهای مبتنی بر استدلال، در حوزههای مشخص مانند ریاضیات، گفتار و … را تعیین نمود. نتایج این بررسی نشان میدهد که تمامی دانشآموزان مفاهیم پایهای کدنویسی را فرا گرفتهاند و در عین حال کودکان در سطح کلاسی متفاوت، تفاوتهایی را نیز در عملکرد و ادراک داشتهاند. این تفاوت نشاندهنده این موضوع میباشد که سطح رشد شناختی یکی از عوامل مهمی میباشد، که در هنگام پژوهش باید مورد توجه قرار بگیرد.
شکل 1: در طی فراگیری ScratchJr بچههای میتوانند آزادانه در کلاس حرکت کنند و با یکدیگر ارتباط و همکاری متقابل داشته باشند.
بر خلاف ایده عمومی در رابطه با ماهیت ریاضیاتی دانش برنامه نویسی، این تحقیق نشان داده است که مهارتهای استدلالی در حوزه اجتماعی، گفتاری، مکانی و روزمره نقش اساسی را در یادگیری برنامه نویسی کودکان ایفا میکنند. به جز مهارتهای استدلالیِ روزمره که شامل مهارت استدلال کردن منطقی میباشد، سایر مهارتهای استدلالی در طراحی ابزارهای برنامه نویسی برای کودکان در نظر گرفته نمیشوند. این تحقیق میتواند به خوبی نمایانگر تجربههای برنامه نویسی مبتنی بر پروژه و میان رشتهای برای کودکان کم سن و سال باشد.
این کودکان میتوانند اکتشافات فیزیکی، مبتنی بر داستان و در قالب همکاریهای متقابل با یکدیگر را همراه با کدنویسی فرابگیرند. طراحان تکنولوژیهای آموزشی نیز باید این موارد را در برنامههای خود بگنجانند.
برای مثال: محیطهای برنامه نویسی چند نفره میتواند مهارت استدلال سنجی اجتماعی را ایجاد کند، پلت فرمهای برنامه نویسی واقعیت افزوده میتواند از تجربیات مکانی کودکان پشتیبانی کند و زبانهای برنامه نویسی که قواعد نحوی زبان گفتار را نشان میدهند، میتوانند مهارت استدلالی گفتاری کودکان را درگیر کنند.
همچنین این مطالعه اهمیت معرفی برنامه نویسی و کدنویسی در سنین پایین را نیز نشان میدهد. کودکان در این پژوهش تسلط و خلاقیت در کد نویسی را پیدا کردهاند و هیچ یک از آنها ضعف در فهم مفاهیم پایهای نداشتهاند.
شکل 2: محیط Scrtach Jr . این واسط نرم افزاری شامل سه قسمت میباشد : A) یک محیط کاری که در آن بلوکهها قرار داده میشود. B) یک استیج که در آن کاراکترها برنامه را اجرا میکنند. C) لیستی از تمامی کاراکترهای روی صحنه D) یک گالری شامل استیج، محیط کاری و کاراکتر جدید
اما Scratch Jr چیست؟
Scratch Jr یک زبان برنامه نویسی مقدماتی میباشد که کودکان 5 تا 7 سال را قادر میسازد تا بتوانند داستانها و بازیهای تعاملی خود را بسازند. کودکان باید بلوکههای برنامه نویسی گرافیکی را به یکدیگر بچسبانند تا بتوانند به کاراکترها دستوراتی مانند حرکت کردن، پریدن، صحبت.. کردن و … را بدهند. کودکان میتوانند کاراکترها را در ویرایشگر نقاشی تغییر دهند و صدای خود و یا حتی تصاویر خود را به آن اضافه کنند.
Scratch Jr توسط دانشگاه MIT ایجاد شده است، و از زبان برنامه نویسی Scratch که توسط میلیونها نوجوان دارای سن بالای 8 سال مورد استفاده قرار میگیرد، الهام گرفته شده است. به منظور ایجاد Scratch Jr آنها Scratch را باز طراحی کردهاند، تا بتواند مناسب کودکان کم و سن و سال شده، و البته ویژگیهایی مطابق رشد شناختی، اجتماعی، شخصی و احساسی آنها داشته باشد.