مترجم عطیه مددینژاد – من در خانوادهای هنری بزرگ شدم – خلاقیت در خونمان است. من کودکی هستم که همه چیز، از باله و تئاتر تا شرکت در ار دو نویسندگی را انجام دادهام. آیا منِ پیشدبستانی در زمینهٔ علوم رایانهای کاری انجام دادهام؟ نه. یاد گرفتم چگونه کُدگذاری کنم؟ مطمئناً نه – دهه ۱۹۸۰ بود!
با این همه، پس از مطالعه دربارهٔ آموزش سالهای نخست دوران کودکی و روانشناسی رشد، این موضوع را دریافتم که کُدگذاری از پیشینهٔ هنریام دور نیست. در حقیقت، کُدگذاری خود فعالیتی خلاق است و هر دو نیمکرهٔ مغز ما را درگیر میکند. در واقع، «انجمن ملی آموزش کودکان خردسال» اظهار داشت: «کُدگذاریِ زودهنگام یا پیشکُدگذاری، تجربههایی را برای کودکان فراهم میکند که سبب یکپارچگی ارتباط، تفکر و حل مسئله میشود. اینها مهارتهای سده بیستویکم میلادی هستند که برای موفقیت آیندهٔ کودکان در جهان دیجیتال ما ارزشمند هستند».
پس «پیشکُدگذاری» چیست و چرا آموزش آن به کودکان، پیش از ورود به مهد کودک مهم است؟ کُدگذاری، برنامهنویسی نیز نامیده میشود. کُدگذاری به سادگیِ گفتن کاری است که رایانه آن را میخواهید انجام دهد. یک برنامهٔ رایانهای فهرستی از دستورالعملهای ویژه و گامبهگام است که به یک رایانه میگوید چه کاری انجام دهد. در اینباره فکر کنید – هنگامی که به کودکی دستور میدهید تا در هنگام قصهگویی، چهارزانو روی فرش بنشیند، کودکان بهطور غریزی درمییابند که چهکار باید بکنند، زیرا این مراحل در حافظهٔ ماهیچهای بدن آنان هست. با این همه، مراحل بسیاری دارد: مفصل ران هر دو پا را با فاصلهٔ عرضی در کنار هم بگذارید، زانوها را بهآرامی خَم کنید، بهشکل ضربدر یک پا جلوی پای دیگر قرار بگیرد، سپس پایتان را روی زمین رها کنید. ترتیب این مراحل نیز مهم است. اگر کودکی پیش از خَم کردن زانو، بخش تحتانی بدنش را رها کند، چهطور؟ آخ! خوشبختانه برای رسیدن به نشستن مطلوب، به کُدگذاری بدن نیازی نداریم.
با این همه، همین دانش ذاتی که بدن ما با آن کارها را انجام میدهد، رایانه آن را نیز ندارد. یک رایانه برای انجام دادن دستور مورد نظر شما، به دستورالعملهای مرحله به مرحله نیاز دارد. این دستورالعملهای گامبهگام، زبان کامپیوتر است.
کُدگذاری، کودکان پیشدبستانی را ترغیب میکند تا دربارهٔ کارایی و چیزی به نام تجزیه، بیاندیشند – مسئلهای را بتوانند بازگو کنند و منطقی فکر کنند تا آن را طی مراحل سادهتری از میان بردارند. هنگامی که کودک اشتباه میکند چه اتفاقی رخ میدهد؟ کُدگذاری بچهها را به اشتباه کردن تشویق میکند، زیرا یادگیری دستاورد آزمون و خطا است. درست مانند یادگیری طراحی رقص برای اجرای آن، یا جاگیری درست انگشتها برای نواختن فلوت؛ کُدگذاری یافتن مراحل درست با ترتیب مناسب برای دستیابی به نتیجهٔ دلخواه است. در این روش، کُدگذاری خلاقانه است! کُدگذاری تجربه کردن، بازی کردن و طراحی است.
پیشدبستانیهای ۲۰۲۰، کودکان دیجیتالی هستند. آنها سیستمهای کامپیوتری را در تبلتها و تلفنهای همراه هوشمند و در کنار خواندن، نوشتن و ریاضی میآموزند. یک بنیاد کُدگذاری به کودکان پیشدبستانی کمک میکند تا مانند حلال مشکلات، متفکران انتقادی، و حتی کارآگاهان، آغاز به فکر کردن کنند. چگونه این رمز و راز را میتوان تجزیه کرد تا پاسخ را کشف کنیم؟ چگونه خطا (bug)ی کامپیوتری یا مشکل فنی را از میان برداریم؟
«داگلاس روشکوف»[۱]، استاد تئوری رسانهای و اقتصادهای دیجیتالی «کالج کوئینز دانشگاه شهر نیویورک»، بر این باور است که سواد کُدگذاری نیاز سدهٔ بیستویکم است.
او استدلال میکند که نهتنها مهارتهایی همچون تفکر انتقادی و حل مسئله را ایجاد میکند، بلکه «یادگیری کُدگذاری – و انجام دادن این کار در بستر اجتماعی – مردم را با ارزشهای یک جامعه دیجیتالی آشنا میسازد: همکاری، تشریک مساعی و اشتراکگذاری، بهجای ارزشهای دوران صنعتی یعنی پنهانکاری یا احتکار دانش هستند.»
بیشترین پیشکُدگذاری یا کُدگذاری اولیه بهشکل مشترک انجام میشود، و مهارتهای احساسی – اجتماعی مانند تابآوری اضطراب و تعدیل عواطف را برمیانگیزد. در سطح جهانی آرزو میکنم بهجای آن که خودمان را به رقابت تحریک کنیم، دلگرمی و همکاری بیشتر با یکدیگر را پرورش دهیم.
بنابراین پیشکُدگذاری با کودک پیشدبستانی را از کجا آغاز میکنید؟ زینههای بسیاری هست. بیگمان به این که شما اعجوبهٔ کامپیوتری باشید، نیازی ندارید! اگر در کار پیشکُدگذاری تازهوارد هستید، پیشنهاد میکنم بدون بهکارگیری از فناوری آغاز کنید. سپس چند اسباببازی دارای فناوری و تا اندازهای ارزان خریداری کنید که ترسناک نباشند. خواهش میکنم آگاه باشید که چنین اسباببازیها بسیارند و شرکتهای فراوانی این فراوردهها را میفروشند. من هیچ نشان تجاری ویژهای را تأیید نمیکنم؛ در اینجا به برخی از علاقهمندیهای کنونیام اشاره میکنم.
برای کودکان نوپا و پیشدبستانی: زبان و الگوهای جهتدار
کُدگذاری را مانند هر زبانی، از راه شناخت الفبای آن زبان، ساختار و دیگر موارد آن میآموزیم. مانند حروف که واژهها را میسازند، واژگان جمله، جملهها پاراگراف، و پاراگرافها به یک کتاب تبدیل میشوند! به این ترتیب، بهرهمندی از سخن جهتدار و تمرین ترتیبدهی ساده راهی عالی برای آغاز آموزش کُدگذاری به پیشدبستانیها است. بهکارگیری از واژگان مفهومی مانند جلو، عقب، بالا و پایین به پیشدبستانیها، چارچوبی را برای شناخت ترتیب فراهم میکند. انجام دادن بازیهای الگویی، مانند ساختن ترتیب با اسمارتیز و آبنباتها (قرمز، آبی، قرمز، آبی)، بنیاد شناخت این مسئله را میسازند که کُدگذاری فهرستی از کارهای به ترتیب از پیش تعیینشده است.
فعالیتهای کُدگذاری بدون صفحهٔ نمایش
در گفتوگویی گروهی، از کودکان بپرسید آنها چگونه فعالیتها مختلفی مانند پوشیدن پیژامه یا لباس خواب، کتاب خواندن یا دستشویی رفتن را انجام میدهند.
آنها شاید فعالیتی را توصیف کنند، داستان بگویند، یا دربارهٔ آنچه انجام میدهند، سخن بگویند. اما همچنان که با آنها گفتوگو میکنید، داستان را حتی به یک توالی مرحلهبهمرحله تبدیل کنید. از واژگان جهتدار مانند «سپس» بهره ببرید.
برای نمونه، برای پیژامه یا لباس خواب پوشیدن:
۱. اول لباس خوابت را پیدا میکنی؛
۲. سپس، لباس خوابت را برمیدارید؛
۳. بعد، یک پا را برمیدارید و لباس خواب را پا میکنید؛
۴. سپس، پای دیگرتان را بلند میکنید و شلوار را به پایتان میکنید؛
۵. اگر نخستینبار لباس را نتوانید بپوشید دوباره کوشش میکنید؛
۶. دکمهها یا زیپ لباس خوابتان را میبندید.
این مرحلهها را بیشتر نیز میتوانید انجام دهید و از بچهها بخواهید هر مرحله را حتی بیشتر بخشبندی کنند: برای پیدا کردن لباس خوابتان، باید بهسمت کمدتان بروید، دستگیره را بگیرید، کشو را باز کنید، و … . احتمالات بیپایان است. شما همچنین میتوانیدکودکی کنید و بپرسید «چه اتفاقی میافتد اگر پیش از پوشیدن لباس خوابتان، دکمههای آن را ببندید؟» این کار بهعنوان«اِشکال» در کُدگذاری میتواند بهشمار آید، و با گذاردن مراحل به ترتیب درست، کُد را «رَفع اِشکال» کنید.
یکی دیگر از فعالیتهای کُدگذاری بدون صفحه نمایش، انجام دادن فعالیتهایی با این واژهها است: سپس / در حالی / بَعد
رایانه دستورالعملهای شما را تنها در صورت تحقق شرط خاص انجام میدهد. این کُدگذاریِ مشروط نامیده میشود. شما، مراقب یا آموزگار، کُدگذار خواهید بود و کودک مانند رایانه. پس به او بگویید، «در حالی که من این کار را انجام میدهم، شما آن کار را انجام دهید». برای نمونه، «در حالی که من ظرفها را میشویم، شما دندانهایتان را مسواک بزنید.» یا «در حالی که من شکمم را میمالم، شما بالا و پایین بپرید.» سپس اجازه دهید کودک، کُدگذار باشد! این کار به کودکان میآموزد رایانه هنگامی کاری را انجام میدهد که به زبانی که میفهمد به آن دستور بدهیم.
واژههای «اگر» و « سپس» مانند هم هستند. «اگر من شکمم را مالیدم، شما به بالا و پایین بپرید.» این بازی بسیار مانند بازی «معلم میگه»[۲] است. این کار را هر اندازه که میخواهید پیچیده یا ساده میتوانید انجام دهید. اگر بخش نخست کُد (یا دستور) را انجام میدهید، موضوع این است که چه رایانه و چه کودک، تنها آنچه را دستور بدهید، انجام میدهند. بنابراین در نمونهٔ بالا، اگر شما گوشهایتان را مالش دادید یا کاری انجام نمیدهید، کودک نباید بالا و پایین بپرد.
به اشتراکگذاری کتابهای کُدگذاری در قصهگویی
کتابهای ویژهای در زمینه کُدگذاری مانند «چگونگی کُدگذاری برای ساخت قلعهٔ شنی»[۳] نوشتهٔ «جاش فانک»[۴] و یا کتاب جدیدش «چگونگی کُدگذاری ترن هوایی»[۵] وجود دارد، اما مایلم بهطور گستردهتری به کتابهای کُدگذاری در زمینهٔ قصهگویی فکر کنم. کتابهای تصویری دربارهٔ حل مشکلات و دستورالعملها، نمونههای خوبی هستند. هر کتابی که پیشبینیکنندهٔ رویدادهای بعدی یا دنبالهرو الگوها باشد، گزینههای خوبی هستند. (به افسانههایی مانند «گلدیلاکس و سه خرس»[۶] فکر کنید که الگوهایی مانند «نه خیلی سرد»، «نه خیلی نرم»، و مانند آن تکرار میشود.) آوردن کتاب دربارهٔ روباتها و فناوریهای دیگر، روش دیگری برای معرفی کُدگذاری است. بهراستی شما میتوانید از هر کتابی بهعنوان پایه بهره ببرید و کُدگذاری متناسب با آن، و سبک داستانتان را باهم ادغام کنید. کتابهای زیر برخی از علاقههای من است:
- «اگر شما یک روبات هستید و این را میدانید»، نوشتهٔ «دیوید کارتر»[۷]
- «پسر + روبات»، نوشتهٔ «ایمی دایکمن»[۸]
- «نجات یک بادبادک»، نوشتهٔ ا«ُلیور جِفِرز»[۹]
- «عروسک ۰ و ۱»، نوشتهٔ «شاندا مک کلوزکی»[۱۰]
- «خانهای در جنگل»، نوشتهٔ «اینگا مور»[۱۱]
- «چون آملیا لبخند زد»، نوشتهٔ «دیوید اِزرا آستین»[۱۲]
- «بیب! بیب! برو بخواب!» نوشتهٔ «تاد تارپلی»[۱۳]
دستبند یا زنجیره کُدگذاری
کامپیوترها کُد را در سیستم صفر و یک میخوانند و آن را به زبان «اَسکی»[۱۴] ASCII ترجمه میکنند. زنجیرهٔ ویژهای از کُد آشکار میکند که کامپیوتر چه عدد، حروف و نمادی را درک میکند. چون تنها دو گزینه برای کُدنویسی هست، پس آنها را کُدهای «دو دویی»[۱۵] مینامند. بچهها برای این پروژه با بهکارگیری از کُد دو دویی، نخست حرف اول یا نام خود را هجی میکنند. آنها یک رنگ را برای عدد یک و رنگ دیگر را برای صفر انتخاب میکنند، آنها حرف اول یا نام خودشان را برابر با الفبای ASCII مینویسند، سپس از دو رنگِ مهرههایی که انتخاب کردهاند، برای «کُدگذاری» حرف اول نامشان را با آن رنگها روی یک دستبند بهکار میبرند.
بهرهمندی از فناوری پیشکُدگذاری، مانند روباتها و بازیهای کُدگذاری
شمار فراوانی بازی و اسباببازی پیشکُدگذاری شده برای خرید در بازار وجود دارد. گرچه هیچکدام از آنها ایدهآل نیستند و دیدگاههای متفاوتی دربارهشان هست، آنهایی را که دوست دارم، با شما در میان میگذارم.
- «مسیر خرگوش کوچولو»[۱۶] محصول «فیوچر کُدرز الکس تویز»[۱۷]
در این بازی، به خرگوش کوچولو کمک میکنید تا مسیری را در میان باغ پیدا کند.
شما کاشیهایی با خطهای سیاه روی تخته میگذارید تا مسیری را برای یافتن هویجهای خوشمزه ایجاد کنید. با این همه، بازدارندههایی مانند زنبورها، روباهها و دریچههایی در مسیر راه وجود دارد. بچهها باید با نقشه و متفکرانه برنامهریزی کنند تا خرگوش در مسیرش موفق باشد. بهترین بخش: اگر مسیری نادرست باشد، بچهها بهآسانی یک کاشی را برداشته و بهجای آن کاشی دیگری میگذارند! این بازی از روباتهای دیگری که با دکمهها کار میکنند بسیار متفاوتتر است، زیرا نیاز نیست بازی را از ابتدا آغاز کنید. شما فقط یک کاشی را تغییر میدهید. - «مسابقات روبات»[۱۸] محصول « فیوچر کُدرز الکس تویز»
این بازی مانند نسخه موتوری بزرگی از «مسیر خرگوش کوچولو» است. در این بازی مانند «بازیِ فکری تویستر»[۱۹]، شما روبات هستید! سربندی به شکل روبات میبندید، کارتهای پیکان را روی یک تُشک بزرگ میگذارید، سپس مسیری را که رمزگذاری کردهاید، طی کنید و از رویارویی با بازدارندهها در مسیر راه، خودداری میکنید. هر دو بازیِ «برنامهنویسان آینده» کارتهایی از سطح ۱ تا سطح ۲۰ دارند، که هریک بهتدریج دشوارتر میشوند. - «کُد-ستون»[۲۰] محصول «فیشر-پرایس»[۲۱]
این روبات بخشهایی دارد که به کمک یک پورت USB ساده، بههم متصل میشوند. شما ستون کُد را به جلو، چپ و راست میتوانید بکشید. هر قطعهٔ روبات که حرکت میکند، روشن میشود. از این رو، بچهها کُد ایجاد شده را میتوانند ببینند. امکان بیش از هزار ترکیب وجود دارد. این اسباببازی، کودکان را به آزمایش و بازی باز تشویق میکند. تنها موضوعی که مرا آزار میدهد، سروصدای این اسباببازی است. من راهی برای خاموش کردن صدایش پیدا نکردهام، زیرا بسیار پُر سروصدا میتواند باشد. - «زنبورهای روباتیک»[۲۲] محصول شرکت «لِیکشور لِرنینگ»[۲۳] و «موش رباتیک»[۲۴] محصول شرکت «لِرنینگ ریسورس»[۲۵]
این دو محصول بسیار مانند هم کار میکنند. بچهها با فشار دادن دکمههای جهت دار، یک کُد را وارد میکنند (جلو، عقب، چپ، و راست). با فشردن دکمهٔ سبز «برو»، زنبور رباتیک یا موش رباتیک راهش را آغاز میکند! من از هر دوی این روباتها در برنامههای تصادفی، و همچنین در پایان وقت قصهگویی بهره بردهام. دوست دارم به بچهها یک هدف تصویری برای رفتن ارائه بدهم، مانند یک تکه پنیر برای بازی موش روباتیک یا یک کندوی عسل غولپیکر برای زنبور روباتیک. دادن هدفی دیداری به بچهها، این توانایی را میدهد تا در طول مسیر، مشکلات را حل کنند و این روبات را در کمترین مرحله، به هدف برساند.
بهترین راه برای بهرهمندی از این ایدهها چیست؟ این بر عهدهٔ شماست! نمونههای دلخواه من، برنامههای بازی کردن با سیستم باز است، مانند چیزی که در «کتابخانه گِیل بوردن»[۲۶] «فناوری خُرد»[۲۷] نامیده میشود.
روباتهای کُدگذاری را میتوانید پخش کنید، آنها را تنها برای استفاده در خانه و در پشت میز نگه دارید یا کیتهای علوم، فناوری، مهندسی و ریاضی [۲۸](STEM)را با ایدههای فعالیت تعاملی فراهم کنید. من فکر میکنم مهمترین موضوع، امتحان کردن است. بیگمان من بیشتر از این که دانشمند باشم، یک هنرمندم، اما تا هنگامی که کُدگذاری و روباتها را آزمایش نکرده بودم، متوجه نشدم برای کُدگذاری به خلاقیت نیاز دارم.
[۱] Douglas Rushkoff
[۲] Simon Says سایمون میگه یا معلم میگه، بازی کودکانهٔ سه نفره یا بیشتر است که در آن یک نفر نقش «معلم» را بازی میکند و دستورهایی (بیشتر کارهای بدنی) را میدهد. بازیکنان تنها هنگامی دستورها را باید انجام دهند که «معلم» در آغاز دستورش، عبارت «معلم میگه» را گفته باشد. بازیکنی که دستوری انجام دهد که ابتدایش «معلم میگه» گفته نشده یا دستوری را که شامل «معلم میگه» باشد، انجام ندهد، از بازی بیرون میرود
[۳] How to Code a Sandcastle
[۴] Josh Funk
[۵] How to Code a Rollercoaster
[۶] Goldilocks
[۷] If You’re A Robot And You Know It. by David Carter
[۸] Boy and Bot by Ame Dyckman
[۹] Stuck by Oliver Jeffers
[۱۰] Doll-E 1.۰ by Shanda McCloskey
[۱۱] A House in the Woods by Inga Moore
[۱۲] Because Amelia Smiled. by David Ezra Stein
[۱۳] Beep! Beep! Go to Sleep! by Todd Tarpley
[۱۴] American Standard Code for Information Interchange (ASCII)
«کُد استاندارد آمریکایی برای تبادل اطلاعات»
[۱۵] binary
[۱۶] Bunny Trails
[۱۷] Future Coders Alex Toys
[۱۸] Robot Races
[۱۹] Twister
[۲۰] Code-a-pillar
[۲۱] Fisher – Price
[۲۲] Bee-Bots
[۲۳] Lakeshore Learning
[۲۴] Robot Mouse
[۲۵] Learning Resources
[۲۶] Gail Borden Library
[۲۷] Tiny Tech
[۲۸] Science, Technology, Engineering and Math – STEM
Thank you!!1