Saturday, March 8, 2008

البرمجيات


ماهى البرمجيات؟
على الرغم من سهولة السؤال واستحالة ان يرد احد عليه بلا أعلم فقد اكتشفت ان معظم الناس لا تدرك نطاق البرمجيات وأثرها

منذ عشر سنوات او اكثر كنت ازور صديق يملك شركه لتعليم الكمبيوتر وجلست انتظره بجانب باب غرفة بها محاضرة لطلبة من صغيرى السن
سمعت أحدهم يسأل المحاضر
ماذا يحدث عندما نضغط على حرف فى لوحة المفاتيح فيظهر الحرف على الشاشة؟
انبرى المحاضر يجيب بكلام لا اساس له من الحقيقة تماما

انتابتنى مشاعر متعارضة
الاول غضبت من اجل للعلم
ثم صرت اتساءل من اين جاء بهذه الاجابه؟
ثم صرت اسأل نفسى كيف السبيل لتصحيح المعلومات لديه ولدى من ضللهم؟

صحيح السؤال صعب جدا والاجابه عليه تحتاج لساعه من الشرح كما تحتاج للتعرض لاساسيات كثيره فى علوم البرمجيات لكن ايضا الاجابة الكاذبه كانت ذكية ومنطقية
كيف وصل اليها؟

ما علينا
على مدار سنوات اكتشفت ان معظم العاملين فى مجال البرمجيات يكملون معلوماتهم الناقصه بالاستنتاج الذى غالبا ما يكون خاطئا
وان معظمهم لا يعلم ولم يشغل باله ليعلم كيف يعمل الكمبيوتر وكيف تعمل الانترنت وبروتوكولات الويب والايميل ونقل البيانات وكيف تعمل قواعد البيانات وكيف يتم تخزين الملفات على الهارد ديسك وكيف يتم الغاءها ولا ماهية الفونتات ولا كيف تعمل الوندوز ولا كيف يعمل كذا برنامج فى نفس الوقت


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


دعونا من الكمبيوتر البى سى فهو جزء من الكل
الحقيقه ان البرمجيات فى كل شئ حولنا من اول القائمه التى تظهر فى التليفزيونات

الى الموبايلات من اولها لاخرها
الى السيارات الى المصانع المختلفة الى الاسلحه الى كل شئ

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

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

وطبعا لا يمكن تنفيذ هذا يدويا ابدا

الخلاصه اننا لو دققنا بين اى صناعه متقدمه وصناعه متخلفه مليئه بالعيوب سنجد ان الفروق فى البرمجيات وان الفرق بين دولة عظمى ودولة تافهه فى حالة ثبات باقى العوامل ستكون فى البرمجيات

والبرمجيات ليست كمبيوتر بى سى فقط كما نتخيل
انظر مثلا الى الالات الحاسبه واجهزه القواميس الالكترونيه والاورجانيزر والساعات الالكترونية واجهزة الام بى ثرى

وما شابههم من اجهزة

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


ساقول لكم مثالا مدهشا على اهمية البرمجيات وكيف ممكن ان تنقلنا الى دولة منيعة قوية

الاسلحة
كيف تتطور الاسلحه؟
المسدس الذى كان ايام الفرسان الثلاثه فى القرن الثامن عشر يعمل بنفس نظرية المدافع الرشاشه الحالية


ان ابسط صورة للسلاح النارى بارود مركب مع راس رصاصيه
وعند الطرق عليه بنفجر فيولد غازات ضخمه الحجم تدفع الراس الرصاصيه فى الاتجاه المفتوح امامها فتنطلق فى الماسورة التى تجعلها تدور حول نفسها فتطير فى خط مستقيم بسرعه تفوق سرعة الصوت حتى تصيب هدفا فتخترقه


باقى التطورات الميكانيكيه افكار بسيطه مثل الاستفاده من رد الفعل فى اطلاق رصاصه تاليه فتاليه فتاليه كما يصنع المدفع الرشاش
وبعض التطويرات فى المواد المتفجره حتى تكون شديده الانفجار

وبعض الافكار الالمعيه عن رصاصه بداخلها مواد متفجره هى ايضا
فتنفجر داخل الضحية مثل رصاص دم دم
وهكذا مع القنابل والمدافع والدانات التى تعمل بنفس الاسلوب منذ اكتشاف الديناميت والنتروجلسرين وحتى الان
مع اضافة الافكار الجديده فقط


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


الفروق فى البرمجيات
القنبله التليفزيونيه مثلا قنبلة بها ذاكره يتم تسجيل صورة الهدف فيها

وكاميرا تستقبل الصور اثناء انطلاق القنبلة
ومايكروكنترول ينفذ باستمرار برنامج تحليل صور معروف جدا اسمه
image processing
وعن طريق المقارنه بين الصور الوارده من الكاميرا مع الصورة المخزنه فى الذاكره يقوم الكنترولر بتوجيه القنبله

بفتح بلوف للغازات كما فى حالة الصواريخ او تحريك اجنحه فى حالة القنابل
فتنحرف الدانه بذكاء حتى تصيب الهدف بدقه عالية
والنتيجة ان الفرق بين قنبله بالبرمجيات وقنبله بدونها كالفرق بين السماء والارض

ايضا
الصاروخ العابر للقارات يحتوى على برنامج شهير اسمه
GPS

وهو برنامج يتصل بالاقمار الصناعيه المنتشره فى السماوات فيعرف احداثيات خط الطول ودائرة العرض
فيقوم المايكروكنترول المثبت فى الصاروخ بتلقى المعلومات ويقوم بتوجيه الصاروخ خلال رحلته الطويله حتى يصل الى هدفه بدقه رهيبه

هذا البرنامج بسيط جدا ومنتشر جدا فى كل مكان
تستخدمه السفن والطائرات وحتى السيارات والتاكسيات

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

الطائرات الحربية مثلا تتطور من الناحية الميكانيكية ومن ناحية المحركات بلا شك

ولكن
نظرية الطيران واحده منذ وضعها الاخوان رايت عام 1903
والمحركات تعمل بنفس الطريقه ايضا سواء احتراق داخلى كما اخترعه ديزل عام 1890
او نفاث كما وضع نظريته نيوتن فى القرن السادس عشر

لكن التفوق الرهيب بين طائرة وطائرة هو فى البرمجيات
هى التى تكفل الدقه فى الملاحه وفى التخفى وفى الهروب والمناورة وفى دقة التصويب وفى كل شئ

ونفس الطائرة هى هى بدون البرمجيات تفرق عن الاخرى كما تفرق البطه عن الطائرة

والكل يعلم طبعا ان امريكا تبيع لنا الطائرات لا مشكله
ولكن تجردها فقط من البرمجيات فتصير لا قيمة لها فى اى صراع

اتمنى ان تبدأ حكومتنا فى تصنيع ميكروكنترول مصرى
وما يستلزمه من مصانع الترانزستورات والدوائر المتكامله ومصانع الـ
IC masking
الى اخره

ولولا ضيق المجال هنا كنت سردت ماذا يمكن ان تفعله البرمجيات فى كل نواحى حياتنا المدنية والعسكرية

الحقيقة اننا لو اهتمينا بالبرمجيات سنصير دولة متقدمة جدا وقوية جدا