الأربعاء، 20 يوليو، 2011

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

الصفحه الرئيسيه

خمس سنوات وهو يعمل لتحقيق فكرته العبقرية التي وصفها البعض بأنها مجنونة وغريبة، وفي تحد لكل من توقع فشل مشروعه أعلن طالب هندسة الالكترونيات أنه قادر على تنفيذ مشروعه الذي ينتظر يمثل بحق انقلابا في ميدان البرمجة، ليجيب أسئلة دارت في خلده قبل بداية عمله في المشروع وهي: لماذا يقع الاعتماد دائما على لغات برمجية لكي نطور برامج معلوماتية، وهو ما يحد من انتشار تعلم البرمجيات ‏وتطويرها؟‎ ‎لماذا لا تقع البرمجة من غير الاعتماد على لغة برمجية، وإنما بالاعتماد فقط على بيئة تطوير؟، وكان نتاج هذا العمل هو المشروع الطموح "البرمجة بدون كود".

دوافع كبيرة دفع محمود سمير فايد (22 عام) للتضحية بخمس سنوات من حياته لكي يظهر هذا المشروع العبقري إلى النور، أهمها ما لخصه في معادلته (البرمجة بدون كود = إمبراطورية يصنعها مبرمج واحد في أيام)، ويفرق فايد بين البرمجة بكود والبرمجة المبتكرة في أن الأخيرة هي التطور الطبيعي للأولى وذلك في علاقة تشبه علاقة الـ(dos) والـ(windows)، فالبرمجة بالكود تعتمد على المواجهة الخطية وكتابة الكود، بينما البرمجة بدون كود تعتمد على الواجهة الرسومية وتقديم خيارات تغني عن اللجوء للكود أو الاحتكاك به أصلا.

البديل المكافئ

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

والمشروع اعتمد على أكثر من عشرين فكرة عبقرية مختلفة تم مزجها معا للوصول إلى المشروع في صورته النهائية، أحدها هو ملاحظة التطور الذي حدث في نظام التشغيل من المواجهة القديم (dos) إلى نظام النوافذ (windows) الذي يعتمد على المواجهة الرسومية مما أدى إلى طفرة في سهولة استخدام الحاسب، ليتاح استخدامه لمختلف المستويات التعليمية، وبتدريب بسيط، ومن هنا تساءل فايد لماذا لا تكون هناك طفرة بقدر مماثل في عالم البرمجة –بلا شك- تطورت لغات البرمجة كثيرا في الآونة الأخيرة، وأصبحت تشتمل على العديد من برامج التصميم مثل الـ(Report) ومصمم التقارير الـ(Form Designer)، ومصمم قواعد البيانات Designer)).

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

أعمق أسرار البرمجة

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

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

ويشير المهندس محمود فايد إلى أن هناك طريقتين عمليتين لاستخدام المشروع وهما استخدامه كبيئة عمل مستقلة لتطوير البرمجيات بدون كود وحينها ينبغي الانتباه إلى أن اللغات التى يرتكز عليها المشروع هي المصدر، وهذه اللغات مجانية ومفتوحة (xHarbour و C/C++)، ولكن مستخدم البرمجة بدون كود ليس بحاجة إلى أن يتعلم تلك اللغات لكي يستخدم المشروع - لأنه أساسا سوف يكون معزول تماما عن هذه اللغات - وهذا طبيعي لأن البرمجة تتم بدون كود.

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

الخادم الممتاز

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

ومنذ ديسمبر عام 2005 تطور المشروع حيث كان الهدف هو إيجاد بيئة تطوير لا تشكل قيودا على نوعية التطبيقات التي يتم إنتاجها، بحيث تكون أداة مثمرة تزيد من الإنتاجية وتبسط أمور البرمجة، وكان هدف فايد الأساسي هو تنمية مهاراته من مجرد مبرمج كمبيوتر، إلى باحث مبدع والمساهمة في محاولة تغير الوضع من مجرد مستقبلين للتكنولوجيا إلى مصنعين لها، وفى النصف الأول من عام 2006 - تمكن من وضع أساس علمي للفكرة من خلال ابتكار نمط برمجة جديد بحيث يدعم هذا النمط فكرة ومبدأ الـ"Programming Paradigm"، بما يلغي أي قيود أو عوامل سلبية تقلل من كفاءة استخدامها ويسمح بالاعتماد على البرمجة بدون كود بصفة كاملة، أما في النصف الثاني من عام 2006 تم تحويل هذا النمط من مجرد بحث علمي وتصميم نظري - إلى كيان عملي قابل للاستخدام.

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




هناك تعليق واحد:

  1. اجمل شىء ان المشروع مفتوح المصدر http://pwct.org

    ردحذف