الأولمبياد المعلوماتي السوري مسابقة وطنية سنوية في مجال علم الحاسب (البرمجة والخوارزميات) تستهدف الناشئة دون العشرين عاماً. أقيمت المسابقة للمرة الأولى صيف 2004بهدف المشاركة في الأولمبياد المعلوماتي الدولي IOI، والذي انطلق بدوره عام 1989تحت رعاية منظمة الأمم المتحدة للتربية والثقافة والعلوم (اليونسكو) ليكون أحد الأولمبيادات العلمية الموجهة للناشئة.

وانبثق من هذا الأولمبياد مشروع تعليمي واعد يهدف لتعليم الناشئة علم الحاسب بأسلوب وطريقة مشوقة، مستندين بذلك على برمجيات تعليمية لها باع في هذا المجال مثل برنامج أليس وسكراتش وغيرها.

صفحة تقنية المعلومات تحاورت مع المهندس عبدالرحمن أدلبي من اللجنة المنظمة للأولمبياد المعلوماتي السوري وأيضا العضو المنظم لمشروع علم الحاسب للناشئة، لتعريف القراء أكثر على رسالة الأولمبياد وفكرة المشروع.

ما هي رسالة وفكرة الأولمبياد السوري للمعلوماتية؟

تتلخص رسالة الأولمبياد السوري في ثلاث نقاط:

@ تقديم محتوى مفيد في مجال المعلوماتية وتنمية الطّلاقة في التعامل مع تقانة المعلومات IT fluency.

@ تشجيع ورعاية المتميزين في هذا المجال.

@ بناء الفريق المشارك في الأولمبياد المعلوماتي الدولي.

يتم تقسيم المشاركين في المسابقة الوطنية وفق ثلاث فئات عمرية (دون 12عاماً، دون 15عاماً، دون 20عاماً) تتدرج في صعوبة متطلباتها العلمية، وإن كانت تتفق في اختبار التفكير المنطقي ومهارة حل المعضلات وكتابة البرامج، ويحظى المميزون في الفئة الأخيرة بفرصة تمثيل سورية في الأولمبياد الدولي.

هل لنا بتعريف كذلك بمشروع علم الحاسب للناشئة؟ وما هي المجالات الحاسوبية التي يهتم بها؟

هذا المشروع جهد شخصي لتغيير النظرة السائدة عن دور الحاسب في حياتنا اليومية بشكل عام وعن دوره في التعليم (أو التعلُّم لتوخي الدقة) بشكل خاص، إذ من الشائع في أحاديثنا أن نتحدث عن محو أمية الحاسب، ولكن المطلوب فعلياً هو الحديث عن الطلاقة في الحاسب. سأقوم بشرح هذا المصلح - الطلاقة - في السياق المستخدم بين الناس عادةً لكي نفهمه جيداً. عندما يتعلم أحدهم بضع الكلمات والعبارات من لغة أجنبية بحيث يستطيع التعريف عن نفسه والسؤال عن الاتجاهات في الشارع فهل يعتبر طليقاً في اللغة؟ لا بالطبع. هذا النوع من المعرفة الذي يقتصر على المفردات يماثل تماماً الطريقة التي يستخدم بها معظم الناس الحاسب (وهذا ما نعبر عنه عادةً بمحو أمية الحاسب).

أما أن تكون طليقاً في لغة أجنبية، فذلك يعني القدرة على إيصال فكرة معقدة أو حبك قصة بديعة، أي أن تكون قادراً على إبداع أمور جديدة باستخدام اللغة. وبشكل مماثل فإن الطلاقة في الحاسب لا تقتصر على استخدام التقانات المتاحة، بل تتعداه إلى معرفة كيفية إنشاء أمور مميزة باستخدام هذه التقانات. قد يتساءل البعض عن المغزى من هذا الأمر، وهنا أعود إلى مثال اللغة: فكما أنّ تعلُّم القراءة والكتابة يضعك في مكان أفضل لتعلم المزيد من الأشياء الأخرى، فإن الطلاقة في الحاسب ستصبح مستقبلاً متطلباً للحصول عل وظيفة والمشاركة بفعالية في المجتمع واستمرار اكتساب المعرفة طوال الحياة.

وبما أن الطلاقة في الحاسب تعني إبداع التقانة بدل الاكتفاء باستخدامها فإن أحد أبرز مظاهرها هو تكوين المقدرة على التفكير المنطقي وتعلم البرمجة، وهذا هو المجال الرئيسي الذي يهتم به مشروع علم الحاسب للناشئة، والذي أسعى من خلاله - على أقل تقدير - إلى التعريف بالأدوات المتاحة لجعل تعلم البرمجة تجربةً أكثر متعة وفائدة. لا أنتظر بالطبع أن ينشأ جميع الأطفال ليكونوا مبرمجين محترفين، أو يختصوا في أحد مجالات الحوسبة بشكل عام؛ ولكن تعلم البرمجة سيؤمن لهم التعبير عن أنفسهم بشكل فعال ومبدع، وينمي التفكير المنطقي لديهم، ويساعدهم على فهم التقانات الجديدة التي يتعاملون معها في حياتهم اليومية.

لا بد أن أشير هنا إلى تأثر هذا المشروع بأعمال الأستاذ ميتشل ريسنك من مخبر الوسائط في معهد ماساتشوسيتس للتقانة، والذي له باع طويل في هذا المجال من خلال مشاركته في تطوير أطقم روبوتات ليغو LEGO Mindstorms ونوادي Computer Clubhouse ولغة سكراتش Scratch وغيرها.

ما هي أهداف هذا المشروع؟

كما ذكرت في السؤال السابق، فإن المطلوب هو نظرة جديدة إلى الطريقة التي يمكن أن يغير بها الحاسب حياتنا. إذا وجهنا السؤال التالي إلى مجموعة من الأشخاص: (ما هو العنصر الغريب في المجموعة التالية: التلفاز، الحاسب، فرشاة الرسم) فإن معظم الإجابات ستقول إن العنصر الغريب هو فرشاة الرسم، وذلك لأننا ما نزال فعلياً نستخدم الحاسب بشكل مشابه لاستخدامنا التلفاز (مشاهدة الأفلام، الاستماع إلى الأغاني، تصفح الإنترنت، ممارسة الألعاب الإلكترونية...). أما لكي نستخدم الحاسب بأقصى طاقاته فعلينا أن نعيد التفكير به كفرشاة الرسم. أي أننا نريد من الأطفال أن يستخدموا الحاسب في إنشاء الأفلام التي يحبونها بدل الاكتفاء بمشاهدتها، وأن يطوروا ألعابهم بدل الاكتفاء باللعب بالألعاب التي طورها غيرهم.

لاحظت تعريبكم لبعض بيئات البرمجة للأطفال، ما السبب؟ وهل هذا التعريب متاح للعامة؟ وهل واجهتم صعوبة في توطين البيئة للغة العربية؟ يقال في علم اللغويات إن الوسيط (أي اللغة) هو رسالة بحد ذاته، فاللغة تعبير عن أسلوب تفكير المجتمع، واعتزاز المجتمع بلغته جزء من اعتزازه بهويته وثقته بنفسه. ومن المعروف أيضاً أن معدل فهم المتعلم للأفكار التي تطرح بلغته الأم أعلى بكثير من معدل فهمه للأفكار التي تطرح بغيرها، وبما أن عملنا هو جزء من رسالة تربوية شاملة موجهة للناشئة، فإن سعينا إلى تقديمي محتوىً تقاني مفيد باللغة العربية هو جزء من أولوياتنا.

لغة البرمجة التي نعمل على تعريبها الآن هي لغة سكراتش Scratch، وهي لغة برمجة مرئية موجهة للناشئة (بين 10و 18عاماً) تسهل إنشاء القصص التفاعلية والألعاب والرسوم المتحركة، والتي قمنا بدايةً بتعريب عدد من المصادر المساعدة على تعلمها، مما شجع الفريق المطور لهذه اللغة فيما بعد (مجموعة Lifelong Kindergarten في مخبر الوسائط في معهد ماساتشوسيتس للتقانة) على إبداء الرغبة في التعاون معنا لإعداد الإصدار القادم من هذه اللغة بحيث تدعم واجهة البيئة اللغة العربية، ويتوقع خروج هذا الإصدار إلى العلن نهاية العام الحالي، إذ إننا ما نزال في مرحلة الاختبار الأولي (الإصدار ألفا)؛ وبما أن لغة سكراتش أصلاً مجانية ومفتوحة المصدر فإن الإصدار الداعم للعربية سيكون كذلك أيضاً، كما أن جميع المصادر المعربة متاحة مجاناً على الصفحة العربية لسكراتش.

كانت المشكلة الأولى في وجه تعريب سكراتش هي استخدام الحرف العربي، إذ إن الإصدارات الأولى من اللغة لم تدعم إلا الأحرف الرومانية. تم تجاوز هذه المشكلة بعد الانتقال إلى ترميز Unicode نتيجة الحاجة الملحة لذلك لدعم العديد من اللغات الأخرى (الروسية، اليونانية، الصينية...). المشكلة الأكبر كانت دعم الواجهة للغات المكتوبة من اليمين إلى اليسار (وهي قلة)، إذ يتطلب ذلك تغيير العديد من محددات الواجهة، ولذا وزعت أجزاء الواجهة التي ستدعم اللغة العربية بشكل كامل ليتم تنفيذها على مراحل يتوقع اكتمال معظمها في الإصدار التالي من سكراتش (Scratch 1.3).

هل بالإمكان ذكر تجربتكم في استخدام بيئات البرمجة مثل أليس وسكراتش لتعليم الناشئة البرمجة؟ وما مدى تقبل الناشئة لها؟

بدأنا هذا العام استخدام لغة سكراتش في الأولمبياد المعلوماتي السوري ضمن مسابقات الفئتين الأولى والثانية (الأعمار دون 12و 15عاماً على التوالي)، وهدفنا من ذلك تقديم المفاهيم البرمجية في إطار ممتع دون أن يضطر الأطفال إلى التعامل مع الأخطاء الناتجة عن عدم مراعاة قواعد لغة البرمجة، والتي تكون السبب عادةً في إحجام المبتدئين عن البرمجة. وبذلك تقدم لغة سكراتش للناشئة فرصة التركيز على حل المعضلات وممارسة التفكير المنطقي بدل الخوض في تعقيدات قواعد اللغة. بعد ممارسة البرمجة بلغة سكراتش مع الأطفال لمدة سبعة أسابيع كان من الممكن تعلم بعض المفاهيم الجديدة الخاصة بالجبر البولياني ونظم العد مثلاً، والتي تعتبر من المفاهيم الجافة عادةً. إضافةً إلى ما سبق، قدمت لنا لغة سكراتش إمكانية البدء بتدريس لغة برمجة عالية المستوى هي ++C ضمن هاتين الفئتين. كما نستخدم لغة سكراتش في الدروس الأولى لتعليم البرمجة لمتسابقي الفئة الثالثة قبل المباشرة بتعلم لغة C++.

من المبكر الآن الحديث عن النتائج النهائية لاستخدام لغة سكراتش لأن تجربتنا ما تزال في بدايتها، ولكننا نستطيع الحديث عن الاستجابة الإيجابية للأطفال التي تجلت بدعوتهم لأقرانهم لتعلم سكراتش، بالإضافة إلى رغبة أهاليهم ومدارسهم في تعريف المزيد من أطفالهم بهذه اللغة.

أما لغة أليس فلما تتح لنا بعد فرصة تجريبها لتعليم البرمجة للناشئة، وإن كانت هناك خطط أولية لاستخدامها مع طلاب هندسة وعلم الحاسب في الجامعة.

hend.alkhalifa@gmail.com