مبرمجو أبولو 11 … الجنود المجهولون الذين لم ينالوا حقهم من الثناء

مبرمجو ابولو 11
0

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

فحواسيب IBM التي استُخدمت في المشروع لعبت دورًا بطوليًا في تلك النقلة النوعية بتاريخ أمريكا، وهي التي حققت المسعى الفني الأكثر طموحًا على الإطلاق من حيث دقة تحديد الموقع والسرعة، وقدمت إنجازات خارقة بما يخص تنفيذ المهام في الوقت الحقيقي real-time أكثر مما كان متوقع منها.

أمّا عن المبرمجين الذين شرعوا في مختبر Apollo11 لتطوير برنامج الفضاء في منتصف الستينات، فقد كان لهم الفضل الأكبر لمجموعة من الأسباب ومنها: اكتشاف طريقة لتخزين البرامج التي تسمى “rope memory”، ولإنشائِهم نسخة خاصة من لغة البرمجة “Assembly”، ومَن مِن معشر المبرمجين لا يعرف لغة “Assembly”، اللغة الغامضة والأكثر صعوبةً في قراءتها، ولكن الأكثر سهولةً بالنسبة لـ Apollo والأكثر فائدةً بفضل ترجمتها بسرعة إلى لغة الآلة (أصفار وواحدات)، ولعل ذلك ما جعل مبرمجي معهد ماساتشوستس للتكنولوجيا (MIT Instrumentation Laboratory) يطورونها، ويستخدمونها لكتابة آلاف الأسطر من شيفرتهم البرمجية.

مارغريت هاملتون أمام الأكواد البرمجية

وهنا تظهر عالمة الكمبيوتر ومديرة قسم هندسة البرمجيات للمشروع Margaret Hamilton، وهي تقف بجوار مجموعة هائلة من الكتب الضخمة التي تحتوي على البرنامج.

كما ساهمت أنظمة الحواسيب التي كان يعتمد عليها بالمحاكاة في كل من المركزين Johnson Space Center و Cape Canaveral بالسماح للمراقبين بأن يكونوا جزءًا من الرحلة: من نقطة الإطلاق إلى الهبوط على سطح القمر، إلى إعادة الدخول بنطاق كوكب الأرض، كما شملت أيضًا ضخ كمية كبيرة من البيانات التي ساعدت على نمذجة ومحاكاة الرحلة قبل القيام بها بشكل فعلي، لتكوّن تجربةً أوليةً فعليةً قدر الإمكان، وإعداد الموظفين للتعامل مع المشاكل المتوقع حدوثها.

مبرمجي صاروخ أبولو

المشاكل لم تكن حكرًا فقط على العاملين، فقد واجهت IBM مع فريقها كمًا هائلًا من المشاكل بسبب عدم تواجد أنظمة تشغيل قوية كفاية في تلك الحقبة. لذا، وقع على عاتقها بناء نظامها المتعدد المهام والوظائف، والذي يوجد بكل حاسب نستخدمه اليوم، بالإضافة إلى إنشاء قواعد بيانات في الزمن الحقيقي والتي تدعى DataTables، وذلك قبل تواجد قاعدة البيانات العلائقية المعروفة اليوم، مما جعل هذه الرحلة مفعمة بالتحديات، إلى جانب أنّها مفعمة بالمخاطر الغير متوقعة بسبب أخطاء النظام الجديد الذي لم يتم اختباره بشكل جيد.

عند إطلاق المركبة، كان الضغط على مبرمجي IBM كبيرًا، فقد كان يعمل أفرادها 80 ساعة بالأسبوع في محاولة أن يكون كل شيء حسب المخطط الزمني الموضوع، وعدم التسبب في تأخر الرحلة، يقول Harry Hule الذي كان له الدور الأكبر في عملية المحاكاة في Housten قبل أن ينتقل لعملية الإشراف على الأكواد البرمجية للآخرين: “كنت صغيرًا، أعتقد كنت في الحادي والعشرين من عمري عندما بدأت، لم أكن أعرف ما يمكننا فعله، ولكن في النهاية عملنا على برنامج ذهب بنا إلى الفضاء، بالرغم من كمية الأدرينالين الكبيرة التي كانت تضخ بأجسامنا طيلة تلك الفترة”.

لم تكن أهمية نحاج هذه البرمجية فقط على المهندسين والمبرمجين، بل أيضًا على حياة رواد الفضاء الذين اعتمدوا اعتمادًا كبيرًا عليها، فمنذ اللحظة التي انضم بها Tom Steele كان على دراية مع فريقه بما هو على محك، فوفقًا لقوله: “هذه البرمجيات صممت من أجل القيام بالأشياء بشكل أفضل، ولكن أيضًا قادرة على قتل أي رجل في حال أُفسد أي أمر”.

المبرمجين في أبولو

كانت قوة المعالجات ومقدار الذاكرة المتاحة محدودة للغاية بحيث يقضي المبرمجون وقتًا طويلًا لتبسيط الكود، وخاصةً الأجزاء التي تتكرر بشكل دائم، فقال Jones عن عمله في حساب مسارات المركبة الفضائية على حواسيب IBM الرئيسية: “سأقضي أشهرًا في محاولة تعديل المعادلات الرياضية لتأخذ ذاكرةً أقل وتنفذ بشكل أسرع، وبنفس الوقت نحصل على نفس الإجابة الصحيحة، وقد تستهلك إزالة تعليمة من حلقة برمجية شهرًا كاملًا من المحاولة”.

مبرمجين مشروع أبولو

“لو لم نفعل ذلك لكنّا فشلنا من تشغيل الحواسيب؛ لأنّ ذواكرها أقل بآلاف المرات من ذواكر حواسيب اليوم، كان يجب تقسيم البرنامج إلى عدة حواسيب، كل منها مختلف بطور معين من أطوار الرحلة إلى القمر، وبذلك يستغرق كل قسم ثواني فقط لتحميله، مما يزيد من عملية تتبع المركبة الفضائية، وأيضًا من سرعتها لتتحرك سبعة أميال في الثانية”.

كانت الأنظمة على متن المركبة الفضائية أقل قدرةً من تلك التي على الأرض، لأطرح مثالًا: كانت الأنظمة الموجودة على متن الصاروخ Saturn V فقط قادرة على تشغيل 15000 عملية في الثانية، ولا تدعم العمليات الرياضية التي بها الفاصلة العائمة.

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

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

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

قدم الانسان على القمر ابولو

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

0

شاركنا رأيك حول "مبرمجو أبولو 11 … الجنود المجهولون الذين لم ينالوا حقهم من الثناء"

أضف تعليقًا