لماذا أرفض وجود كائن خارجي خالق للكون - 3
مقدمة فنية "ثرثرية" لا بد منها تمهيداً لما هو آت :
ربما تكون هذه المقالة وما قد يأتي بعدها حاملة لتفاصيل "فنية" بشكل ما. وربما يفهمها من له علم بالبرمجة وخاصة مباديء "البرمجة الشيئية أو الكائنية التوجه" Object Oriented Programming ومن له خلفية بعلم المكتبات والمعلومات أكثر ممن لا يعرف عن هذه العلوم.
أعتذر عن هذا للقاريء الغير متخصص ولكني أتحدث عن تجربة واقعية، وعملي وتخصصي جزء من تلك التجربة التي لا أستطيع أن أفصلها عن أفكاري وعن وجودي. ومع هذا سوف أحاول أن أكون مبسطاً قدر الإمكان، لأن الذي يهمني حقاً هو أن يفهمني الجميع، وليس فئة دارسة لمجال محدد ومتعمقة فيه.
فأنا لا أحب "الكهنوت" و"الطلسمة" ، وكما يحصل في الفلسفة وفي الطب وفي الفيزياء يحصل في البرمجة أيضاً.
هناك فئة من الناس ترى نفسها في محل "الصفوة المختارة" ، لديهم إحساس داخلي بالتفوق على بقية البشر لأنهم فهموا مجموعة من المباديء والمصطلحات المعقدة والتي يصعب على بقية الناس فهمها.
وقد كان هذا هو سبب عودتي إلى النادي في هذه الفترة الأخيرة بالأساس. لكي أحطم "الكهنوت" قدر استطاعتي.
وكنت أتصور أنني سوف أحطم الكهنوت ثم أرحل في صمت، ولم أتخيل أن المآل سوف يصير بي إلى هنا في هذه الساحة أو غيرها لأتحدث عن الإلحاد الروحي.
فبشكل مصادفة وفي وقت فراغ، فكرت أن أفتح صفحة النادي ذات يوم ، واتجه انتباهي بشدة إلى موضوع طرحه زميل لنا هو "قارع الأجراس" في ساحة الحاسب الآلي اسمه "استفسار خاص للمبرمجين".
http://www.nadyelfikr.net/index.php?showtopic=53744
لاحظت أن زميلي يسأل عن شيء ، ولديه تشوق للمعرفة عن كيفية برمجة تطبيق "موسوعة"، وقد طرحه منذ أبريل الماضي ولم يرد عليه أحد، حيث رددت عليه وفقاً لمعلوماتي في هذا المجال. ومن خلال حوارنا أحسست بالتحمس الشديد لكي أضع كل ما أستطيع من أفكار تبسيطية. لأنني لمست فيه معاناة شديدة ورغبة قوية جداً للمعرفة، خاصة بعد أن حكى هو لي من خلال مداخلاته كيف أنه سعى ليسأل عدة مبرمجين عن كيفية صنع هذا التطبيق، وكانت النتيجة أنه لم يرد عليه أحد، والذين ردوا عليه تعاملوا معه بأسلوب "الكاهن الأعظم" ، مما أصابه باليأس والإحباط، ولكنه مع ذلك، بقي محتفظاً بروح القتال وبقي مصمماً على أن يكسر الكهنوت ويستمر في محاولة الفهم.
من ضمن ما قلته للزميل في ذلك الموضوع عبارة آمنت بها كثيراً وكان يهمني أن أوصلها له وهي :
Array
صدقني لا يمكنك أن تتعلم الـ Object Oriented Programming من الكتب. ولا بد أن تأخذ هذه المباديء عن شيخ
[/quote]
جعلني هذا أعود إلى تلك اللحظة التي دخلت فيها لأول مرة إلى مركز التدريب التابع لمايكروسوفت حيث تلقيت أول كورس في تقنية مايكروسوفت التي أحدثت ثورة في عالم البرمجة والتي تسمى Dot Net Framework .
فقد تم إدخالي لأول مرة بالخطأ إلى كورس متقدم لا يجب على المبتديء الذي لا يعلم شيئاً عن برمجة الكائنات أن يدخله.
وكان من سوء حظي ، أن دخل علينا مدرس جاءت به تلك الشركة وتعاقدت معه وهو بالأساس أستاذ جامعي في جامعة حكومية.
وهذا ما جعله "كاهناً" بامتياز.
فقد دخل الرجل ليعقد ويخيف الدارسين، لا ليبسط ويحببهم في الموضوع، متناسياً كونه ليس في جامعة الحكومة التي لا يتقاضى منها مرتباً يصلح للمعيشة وبالتالي يمكنه أن يدرّس فيها "بقرف" وبدون نفس ويعقد الناس في حياتهم كما عقدته ظروف حياته في نفسه..
بل هو في شركة كبرى خاصة دخل فيها طلبة دفعوا مبلغاً باهظاً من المال حتى يقوم هو بتعليمهم ويسقيهم المفاهيم بالملعقة خطوة بخطوة.
ولكنه لم يستطع مقاومة غرور الكهنوت في نفسه، منذ أول درس وجدت العرق يتصبب من جبيني كأنني وقفت أحاسب على ذنب اقترفته بأن تجرأت ودخلت إلى ذلك المكان المقدس وأصبت بشعور الخزي. فكلما سمعت الرجل يطنطن بمفاهيم مثل :
Object - Static - Stack Memory - Heap Memory - Dispose - Inheritance - Polymorphism - Abstraction - Classes - Method - Property - Member
ازداد إحساسي بالغصة وتصبب العرق أكثر من جبيني وشعرت بأنه لم يكن عليّ أن أتجرأ وأدخل إلى هذا المكان، ونجح الكاهن في إيصال تلك الرسالة جيداً إليّ وهي أنني لست أهلاً لأنتمي إلى هنا.
دخل المدرس وأخذ يثرثر بسرعة شديدة ، والجميع ، بمن فيهم مبرمجون يعملون في شركات بالفعل ، إلا أنهم لم يكونوا على علم ببرمجة الكائنات، جلسوا كأن على رؤوسهم الخرتيت. صمت مطبق ولم يفهم أحد كلمة مما يطنطن به الرجل الذي أخذت ابتسامة لم تخطئها عيني ، ترتسم بسخرية جانبية من وقت لآخر على شفتيه وحول جفون عينيه من خلف نظارته السميكة.
انسحبت في اليوم التالي من الكورس، وطلبت من موظف المبيعات الأحمق الذي أدخلني إلى هذا الكورس المتقدم جداً أن يبحث عن كورس "مقدمة في البرمجة" لأدخل فيه. وكنت أشعر بكآبة شديدة في تلك الفترة، فلم تكن تلك هي محاولتي الأولى لتعلم "برمجة الكائنات" والتي أكره ترجمتها العربية ، ولهذا اسمحوا لي أن أشير إليها فيما بعد بالأحرف OOP وهي اختصار العبارة الإنجليزية Object Oriented Programming .
سبقت تلك المحاولة البائسة محاولات أخرى منفردة قمت بها في البيت بقراءة كتب كثيرة لكي أتعلم الـ OOP ، بلا جدوى.
تعلمت لغة برمجة تسمى PHP يعرفها أو يسمع عنها كثيرون، وعلى سبيل المثال ، هذا المنتدى (نادي الفكر العربي) تم تصميمه بتلك اللغة PHP. ويمكن معرفة ذلك من شريط العناوين الموجود في متصفحكم الشخصي، حيث تجد مثلا أن هذه الصفحة عنوانها :
http://www.nadyelfikr.net/index.php
فالملف ينتهي بكلمة PHP وليس كما هو معتاد في صفحات الإنترنت العادية أن ينتهي بكلمة HTML أو HTM .
نجحت في تعلم لغة PHP التي يمكن عن طريقها تصميم منتدى مثل نادي الفكر، أو أي تطبيق على الإنترنت، مثل المدونات مثلاً ، أو صفحات التجارة الإلكترونية E-Commerce ، أو نظام فهرسة إلكتروني لمكتبة ما بحيث يتاح على الإنترنت، أو صفحة مثل الفيس بوك facebook التي يعرفها الجميع أو مكتبة مثل مكتبة المصطفى التي نقوم كلنا بتحميل الكتب منها دائماً وهكذا، من مثل هذه التطبيقات الكثيرة التي يعرفها جميع مستخدمي الإنترنت العاديين والتي جربها الجميع حتى الغير متخصصين بمجرد الاستعمال العادي.
إلا أنني قد وصلت إلى مرحلة في لغة PHP وهي التي تتناول مفهوم OOP في هذه اللغة، وهو ما تم إدخاله حديثاً عليها منذ الإصدارة الأخيرة من تلك اللغة. حيث لم يكن الـ OOP داخلاً فيها من قبل. وعندما كنت أصل إلى مرحلة الـ OOP في لغة PHP ومهما جربت من قراءة لكتب أو بحث عن مقالات تبسيطية لها على الإنترنت، كنت دائماً أنتهي إلى الفشل في فهم أي شيء عن هذه المباديء لوحدي.
راودني إحساس شبيه بما يحصل "للمريد" الصوفي الذي يطلب المعرفة ولكنه يطرد في كل مرة وتصفق في وجهه الأبواب.
وهو أسلوب اتبعه بعض مشايخ المتصوفة والبوذية مع طلابهم الجدد في بعض الأحيان، كانوا يطردونهم وأحياناً يشتمونهم ويشعرونهم بالإهانة، حتى "يطفش" الطالب الذي لا "يريد" بحق، ويبقى الطالب الذي يريد أن يعرف ويصل حقاً. وحتى يشعر الطالب بالمهانة وتحقير الذات، تحقيراً يدفعه إلى الخضوع وإفراغ نفسه تماماً من الـ Ego ، حتى يجعله قابلاً للتلقي من الشيخ دون مقاومة.
وهذه قصة شهيرة عادة ما تذكر في كتب البوذية وخاصة منها بوذية الزن Zen Buddhism ، وهي قصة الفيلسوف الغربي، البارع في مجاله ، والذي ذهب إلى الحكيم الصيني ليتعلم منه ما هو الـ Zen .
فرحب به الرجل ترحيباً وأكرمه ، ثم سأله عما إذا كان يود أن يشرب القهوة؟ فرد الفيلسوف الغربي بالإيجاب.
فأحضر الحكيم الصيني الفنجان والإبريق، وأخذ يصب في الفنجان، حتى فاض الماء وبدأ ينسكب خارج الفنجان، والحكيم مستمر في الصب من الإبريق والإبتسامة البلهاء تعلو شفتيه، والبروفيسور الفيلسوف الغربي يشاهد متسائلاً عما إذا كان الرجل قد أخذه السرحان، حتى صرخ الفيلسوف أخيراً وطلب من الحكيم الصيني أن يتوقف عن الصب.
فابتسم الحكيم وقال له وهو مستمر في صب القهوة التي أخذت تغرق الطاولة والأرض : لماذا أتوقف؟
فأجابه الفيلسوف وهو موقن أنه يخاطب مجنوناً : لأنك أغرقت كل شيء، هذا يكفي هل أنت مجنون؟
فتوقف الحكيم أخيراً وقال له : هذا ما تريدني أنت أن أفعله معك.
لقد جئت إلي وأنت محمل بالأفكار والفلسفات والحجج ودحضها ، والبراهين ومعكوساتها، جئت إلي وأنت مملوء عن آخرك. وتريد مني أن "أصب" فيك معرفتي عن الـ Zen . هل أنت مجنون يا بروفيسور ؟
في البداية عليك أن تفرغ نفسك تماماً من كل فلسفاتك ومفاهيمك وحججك التي تعلمتها، وتأتيني كفنجان فارغ لا شيء فيه، وعندها فقط يمكنني أن أبدأ في تعليمك عن الـ Zen .
وهكذا ، دخلت مرة أخرى وأنا في حالة "يأس" تام واستسلام للمعلم الجديد في مركز تعليم ماكروسوفت، بعد أن أحالني الموظف إلى كورس آخر عنوانه " مقدمة في البرمجة بلغة #C " والتي تنطق هكذا " سي شارب see sharp " ، والتي أنتجتها شركة مايكروسوفت كنسخة معدلة ومطورة ومحسنة عن لغة ++C السابقة عليها والتي تنطق see plus plus .
وكان المعلم الجديد أستاذاً بحق، إلى درجة أنني حتى اليوم، ورغم كل هذه الفترة الزمنية البعيدة التي مضت ورغم أن ذلك الكورس لم يمكث أكثر من شهر ،إلا أني لا زلت أتذكر صوته، كلماته ، نبراته، تعابيره، ورسماته على السبورة البيضاء بالقلم الفلوماستر ، وهو يشرح لنا ويسقينا عن المعرفة المتعلقة بالـ OOP ، وكلما جئت لكي أشرح إحدى تلك المفاهيم أو أستذكرها، فإن "روح المعلم" تطوف فوق ذهني ، وكلماته تتردد مرة أخرى في مسامعي ، ورسماته على السبورة تتضح مرة أخرى أمامي كمن يرى رأي العين. والمفارقة هو أنه كان شخصاً عادياً جداً ، عادياً أكثر من اللازم.
وكان الذي عرفته وأدهشني لاحقاً هو أن جميع الطلاب انسحبوا من الكورس الذي كان فيه "الكاهن" والذي انسحبت أنا منه منذ أول يوم، وأن الشركة أنهت التعاقد معه تماماً.
أما "المعلم" الذي فهّمني أخيرا ماهو الـ OOP فكان إنساناً حقاً . لم ترتسم على شفتيه أية سخرية مثل الكاهن الذي سبقه. لم يحاول تخويف أحد، كان "إنساناً" مجرد إنسان يتحدث معنا كواحد منا لا كمعلم. مما يعيد إلى ذهنيتي الحكمة الشرقية المأخوذة عن بوذية الزن وعن التصوف بشكل عام والتي تقول :
لكي تصل إلى الإستنارة ، عليك أن تصبح إنساناً عادياً ، توقف عن محاولتك أن تصبح إنساناً غير عادي.
إن الإنسان الغير عادي بحق في هذا العالم، هو الإنسان الذي غايته أن يكون "عادياً" ، لأن جميع الناس يطمحون إلى أن يصبحوا "غير عاديين" ولهذا لا يصلون إلى شيء. أما المسيح ، أما بوذا ، أما لاو تسو ، أما "المعلم" فهو ذلك الذي استطاع أن يقاوم هذه الرغبة الجارفة بأن يصبح "غير عادي" و يجعل من نفسه "إنساناً" إلى درجة أن تبلغ إنسانيته مرحلة من التقدم ينجح فيها أخيراً في أن يصبح "عادياً" جداً .
أن يصبح إنساناً
وللموضوع بقية...
أراكم بعد حين