مارغريت هاميلتون
مهندسة البرمجيات التي ساعدت أبولو على الوصول إلى القمر
قبل ثلاث دقائق من هبوط نيل أرمسترونغ وباز ألدرين على سطح القمر في عام 1969، بدأت الأضواء الحمراء والصفراء تومض على لوحة التحكم الخاصة بمركبتهما. وتشير علامة التحذير رقم «1202» هذه إلى مشكلة تتعلق بأجهزة مركبة الهبوط إيغل Eagle؛ مما يعرض هبوطهما للخطر. ولم يدركا الأمر في ذلك الوقت، لكن قائمة مراجعة رواد الفضاء التي أكملاها قبل البدء بإجراء الهبوط أخبرتهما بالخطأ بضبط مفتاح رادار المُلتقى Rendezvous Radar إلى الموضع الخطأ؛ مما تسبب في فرط تحميل وحدة المعالجة المركزية للمركبة.
ولحسن الحظ، فقد اكتشفت برمجيات الحاسوب هذه المشكلة، وبعد إطلاق الإنذار منح الأولوية بسرعة لأنظمة الهبوط، وحذف المهام الأقل أهمية مثل رادار المُلتقى. أعطت شاشة الأولوية لرائدي الفضاء خياراً للهبوط أو عدمه، وبفضل ثقتهما في كود البرمجيات، فقد واصلا طريقهما لاتخاذ قفزة عملاقة للبشرية.
طوّر البرنامج الذي أنقذ الموقف وحقق هذا الإنجاز المهم فريق من مبرمجي الحاسوب في معهد ماساتشوستس للتكنولوجيا Massachusetts Institute of Technology (MIT)، بقيادة مارغريت هاميلتون Margaret Hamilton البالغة من العمر حينذاك 31 سنة. وكان أول عقد أصدرته وكالة ناسا لبرنامج أبولو هو عقد تطوير نظام التوجيه والملاحة هذا، لكن لم يكن هناك ما يعرف بهندسة البرمجيات في ذلك الوقت. وكانت الحوسبة لا تزال في مهدها، لذلك كان كل ما تعلمته هاميلتون وفريقها مستمداً من التدريب العملي لم تكن هناك دورات لأخذها أو أدلة لاتباع تعليماتها؛ فكان عليهم وضعها بأنفسهم أثناء تقدم عملهم. وفي الواقع، فقد صاغت هاميلتون نفسها مصطلح «هندسة البرمجيات» Software Engineering، لأنها أرادت له أن يُعتبر مجالاً شرعيّاً ومحترماً في حد ذاته.
والمذهل أن دور هاميلتون في برنامج أبولو لم يكن ليحدث تقريباً، لأنه بعد انتقالها إلى بوسطن مع زوجها، كانت تخطط في الأصل لدراسة الرياضيات التجريدية Abstract Mathematics في جامعة برانديز. ومع ذلك، عندما عرضت عليها وظيفة في برنامج معهد MIT لوضع برمجيات للتنبؤ بالطقس، تغيرت حياتها تماماً. وواصلت عملها حتى صارت مديرة قسم هندسة البرمجيات في المعهد، وأسست فيما بعد شركة البرمجيات الخاصة بها، هاميلتون تكنولوجيز Hamilton Technologies.
عند العمل على برنامج أبولو، ركزت هاميلتون على اكتشاف أخطاء النظام وبرامج الاسترداد. وعرضت شاشات الأولوية التي وضعتها في الوقت الفعلي مع رواد الفضاء، لتحذيرهم من أي طوارئ واسترداد المعلومات في حالة تعطل الحاسوب. ومع احتمال تعرض حياتهم للخطر، فقد كان من الأهمية بمكان أن يكون برنامجها موثوقاً به جدا، ومن المؤكد أن عملها الشاق أثمر خلال تلك اللحظات القليلة المفعمة بالتوتر قبل هبوط أبولو 11.
وأعجبت وكالة ناسا بمتانة برنامجها لدرجة أنها قررت استخدامه في جميع مهام أبولو المأهولة، وتعديله للاستخدام مع مختبر سكاي لاب Skylab ومكوك الفضاء وأول أنظمة الطيران الرقمية السلكية، لتحل محل أدوات التحكم اليدوية في الطيران.