سكراتش: بُعد آخر فى تطوير المهارات العقلية و الذاتية لدى الأطفال

عندما يُذكر أمامنا كلمة “مُبَرْمِج” يتبادر الى الأذهان أناس يدرسون علوم الحاسب و يعكفون على الخواريزمات و يستخدمون عدة لغات برمجة لا يجيدها إلا مَن فى نفس تخصصهم و يتحادثون مع بعضهم البعض بمصطلحات لا يفهمها الآخرون.
أصبحت أجهزة الحواسيب بمختلف أشكالها و فئاتها هى العنصر الأساسي فى حياة معظمنا اليوم. فنحن نستخدمها فى المذاكرة, فى العرض, فى انجاز الأعمال المختلفة و أيضا فى عملية التعليم و الترفيه, و لكن استخدام معظم فئات المجتمع لامكانات الحواسيب لا يتجاوز نطاق مستهلكي البرامج. أى أنك تشترى برنامج يقوم بمهام محددة و ينحصر دورك في استخدامه دون أن تتعدى هذا الدور الى محاولة استخدام الحواسيب استخدام آخر ايجابى تقوم فيه بصنع تطبيقات خاصة بك و تشاركها مع الآخرين.
هل تصورت يوما أن تكون البرمجة ثقافة مجتمع و أداة سهلة متاحة فى أيدى الجميع -حتى الأطفال- ليصنعوا تطبيقات بسيطة للمتعة و اللعب أو لأداء مهام بسيطة و متعددة؟
أن يتعلم أطفالك البرمجة فى المدارس و يكتسبون مهارات متعددة رائعة ترقى بطريقة تفكيرهم و تزيد من قدرتهم على ايجاد حلول للمشاكل المختلفة و تعِّق روح التعاون و التكامل بينهم؟
يبدو هذا الأمر ضربا من الخيال, فكيف يستطيع الأطفال فعل ذلك فى حين أن الكبار من غير دارسي علوم البرمجة لا يستطيعونها؟ و هل تتمكن عقول الأطفال من استيعاب مفاهيم البرمجة الأساسية؟
تنشأ المشكلة من كون هذا الأمر يحتاج الى مبرمجين متخصصين فى البرمجة و يعرفون مئات الأكواد كى يقوموا بتطوير التطبيقات و هذا ما لا يتاح للجميع و بالتالى يَفقِد أغلبية الناس مَزيَّة الاستغلال الأمثل للأدوات التى يمتلكونها.
من أجل التغلب على تلك العقبة و نشر ثقافة البرمجة بين الكبار و الصغار, قام معهد MIT  بإطلاق لغة برمجة جديدة للهواة. لغة برمجة لا تعتمد على الأكواد بل تستخدم الكائنات الرسومية فى صنع البرامج بأسلوب سهل و بسيط ولا تحتاج لسابق معرفة بالبرمجة بل هى أشبه باللعبة منها الى لغة برمجة و أسموها SCRATCH .
ما هو SCRATCH ؟
2
هو بيئة برمجية تسهل البرمجة على غير المتخصصين من الكبار و الأطفال و تنمى عندهم ملكة الابداع و مهارات تحليل و حل المشاكل المختلفة بحيث يركز المستخدم فيها على ما يريد أن يفعله أكثر من تركيزه على كيف سيقوم بفعله.
يحتوى SCRATCH  على أكثر من مائة من المقاطع البرمجية تندرج تحت حوالى عشر تصنيفات تمكن المستخدم من فعل العديد و العديد من البرامج فى تنوع كبير جدا. كل مقطع برمجي من تلك المقاطع يقوم بوظيفة بسيطة و محدودة للغاية, وبتركيبهم مع بعضهم البعض نستطيع الحصول على وظائف أكثر تعقيدا لصنع تطبيقات أكبر.
كيف نستخدمSCRATCH  ؟
3
قام معهد MIT ببناء موقع خاص بـ SCRATCH يُمكن للمستخدمين إنشاء حساب عليه و واستخدام البيئة البرمجية الخاصة به على الموقع لصنع أى برنامج يريدون دون الحاجة لتحميل البرنامج و تنصيبه على الحاسوب و يمكن لمن يريد أن يحتفظ بنسخة عنده ولا يضطر لاستخدام الانترنت أن يقوم بتحميل نسخة على الحاسوب و تنصيبها و العمل عليها كيفما شاء.
رابط البيئة البرمجية على الموقع:    
    http://scratch.mit.edu/projects/editor/?tip_bar=getStarted
رابط تحميل النسخة 2.0          :        http://scratch.mit.edu/scratch2download/
كل ما عليك هو التسجيل على الموقع الرسمى لتُتَاح لك مساحة لاستخدام البيئة البرمجية على الموقع أو القيام بتحميل البرنامج و تنصيبه مباشرة على حاسوبك الخاص و العمل عليه دون الحاجة لاتصال بالانترنت و كلاهما مجاني سواء التسجيل و العمل على الموقع أو تحميل البيئة البرمجية الخاصة به.
لتسهيل الأمر الى أقصى درجة فإن SCRATCH يحتوى على عرض تعليمى مبدأى يساعد المستخدم على فهم كيفية التعامل معه و إنشاء أول برنامج بسيط له على SCRATCH  كما يمكنك الحصول على المساعدة داخل البرنامج بسهولة لفهم وظيفة و كيفية استخدام أى مقطع  برمجي بداخله. الأمر يسير للغاية و لا يحتاج المستخدم لكتابة سطر واحد من الكود, كل ما عليه عمله هو تركيب المقاطع البرمجية مع بعضها البعض ليحصل على الوظيفة التى يريد.
لتسهيل الأمر أكثر و أكثر قام MIT ببناء موقع ال SCRATCH  بحيث يكون مجتمع متكامل يمكن للمستخدمين أن يدعموا بعضهم البعض من خلاله بمشاركة البرامج و نشر الأفكار المختلفة كما يوجد عليه موسوعة متكاملة يمكنك من خلالها الحصول على معلومات مستفيضة عن أى شىء تريده بخصوص ال SCRATCH  و أن تسأل مباشرة عن وظيفة تريد تنفيذها لترى الارشادات خطوة بخطوة كيف يمكنك بنائها على ال SCRATCH .
رابط الموسوعة :                 http://wiki.scratch.mit.edu/wiki/Scratch_Wiki:Table_of_Contents
رابط المنتدى    :                 http://scratch.mit.edu/discuss/
ستجد على الموقع آلاف البرامج المفتوحة المصدر التى يمكنك الاطلاع على كيفية عملها لتستفيد من الأفكار و ستجدها مصنفة تبعا لنوعية التطبيق. ستجد عليه أيضا منتدى كبير يمكنك من خلاله الحصول على معلومات عن المشاكل الشائعة التى واجهت المستخدمين قبلك أو ارسال مشكلتك و طلب المساعدة فى حلها ليجيب عليك باقى الأعضاء بنصائحهم.
إحصاءات حول SCRATCH
بدأ مشروع SCRATCH في عام 2007 و توالى تطويره حتى الآن حتى وصلنا الى النسخة 2.0 من البرنامج. منذ ذلك الحين و هو في انتشار مستمر فقد وصل عدد المستخدمين “المسجلين” فيه حوالى 2.5 مليون مستخدم و بلغ عدد المشاريع التى تم تسجيلها على الموقع حوالى 4.5 مليون مشروع و العدد فى تزايد مستمر.
كما قلنا سلفا فإن أحد الفئات المستهدفة من خلال مشروع SCRATCH هى فئة الشباب الصغير و الأطفال لعمل نقلة نوعية فى مستوى تفكير الأجيال القادمة عبر تدريبهم بأسلوب ممتع على البرمجة و حل المشاكل المختلفة و صنع تطبيقاتهم الخاصة بسهولة و يسر. لذا فاذا نظرنا الى الرسم البيانى التالى نلحظ نتائج مبهرة.
4
سنجد أن الفئة العظمى من مستخدى البرنامج تتراوح بين عمر التاسعة حتى السادسة عشر من العمر و قد وصل أصغر عمر تم تسجيله الى الرابعة من العمر و تعداده ما يقارب أربعة آلاف طفل فى عمر الرابعة !
لمزيد من الاحصاءات راجع هذا الرابط: http://scratch.mit.edu/statistics/
أثر إدخال SCRATCH  في العملية التعليمية
5
استطاعت بيئة SCRATCH  إزالة الحواجز بين الأطفال و بين مفاهيم البرمجة عبر تجاوز تعقيدات الأكواد التى لا تستوعبها عقول الأطفال فى تلك المراحل لتنتقل بهم الى الاندماج فى البرمجة كفلسفة و طريقة تفكير.
فعندما يمتلك الطفل أدوات سهلة ديناميكية يستطيع ابتكار عدد لا حصر له من الوظائف و البرامج المختلفة. عندما يواجه الطفل مشكلة ما أثناء محاولته صنع برنامج فهو يتعلم مهارات حل و تفكيك المشكلة الى مشكلات أصغر و أبسط كي يصل فى النهاية الى حل المشكلة الرئيسية و إتمام البرنامج الذي يريده.
لم تكتف MIT بهذا بل صنعت مجتمع برمجي خاص بمستخدمي SCRATCH لمشاركة أفكارهم و برامجهم على الانترنت و طلب المساعدة و التواصل مع الآخرين. يتعلم الطفل بُعدا آخر من المهارات حين يتواصل مع أقرانه و يطللب منهم المساعدة و يتعاون معهم ليجد حل لمشكلة ما. يتعرف على أطفال آخرين عبر الانترنت من دول و ثقافات مختلفة و يفكر معهم بشكل جماعي تعاوني و يتبادلون الأفكار. يتعلم البحث عن ما يريده على الانترنت ليجد الفكرة التى تخدم برنامجه و يفهمها جيدا ليتعلم استراتيجيات جديدة لحل المشكلات البرمجية ثم يطور فيها و يضيف عليها.
و قد تم إدخال SCRATCH فى العديد من الفصول الدراسية حول العالم و كانت النتائج مبشرة للغاية و لاقى قبولا كبيرا عند الأطفال بل و أستمتع الأطفال بالعمل عليه و ممارسة البرمجة من خلاله.
يقول الطفل “كلارك” -12عاما: “انه حقا برنامج عظيم يسمح لك أن تصنع ألعابك و رسومك المتحركة بنفسك. هى حقا الوسيلة التى يمكنك عن طريقها أن تصنع بصمتك الخاصة, و بالطبع هناك مجتمع على الانترنت يمكنك من خلالة مقابلة أناس جدد يحمسونك لصنع برامجك الخاصة و تجربة ما تريد ببساطة و الاستمتاع بذلك“.
تقول الطفلة “أليسون” فى وصف تجربتها مع SCRATCH أنها “مثل الانغماس في حل أحجية” ثم تُكمل قائلة “البرمجة مُتعة كبيرة, مليئة بالتحدي و تدفعك للتفكير كثيرا“.
تلك المهارات قبل التغلب على الحاجز بين الأطفال و البرمجة كفلسفة و أسلوب تفكير كان يتعلمها طلبة تخصصات علوم الحاسب عندما يلتحقون بالمعاهد و الكليات التقنية و يبدأون فى تعلم البرمجة لأول مرة فى حياتهم. لأن المعرفة الانسانية تراكمية فالآن أصبح فى الامكان نقل تلك المعرفة الى الأطفال فى سن مبكرة و تعليمهم تلك المهارات ليبدأوا من مستوى متقدم عندما يلتحقون بالمعاهد والكليات التقنية و بالتالى تتحسن مهارات الأجيال الجديدة من المبرمجين عن أمثالهم منذ عقد مضى فى ذات المرحلة من العمر.
SCRATCH و المحتوى العربي
يدعم SCRATCH عدة لغات من ضمنها اللغة العربية حيث يمكنك تغيير لغة القوائم و المقاطع البرمجية فى البرنامج الى العربية و هذ الأمر ينطبق أيضا على موقع SCRATCH. أيضا يوجد دعم كبير لـ SCRATCH فى أوساط المحتوي العربى فقد صُنع له شروحات مرئية عديدة على موقع Youtube مثل هذا الفيديو الذى يعطى مقدمة جيدة عن SCRATCH

و من أجل مواكبة التطور و تحسين مهارات الأطفال و نقل فائدة هذا المشروع الى العالم العربى قامت جامعة الإمارات العربية المتحدة بالتعاون مع عدة جهات بتعريب المحتوى الخاص بموقع SCRATCH و نقله الى ذلك الموقع: http://scratch.uaeu.ac.ae/
هل هذا يكفى؟
يبدو أن مطوري SCRATCH و الداعمين له لم يكتفوا بما أسلفنا ذكره من مزايا و إنجازات, بل تعدى الأمر الى محاولة خلق تواصل ما بين SCRATCH و بين لغات برمجة أخري –مثل Python- بل و التواصل مع العالم الخارجي أيضا, حيث يمكنك من خلال SCRATCH استقبال بيانات من مصادر أخرى خارج SCRATCH قد تكون Script كتبته بلغة برمجة أخرى أو برنامج SCRATCH آخر عبر الشبكة أو هاردوير و حساسات متصلة بجهاز الحاسوب.
هذا الأمر جعل هناك امتدادات لا حصر لها و آلاف الأفكار يمكن تنفيذها دون قيود, فيمكنك مثلا صنع لعبة تُلعَب عبر الشبكة أو التحكم بكائنات داخل برنامجك الخاص عن طريق هاردوير متصل بجهاز الحاسوب يُرسل و يستقبل البيانات من SCRATCH أو … الخ من الأفكار العديدة الرائعة.
هذا الفيديو يوضح مثال على التواصل بين SCRATCH و هاردوير خارجى تم توصيله بالحاسوب:


يمكنك عبر تصفح الموقع اكتشاف المزيد و المزيد من المزايا و الابتكارات المدهشة المتعلقة ببرنامج SCRATCH و ستجد عالما بأكمله يحقق لك ما تطمح اليه من متعة و أدوات تمكنك من صنع تطبيقاتك الخاصة و تحقيق ما تطمح اليه من تكوين بصمة خاصة بك فى أدواتك و برامجك التى تستخدمها, كل هذا بسهولة و يسر و دون سابق خبرة أو معرفة بالبرمجة.