الأربعاء، 8 أبريل 2009

البرمجة و التفكير (و فرصة للتفوق العلمي)

تحولات...

قديما كانت القراءة و الكتابة مهارتين نادرتين حتى ان المرء كان ليؤجّر كاتبا يكتب له ما يشاء. الآن أي طفل في الشارع يقرأ و يكتب. ثم كانت العمليات الحسابية مثل الضرب و القسمة المطولة حكراً على العلماء حتى صارت هي الأخرى في متناول التلميذ العادي.

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

...تفتح أبوابا

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

و الفرصة القادمة البرمجة...

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

أولا: البرمجة هي "تفكير بطريقة رسمية" و يدخل في كل شيء في الحياة. ربما لو نظرنا لعلم مثل المحاسبة نجده مجموعة من الData structures و الAlgorithms. أشياء مثل الBaker's algorithm أو الBanker's Algorithm كانت تستخدم فعلا في المخابز و البنوك. حتى الأستراتيجيات العسكرية ربما يمكن "تكويد" بعضها أو كثير منها في صورة خوارزميات. لو كان الناس كلهم يعرفون البرمجة لوجدوا طريقة جديدة، غاية في الوضوح و الدقة، للحديث عن العلوم الأساسية التي يعرفونها.

ثانيا: العلوم الطبيعية مثل الأحياء و الفيزياء صارت أعقد من أن يقوم بها الأنسان وحده و صار الكثير من الأبحاث يعتمد على الكمبيوتر. و ظهرت علوم مهجّنة مثل Computational Physics أو ال
Computational Biology و صار العديد من علماء الفيزياء و الكيمياء يتعلمون البرمجة ليتابعوا أعمالهم.

...فرصة للتفوق العلمي

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

- ربما يصير شيء مثل الComputational Physics مادة جامعية عادية بدلا من حكرا على نخبة من العلماء القليلين!
- ربما تصير القوانين و المحاماة اقل إبهاما و أسهل في التطبيق!
- ربما يكون الإعراب في النحو بوصف الParse Trees!

..هيّا

هناك أوروبيون بدأوا فعلا في التفكير في هذا الأمر (أنظر مثلا هذه الصفحة عن ال"Computational Thinking"). لكن الأمر مازال في بدايته و لعلّنا نكون أمام فرصه حقيقية لأن نسبقهم بمشيئة الله تعالى.
كما قلت في مثل هذا اليوم في 2008...علّموا الأطفال البرمجة!