لماذا يعتبر Scratch أفضل منصة للأطفال لتعلم البرمجة
في اللحظة التي أنشأت فيها ابنتي مشروعها الأول في سكراتش – وهو رسم متحرك بسيط لقطة تطارد فراشة – تغيرت علاقتها بالكمبيوتر بالكامل. فجأة، لم تعد تستهلك المحتوى فحسب؛ لقد كانت هي التي تجعل الأشياء تحدث على الشاشة. وبعد عامين ومشاريع لا تعد ولا تحصى، أستطيع أن أوضح بالضبط سبب كون لغة Scratch لغة برمجة رائعة للأطفال وملعبًا إبداعيًا ممتازًا للعقول الشابة مثلها بشكل عام.
تعرف على سكراتش: لغة برمجة يحبها الأطفال
تم تطوير برنامج Scratch بواسطة مختبر الوسائط بمعهد ماساتشوستس للتكنولوجيا (MIT Media Lab) في أوائل العقد الأول من القرن الحادي والعشرين، وهو عبارة عن ملعب ملون وبديهي يمكن للأطفال من خلاله تجسيد أفكارهم على أرض الواقع.
على عكس لغات البرمجة التقليدية التي يمكن أن تربك الأطفال بتركيب جملة معقد وفاصلة منقوطة مبهمة، يستخدم Scratch منهجًا مرئيًا منطقيًا تمامًا للعقول الصغيرة.
يتم تمثيل كل مفهوم برمجة بواسطة كتلة ملونة مميزة: اللون الأرجواني للمظهر، والأزرق للحركة، والأصفر للتحكم، وما إلى ذلك. يتم تجميع هذه الكتل معًا مثل قطع الألغاز بطرق منطقية، وستندهش من مقدار ما يمكنك فعله بها.
هل تريد تحريك الشخصية عند الضغط على شريط المسافة؟ ما عليك سوى الحصول على كتلة “الحدث”. هل تحتاج إلى تذكر اسم اللاعب طوال اللعبة؟ إنشاء متغير بنقرة واحدة. هذه المفاهيم التي قد تبدو مخيفة في دورة البرمجة التقليدية تصبح طبيعية مثل البناء باستخدام الكتل.
حتى الوظائف، وهي مفهوم يمكن أن يتحدى المتعلمين البالغين، تظهر بشكل طبيعي في سكراتش. عندما أدركت ابنتي أنها تريد أن يؤدي العديد من شخصياتها نفس روتين الرقص، اكتشفت أنها تستطيع إنشاء كتلة مخصصة في قسم “My Blocks” لتجنب تكرار نفس الكود.
أفضل جزء؟ على عكس لغات البرمجة التقليدية للمبتدئين، حيث غالبًا ما ترى مجرد إخراج نص في نافذة طرفية مملة، فإن كل ما تقوم بإنشائه في Scratch يأتي حيًا على الفور على الشاشة. بنقرة واحدة على العلم الأخضر، تمكنت ابنتي من مشاهدة شخصياتها وهي ترقص، وتتفاعل، وتتحرك تمامًا كما تخيلتها.
الشروع في العمل مع سكراتش
البدء باستخدام Scratch لا يمكن أن يكون أسهل. يتم تشغيله مباشرة في متصفح الويب الخاص بك على موقعcratch.mit.edu، على الرغم من وجود إصدار قابل للتنزيل متاح أيضًا لأنظمة التشغيل Windows وmacOS وChromeOS وAndroid إذا كنت تفضل العمل دون اتصال بالإنترنت. لقد اخترنا إصدار الويب نظرًا لأن ابنتي تستخدم Raspberry Pi كجهاز كمبيوتر خاص بها (الإصدار غير المتصل بالإنترنت لا يدعم Linux).
بينما يمكنك البدء في إنشاء المشاريع على الفور بدون حساب، فقد قررت إنشاء حساب لابنتي حتى تتمكن من حفظ عملها والانضمام إلى مجتمع المبدعين الشباب.
في أول إبداع لها، قررنا إبقاء الأمور بسيطة: رسم متحرك لقطة تطارد فراشة. إحدى ميزات Scratch الأكثر جاذبية هي مكتبتها الواسعة من العفاريت – شخصيات وكائنات متحركة معدة مسبقًا يمكن للأطفال استخدامها في مشاريعهم، لذا فإن إضافة الفراشة كان سهلاً مثل النقر على زر “اختيار العفريت”. ومن الملائم أن كائن القطة موجود بالفعل بشكل افتراضي، لذلك لم نكن بحاجة إلى إضافة ذلك.
وبمجرد إعداد المسرح، فقد حان الوقت لإضافة بعض المنطق. لقد أوضحت لابنتي كيفية استخدام كتل الأحداث مثل “متى”. [space] تم الضغط على المفتاح” لجعل القطة تقترب من الفراشة. استخدمنا كتل حركة بسيطة مثل “التحرك”. [10] خطوات”، مما سمح لها برؤية نتيجة أوامرها على الفور. ولجعلها تفاعلية، أضفنا فحصًا شرطيًا باستخدام كتلة “if” لاكتشاف متى لمست القطة الفراشة. عندما حدث ذلك، قمنا بتشغيل كتلة صوتية حتى تتمكن القطة من المواء.
إن بساطة سحب هذه الكتل والتقاطها معًا جعلت من السهل عليها فهم تدفق الإجراءات. حتى في هذه المرحلة المبكرة، أدركت المنطق الكامن وراء عبارات “إذا – إذن” والبرمجة القائمة على الأحداث دون أن تدرك أنها كانت تتعلم مفاهيم البرمجة الأساسية.
التحديات الرئيسية مع سكراتش
على الرغم من أن برنامج Scratch مصمم ليكون صديقًا للأطفال، إلا أننا واجهنا عقبتين على طول الطريق. وإليكم كيف تعاملنا معهم.
صراعات القراءة المبكرة
أكبر عقبة أولية لم تكن تقنية على الإطلاق، بل كانت معرفة القراءة والكتابة. عندما بدأنا باستخدام Scratch لأول مرة، لم تكن مهارات القراءة لدى ابنتي متطورة بما يكفي لفهم جميع أوصاف الكتل وتسميات الأزرار بشكل مستقل.
وبدلاً من أن أدع هذا يعيقها، حولتها إلى فرصة لوقت التعلم المشترك. جلست معها أثناء جلسات البرمجة المبكرة، أقرأ الملصقات وأشرح لها ما تفعله الكتل المختلفة. وفي غضون بضعة أشهر، كانت تقرأ أوصاف المجموعة بنفسها، وتوسعت مفرداتها البرمجية ومعرفتها بالتكنولوجيا بشكل طبيعي جنبًا إلى جنب مع مهارات القراءة لديها.
حدود حجم المشروع
التحدي الفني الوحيد الذي واجهناه جاء من حدود أصول مشروع Scratch. كما ترى، يمكن أن يحتوي كل مشروع على أصول متعددة، ولكن يجب أن يصل حجم كل أصل إلى 10 ميغابايت. في حين أن هذا كثير بالنسبة للعفاريت والمؤثرات الصوتية القصيرة، إلا أننا لا نزال نواجه مشكلات في الحجم عندما بدأت ابنتي في إضافة موسيقى خلفية من إنتاجها الخاص.
كان الحل هو أن تكون أكثر ذكاءً فيما يتعلق بالملفات الصوتية. بدلاً من استخدام ملفات WAV التي تأتي مباشرة من التسجيل، بدأنا في تحويلها إلى تنسيق MP3 باستخدام Audacity، وهو محرر صوتي مجاني. يؤدي هذا الضغط عادةً إلى تقليل أحجام الملفات بنسبة 80-90% مع الحفاظ على جودة صوت مقبولة.
ما بعد الصفر: ماذا يأتي بعد ذلك؟
على الرغم من روعة برنامج Scratch في تقديم مفاهيم البرمجة من خلال الكتل المرئية التي يجدها الأطفال جذابة، فقد يأتي وقت قد يرغب فيه المبرمجون الصغار في استكشاف البرمجة القائمة على النصوص. ففي النهاية، هذا هو ما تعنيه البرمجة الحقيقية.
ابنتي ليست مستعدة تمامًا للبرمجة النصية الكاملة بعد، لذلك نحن نتخذ خطوة وسيطة مع MakeCode من Microsoft، والذي يشبه إلى حد كبير برنامج Scratch لأنه يستخدم أيضًا الكتل لتعليم البرمجة. ولكن على عكس Scratch، يسمح MakeCode أيضًا للمبرمجين الشباب بالتبديل إلى البرمجة المستندة إلى النصوص وتنفيذ منطق أكثر تقدمًا في JavaScript أو Python.
بالنسبة للأطفال الأكبر سنًا المستعدين للتعمق مباشرة في اللغات القائمة على النصوص، تمثل لغة Python وJavaScript نقطة انطلاق ممتازة. يقدم كلاهما تركيبًا واضحًا وقابلاً للقراءة ومكتبات شاملة لإنشاء الألعاب والرسومات، وهو مثالي للمبرمجين الشباب الذين يرغبون في البناء على المفاهيم التي تعلموها في Scratch.
صورة الغلاف ولقطات الشاشة بواسطة David Morelo.
اشترك في النشرة الإخبارية لدينا!
يتم تسليم أحدث البرامج التعليمية لدينا مباشرة إلى صندوق البريد الوارد الخاص بك
اكتشاف المزيد من تكتك تكنولوجيا
اشترك للحصول على أحدث التدوينات المرسلة إلى بريدك الإلكتروني.