تعليم البرمجة للأطفال
تعلم البرمجة في سن مبكرة لا شك في أنه سيقدم الكثير للمتعلم. أن يستطيع الطفل إيجاد حلولاً برمجية للمشاكل التي يواجهها في الحاسوب وفي محيطه، مهما كانت طبيعة المشاكل ومهما كانت بسيطة، فإنها تفتح باب الابتكار على مصراعيه للأطفال. كما أن البرمجة ترمي بظلالها على المتعلم في تنمية مهارات التخطيط والتنظيم. وتعطيه نفساً أطول في الوصول لمراحل متقدمة من تقديم حلول مبتكرة وتهيئته للخوض في سوق العمل مهما كان مجال اختصاصه مستقبلاً.
ولصعوبة ودقة البرمجة، هناك عدة اتجاهات في تعليمها للأطفال. الجميع يتفق على أن الطفل لا بد أن يبدأ بالأساسيات. ثم ينطلق حيث يشاء وكيفما أراد. ما يختلفون فيه هو أسلوب تقديم هذه الأساسيات والى أي مدى ينطلقون في الأساسيات هذه. أي أن السؤال هو عن كيف يكون المدخل للبرمجة.
الاتجاه الأول يسير في اتجاه تعليم البرمجة للأطفال عن طريق اللعب. يعتمد مؤيدو هذا الاتجاه على شغف الأطفال واقبالهم على الألعاب الإلكترونية. ومن تجاربي الشخصية، وجدت أن الألعاب التي تقدم للأطفال بعنوان تعليمهم البرمجة تفتقد للإثارة والتشويق من جهة، ولا تقدم محتوى برمجي مناسب لهم. لكن هذا الاتجاه مناسب للتمهيد للبرمجة وإعطاء الأرضية المناسبة. فهي تركز على مهارات حل المشكلات وتحويل السيناريو النصي لخطوات مرتبة. ولعله توجد ألعاب متقدمة لم أطلع عليها تغطي المفاهيم البرمجية الأساسية للأطفال. لكنهم لن يستطيعوا انتاج برمجية بدائية بسيطة عن طريقها. حيث أنهم يعيشون أجواء اللعب ولا يرتبطون بواجهة اللغة البرمجية ولا بشفراتها ولا خطوات التشغيل واختبار البرمجية وتصحيح أخطائها.
الاتجاه الثاني هو عن طريق العمل بشكل فعلي على لغات برمجية بشكل مباشر.. لكن هذه اللغات تكون ميسرة وبسيطة. وتعتمد على البرمجة البصرية (visual programming) ومهارات السحب والإفلات (Click and drags). من هذه اللغات المطروحة لغة Scratch. هذا الاتجاه يجعل من الطفل يشم رائحة البرمجة ويتذوقها. وبطرق سهلة يستطيع تحريك بعض الشخصيات ومخاطبة مستخدم البرنامج الخاص به وأخذ الاستجابات. وبالتالي يستطيع التعبير عما بداخله من ابداع. ولو أراد الولوج أكثر فيها لسيتمكن من انتاج لعبته الإلكترونية الأولى بنفسه.
الاتجاه الثالث يؤمن بقدرات الطفل ويسخر طاقاته فعلياً. لكنه قد لا ينجح مع جميع الأطفال. فهو يتحدى قدراتهم ويدخل معهم لعالم البرمجة للغات برمجية لها شعبيتها وسوقها كلغة الفيجوال بيسك. إلا أنه يركز على المهارات الأساسية منها فقط. ويترك البقية لمراحل متتالية أثناء دراسته. ليتخرج وهو قادر على انتاج برامج تخدمه وتخدم المحيط الذي يعمل فيه. فيكون منتج ومبدع ومبرمج.
توجد اتجاهات أخرى أيضا.. وجدتها في مناهج أجنبية للمدارس الابتدائية والإعدادية وما يليهما. تعتمد على لغات كلغة c++. وهي متقدمة جدا وتعتمد على الشفرات النصية. ومع انهم يكتفون بالأساسيات لكن الطلبة يشعرون بثق هذه المادة لدرجة مقارنتها بمواد الرياضيات المعقدة. ويريدون تجاوزها دون الارتباط بالمادة والشعور بالود والحاجة لها.
الاتجاه الأول يميل لتسطيح العلم وعدم الايمان بقدرات الأطفال. بينما يميل الاتجاهان الثاني والثالث لرسم معالم كبيرة للطفل وفتح أبواب لإبداعاته. ويمكن الجمع بهما ومؤالفتهما لتحسين النتاج وتخريج طفل يوفر الحلول لنفسه ولعمله بنفسه. لكل نظرته ورؤيته لكن نفتقد للتطبيق أكثر من الرؤى.