ما لغات البرمجة للأطفال الممكن البدء بتعلمها؟
المحتويات
7 من أشهر لغات البرمجة للأطفال
ما هي البرمجة المطورة للأطفال؟
في مقالنا السابق 10 أسباب لكي نبدأ بتعليم أبنائنا البرمجة ذكرنا عشرة أسباب حتى نعلّم أبناءنا البرمجة. ومنها أن البرمجة هي محو الأمية الجديدة. وفي مقالينا السابقين متى نبدء بتعليم أطفالنا البرمجة 1 من 2، و متى نبدء بتعليم أطفالنا البرمجة 2 من 2، سردنا بعض الألعاب البرمجية التي تناسب أعمارا مختلفة. وخلال هذا السرد مررنا على مسميات لبعض لغات البرمجة التي تم تطويرها لتناسب الأطفال من أعمار مختلفة وضمن بيئات عمل مختلفة. كما ذكرنا أن الأعمار ما قبل المدرسة من سن السنتين إلى الخمسة سنين يمكن للوالدين إدخال مبادء التفكير المنطقي لهم من خلال بعض لغات البرمجة المعتمدة على برمجة الكتل المحسوسة (Block-based Programming Languages). ومثل هذه اللغات تعمل على تبسيط الأفكار المجردة بتمثيلها على شكل أجسام قابلة للمس والتعامل الحسي معها. ويتم برمجة هذه الأجسام والتحكم بحركتها من خلال أدوات مبسطة للتحكم بالاتجاه والمسك والإفلات وغيرها من الأوامر البسيطة.
كيف نفهم آلية تعليم وتعلم لغات البرمجة للأطفال؟
تم إجراء تحليل علمي مفصل للمنشورات العلمية على مدى السنوات القليلة الماضية المتعلقة باستخدام لغات برمجة الكتل للأطفال وبيئات تطويرها. أدى هذا التحليل إلى عدة استنتاجات عامة:
- يجد الأطفال صعوبة في فهم المفاهيم المجردة المستخدمة في لغات البرمجة.
- يجب ألا يقل عمر الأطفال عن 7 سنوات لفهم مفاهيم البرمجة.
- الخطوة المهمة التالية في دراسة البرمجة هي أن الأطفال يجب أن يكتسبوا معرفة مسبقة حول المفاهيم الرسمية ومراحل الخوارزميات البسيطة.
- كما تم أخذ مزايا استخدام لغات برمجة الكتل للأطفال لتطوير التفكير الحسابي وبناء الأساس للدراسات اللاحقة للغات البرمجة التقليدية في الاعتبار.
هل من الممكن تعليم البرمجة للأطفال؟
التطريز (الكروشيه) في طريقة عمله يشبه تسلسل أوامر رمزية تتضمن حلقات متتالية منها. كما أن تصريف الأفعال في آلية عمله يشبه مهارة التعرف على الأنماط المتشابهة.وأيضا فليس على الطفل الصغير الخوف من الحشرات الصغيرة التي تحت سريره (تشبيهاً بالأخطاء البرمجية الصغيرة أو الـ Bugs).
يجب على كل طفل أن يعلم أن المشاكل الكبيرة هي في حقيقتها مشاكل صغيرة ملتصقة مع بعضها. في البرمجة يتعلم الأطفال أنه في الحقيقة لا يوجد أجوبة جاهزة. ولذا فعندما يفهم الطفل هذه المبادئ السابقة يمكنه أن يعرف أن البرمجة أمر ممكن تعلمه بالانتباه والممارسة والتكرار وتفكيك المشاكل الكبيرة إلى قطع صغيرة يمكن التعامل معها. وعندها يصبح الطفل قادرا على البرمجة حتى أنه قد يصل لمرحلة ما في طفولته كالساحر الذي يصنع المهم من البرامج والتطبيقات بالقوة التي أصبحت متمكنة لديه.
ما هي لغات البرمجة المخصصة للأطفال ولأي أعمار؟
ليست كل لغات البرمجة متشابهة من حيث السهولة،. من المؤكد أن بعضًا من أكثرها تعقيدًا بالدرجة التي يمكن لها أن تحول دون تعلم الأطفال كيفية البرمجة. هذا هو سبب أهمية لغات البرمجة للأطفال. إنها تزيل النواحي التقنية وصعوبات البرمجة التي يخوضها المبرمجون عادة. وهذا من أجل مساعدة الأطفال (والمبتدئين) في سبيل التركيز على تعريفهم بالمفاهيم الأساسية للبرمجة.
سنذكر هنا سبعة من لغات البرمجة التي تم تطويرها لتناسب الأطفال والتي نعتقد أنها الأنسب وقد تكون الأفضل في هذا المجال. كما سنذكر الأعمار المقترحة وبيئة العمل أو المنصة التي تتطلبها بيئة العمل لهذه اللغة. وأخيرا سنمر على بعض تفاصيلها كالفروقات بينها وبين غيرها أو ما تحتاجه من المشرفين على التعليم أو المتطلبات الأخرى لها.
1. لغة برمجة السكراتش لللأطفال الصغار (ScratchJr)
وهي ثمرة تعاون بين معهد الإعلام التابع لجامعة أم أي تي (MIT Media Lab) ومؤسسات بحثية وجامعات وشركات مهتمة. وتُعد لغة سكراتش جونيور ScratchJr لغة برمجة تمهيدية تمكن الأطفال الصغار من إنشاء قصصهم وألعابهم التفاعلية.

في هذه اللغة يقوم الأطفال بتجميع كتل البرمجة الرسومية معًا لجعل الشخصيات التي ينتقونها من قائمة الشخصيات الموجودة مسبقا تتحرك وتقفز وترقص وأيضا تغني. يمكن للأطفال تعديل الشخصيات في محرر الرسوم الموجود في هذه المنصة. كما يمكن لهم إضافة أصواتهم وأصوات أخرى يضيفونها للمنصة. وحتى إدراج صور لأنفسهم – ثم استخدام قوالب البرمجة شبه الجاهزة لجعل شخصياتهم تنبض بالحياة.
تم استلهام ScratchJr من لغة برمجة السكراتش الشهيرة والتي سنمر عليها لاحقا في هذا المقال. عند إنشاء ScratchJr ، تم إعادة تصميم الواجهة ولغة البرمجة لجعلها أكثر تناسبا للأطفال الأصغر سنًا من حيث الواجهة ولغة البرمجة. كما تم تصميم الميزات بعناية لتتوافق أكثر مع التطور المعرفي والشخصي والاجتماعي والعاطفي للأطفال الصغار.
يقدم موقع سكراتش للأطفال الصغار (Scratchjr) كتيبات وأدوات مساعدة على تعليم الأطفال هذه اللغة. ويمكن للمعلمين المختصين أو حتى آباء للأطفال ممن لديهم أساسيات المنطق البرمجي بمساعدة هذه الوسائل التعليمية أن يقوموا بالإشراف على عملية التعليم هذه. هذه الكتيبات فيها شرح حول تنصيب (Install) منصة العمل وتدريبات تعليمية.
لغة مجانية الاستخدام للأطفال.
- وهي لغة برمجة تم تطويرها للأطفال الصغار (من سن 5 إلى 7 سنوات).
- يمكن للأطفال بواسطة هذه اللغة برمجة قصصهم وألعابهم التفاعلية.
- في هذه العملية، يتعلم الأطفال حل المشكلات وتصميم المشاريع والتعبير عن أنفسهم بشكل إبداعي على الكمبيوتر.
- تعمل هذه اللغة على منصتي الأندرويد (Android) والأبل أي أو إس (Apple IOS) على الأجهزة اللوحية.
- طريقة البرمجة ScratchJr أكثر سهولة وأسهل ، لكن وظائفها محدودة.
2. لغة برمجة السكراتش (Scratch)

لغة السكراتش (Scratch) هي إحدى لغات البرمجة للأطفال. وهي لغة برمجة مرئية عالية المستوى تعتمد على برمجة الكتل. كما أن لديها منصة للبرمجة على موقع ويب.
- لغة مجانية الاستخدام للأطفال.
- تستهدف بشكل أساسي الأطفال من سن 8 إلى 16 عامًا كأداة تعليمية للبرمجة.
- يمكن للمستخدمين على الموقع إنشاء مشاريع على الويب باستخدام واجهة سهلة الاستخدام.
- يستخدم نفس وحدات البناء بالسحب والإفلات.
- تم تطوير الخدمة بواسطة MIT Media Lab التابعة لجامعة أم أي تي (MIT).
- تمت ترجمتها إلى أكثر من 70 لغة منها اللغة العربية، وتستخدم في معظم أنحاء العالم.
- يتم تدريس سكراتش واستخدامه في مراكز ما بعد المدرسة والمدارس والكليات ، بالإضافة إلى بعض المؤسسات التعليمية العامة الأخرى.
- يوفر موقع سكراتش أدوات ومواد تكميلية للتدريس.
- أظهرت احصائية تمت في يوليو 2021 استخدام هذه اللغة في أكثر من 82 مليون مشروع. هذه المشاريع تمت مشاركتها من قبل أكثر من 74 مليون مستخدم، خلال أكثر من 73 مليون زيارة شهرية للموقع.
- لاحظت جميع الدراسات حول لغات برمجة الكتلة كأداة برمجة لأطفال المدارس الابتدائية أن سكراتش كان الأكثر استخدامًا.
- يمكن تعليم البرمجة بهذه اللغة أونلاين.
3. لغة البرمجة أليس (Alice Programmıng Language)
Alice هي بيئة برمجة مبتكرة قائمة على الكتل تسهل إنشاء الرسوم المتحركة أو إنشاء قصص تفاعلية أو برمجة ألعاب بسيطة ثلاثية الأبعاد. على عكس العديد من تطبيقات الترميز القائمة على الألغاز ، تحفز أليس التعلم من خلال الاستكشاف الإبداعي. تم تصميم أليس لتعليم مهارات التفكير المنطقي والحسابي والمبادئ الأساسية للبرمجة ولتكون أول من تعرض للبرمجة الموجهة للكائنات (برمجة الكتل أو Block-Based Programming Language).

- تم تطويرها في جامعة ديل كارنيجي (del Carnegie University).
- لغة مجانية الاستخدام للأطفال.
- يستخدم نفس وحدات البناء بالسحب والإفلات.
- يوفر مشروع Alice أدوات ومواد تكميلية للتدريس.
- إنها بيئة ترميز مبتكرة تجعل من السهل نسبياً ما برمجة الرسوم المتحركة والقصص التفاعلية والألعاب السهلة ثلاثية الأبعاد.
- تستهدف مجموعة من الأعمار ابتداء من عمر 10 سنين.
- من الصعب استخدامها في التدريب أو التعلم الأولي بسبب حاجز اللغة المتوقع الذي قد يواجهه الأطفال عند استخدامه. حيث إن هذه اللغة مترجمة بشكل جزئي فقط للغات الأخرى ومنها العربية.
- أكثر ما يميز Alice عن Scratch و Blockly هو إتاحتها للمستخدمين العمل بالنماذج ثلاثية الأبعاد واستخدام زوايا الكاميرا الديناميكية.
4. معمل ألعاب كودو (Kodu Game Lab)

- تستهدف مجموعة من الأعمار ابتداء من عمر 8 أعوام.
- تسمح بساطة لغة كودو عالية المستوى بكتابة برامج كمبيوتر سهلة للغاية.
- إلا أنه ومن أجل فهم لغة كودو ، يجب على الأطفال أولاً دراسة اللغات البسيطة الأخرى مثل سكراتش أو بايثون.
5. لغة كود دوت أورغ (code.org) من شركة مايكروسوفت (Microsoft)

- تستهدف مجموعة من الأعمار ابتداء من عمر 4 أعوام.
- تعتبر من أسهل لغات البرمجة للأطفال، إن لم تكن أسهلهم على الإطلاق، حسب تقييمات الأطفال الذين تعلموها (حسب الدراسات الإستقصائية بين الأطفال).
- تدعم التعامل بالكثير من اللغات ومنها الإنجليزية والعربية والكثير غيرها.
- كان لوجود كائنات متفاعلة بالصوت والصورة في منصة البرمجة Code.org، كمثل بعض الشخصيات الكرتونية المعروفة، أثر كبير في التأثير على تفضيلات الأطفال لهذه اللغة.
6. لغة بلوكلي (Blockly) من جوجل (Google)
كرد على لغة برمجة سكراتش (Scratch) من جامعة أم أي تي (MIT)، قامت جوجل (Google) بالعمل على لغة أنشأتها لتعليم الأطفال بطريقة برمجة الكتل (Block-Based Programming Language). أسمت جوجل هذه اللغة (blockly.games).

Blockly Games هي سلسلة من الألعاب التعليمية التي تعلم البرمجة. وهي مصممة للأطفال الذين ليست لديهم خبرة سابقة في لغات البرمجة. مرفق مع لغة البرمجة هذه تمارين وألعاب برمجية. مع تخطي الطفل لجميع المراحل المختلفة لهذه التمارين يصبح الطفل جاهزاً لاستخدام اللغات التقليدية للبرمجة والقائمة على الأكواد والنصوص.
- تستهدف مجموعة من الأعمار ابتداء من عمر 8 أعوام
- باستخدام Blockly ، يمكن للأطفال إنشاء ألعاب ورسوم متحركة وبرامج من خلال متصفح الإنترنت.
- يستخدم نفس وحدات البناء بالسحب والإفلات.
- تم تصميم ألعاب Blockly بطربفة يستطيع الطفل فيها أن يتابع تعلمه ويقيس سرعته بنفسه.
- يمكن تنزيلها للاستخدام في وضع عدم الاتصال بالإنترنتز، مما يضمن إمكانية الوصول لجميع الطلاب والتكنولوجيا.
- جميع الأكواد لهذه اللغة مفتوحة المصدر، مما يعني أنها مجانية وقابلة للتخصيص لتلبية احتياجات المتعلم.
- يمكن للمرء إنشاء تطبيقات فعلية باستخدام Blockly.
7. لغة برمجة (swift) من شركة أبل (Apple)

- تعمل فقط على منصات الأيفون ( IOS) سواء على أجهزة الماك أو جوالاته.
- الواجهة ضيقة ونظيفة وممتعة بصريًا.
- لا تسمح بالكثير من الحرية والتفكير الإبداعي خلال دروسها.
- لا يمكن للمستخدمين الانحراف عن المسارات المحددة مسبقًا في كل درس أو تحدي.
- يستخدم نفس وحدات البناء بالسحب والإفلات.