وهبط نيل أرمسترونغ وباز ألدرين في "قاعدة ترانكويليتي" على سطح القمر في 20 يوليو 1969، محققين هدف الرئيس جون إف كينيدي المتمثل في إنزال رجل على سطح القمر بحلول نهاية الستينيات. وتم إطلاق أبولو 11 بواسطة صاروخ ساتورن 5 من مركز كينيدي للفضاء قبل أربعة أيام من تاريخ الهبوط.
وكانت هذه هي المهمة الخامسة المأهولة لبرنامج أبولو التابع لناسا، وتكونت من ثلاثة أجزاء: وحدة قيادة (CM) مع مقصورة لرواد الفضاء الثلاثة، ووحدة خدمة (SM)، والتي دعمت وحدة القيادة بالدفع، والطاقة الكهربائية، والأكسجين، والماء، ووحدة القمر (LM) التي تم استخدامها للمس سطح القمر.
وعندما شرع المبرمجون في MIT Instrumentation Laboratory في تطوير برنامج الطيران المستخدم في أبولو 11، كان عليهم اختراع، والتوصل إلى طريقة جديدة لتخزين برامج الكمبيوتر، والتي تسمى "الذاكرة الحبلية".
وبالنسبة إلى جهاز Apollo Guidance Computer، كتب مبرمجو MIT آلاف الأسطر من لغات البرمجة غير الاعتيادية (esoteric code، وهي لغات برمجة الحاسوب)، والتي ما تزال صعبة الفهم حتى بالنسبة لمبرمجي الوقت الراهن، لأنها صممت من أجل الحواسيب وليس البشر.
وبينما كان متاحا للجمهور لفترة من الوقت، تم تحميل الرمز البرمجي لجهاز Apollo Guidance Computer، لأول مرة على الإنترنت بواسطة الباحث التقني رون بيركي في عام 2003، بعد أن قام بنسخه من الصور الممسوحة ضوئيا للنسخ المطبوعة الأصلية.
وفي حديثه إلى موقع Quartz في عام 2016، قال بيركي: "تم مسحها ضوئيا بواسطة طيار يدعى غاري نيف في كولورادو. وحصل معهد ماساتشوستس للتكنولوجيا على عمليات المسح ووضعها على الإنترنت في شكل صور صفحة، والتي لسوء الحظ تم تشويهها في هذه العملية لدرجة أنها أصبحت غير قابلة للقراءة في بعض الأماكن".
وقال بيركي إنه أعاد بناء الأجزاء غير المقروءة، مستخدما مهاراته الهندسية لملء الفراغات. وأضاف: "تمكنت من الحصول على بعض عمليات المسح الضوئي البديلة من غاري نيف للأجزاء غير القابلة للقراءة، ولحسن الحظ اكتشفت أن الأجزاء التي ملأتها كانت صحيحة بنسبة 100%".
لكن الرمز البرمجي ظل بعيدا عن دائرة الضوء لأكثر من عقد من الزمان، حتى قام كريس غاري المتدرب في وكالة ناسا بتحميله على موقع GitHub ومشاركة التعليمات البرمجية مع ملايين المبرمجين، وفقا لموقع Quartz.
وفي غضون ساعات من ذلك، بدأ المبرمجون في تشريح البرنامج وتفصيل التعليمات البرمجية.
وكانت التعليمات عبارة عن أوصاف إنجليزية بسيطة للمهمة التي يتم إجراؤها في نقطة معينة، ولكن غالبا ما يترك المبرمجون بعض النكات بين السطور، بالإضافة إلى الكثير من التعليقات المعبرة عن ثقافة الستينيات.
وفي الملف المسمى "LUNAR_LANDING_GUIDANCE_EQUATIONS" ، يبدو أن سطرين من التعليمات البرمجية التي من المفترض أن تكون مؤقتة انتهى بها الأمر إلى أن تصبح دائمة، على عكس آمال مبرمج واحد.
وفي الملف نفسه، هناك أيضا رمز يوجه رواد الفضاء إلى "إدارة الأشياء السخيفة". وقال بيركي: "هذا الرمز يدور حول تحديد موقع هوائي LR (رادار الهبوط). أفترض أنه يعرض رمزا لتحذير رائد الفضاء لتغيير موضعه".
وفي ملف يدعى "PINBALL_GAME_BUTTONS_AND_LIGHTS"، والذي يوصف بأنه "برنامج لوحة المفاتيح ونظام العرض المتبادل بين Apollo Guidance Computer ومشغل الكمبيوتر، هناك إشارة إلى شكسبير".
ويُعتقد أن هذا يرجع إلى أن لغة Apollo Guidance Computer كونها تستخدم أسماء وأفعال محددة مسبقا لتنفيذ العمليات.
ومنذ أن تم تحميله، اقترح عشرات من المطورين التغييرات والأخطاء المحتملة للرمز البرمجي لكمبيوتر مهمة "أبولو 11".
المصدر: إكسبريس