Anzeige
Anzeige
News

50 Jahre Mondlandung: Code der Apollo 11 auf GitHub

Der Code der Computersteuerungen für die Apollo-11-Mondlandemission steht auf GitHub zur Verfügung und erfreut Softwareentwickler weltweit.

Von Dieter Petereit
2 Min.
Artikel merken
Anzeige
Anzeige

One small step for (a) man. (Foto: Digital Images Studio / Shutterstock)

Burn, Baby, Burn. AGC-Namenskonventionen amüsieren

Anlässlich des fünfzigsten Jahrestages der Mondlandung erhält der auf GitHub verfügbare Source-Code des Apollo-11-Computers verstärkt Aufmerksamkeit. Auf Reddit tauschen sich Entwickler aktuell in humorvoller Weise miteinander aus. Dabei stehen die lustigen und bisweilen schrägen Kommentare, die das Entwicklerteam um die mittlerweile 82-jährige Margaret Hamilton in den Code eingebaut hatte, besonders im Fokus.

Anzeige
Anzeige

So gaben die Entwickler etwa der Start-Routine den Namen BURN_BABY_BURN—MASTER_IGNITION_ROUTINE. An anderen Stellen des Codes finden sich verballhornte Shakespeare-Zitate oder Belege dafür, dass temporäre Funktionen (TEMPORARY, I HOPE HOPE HOPE) letztlich doch im endgültigen Code geblieben sind.

Das Kommando-Modul Columbia der Apollo 11. (Foto: Tom Durr/Shutterstock)

Apollo 11: Code schon seit 2003 transkribiert

Schon 2016 machte der ehemalige Nasa-Mitarbeiter Chris Garry der Entwicklergemeinde eine Freude und stellte den kompletten Source-Code des Apollo 11 Guidance Computers (AGC) bei GitHub online. Seit 2003 konnten Entwickler bereits Zugriff auf den Code erhalten, mussten dazu aber Kontakt zur Nasa aufnehmen. Mit der Verfügbarkeit auf GitHub wurde der Steuerungscode ganz unkompliziert der breiten Öffentlichkeit zugänglich gemacht.

Anzeige
Anzeige

Die Arbeiten am AGC gelten als Beginn des „Software-Engineering“ als Begriff. Die damals 32 Jahre alte MIT-Mitarbeiterin Margaret Hamilton prägte die Bezeichnung, um zu verdeutlichen, dass das Entwickeln von Software nicht weniger bedeutend als das Entwickeln eines Raketenantriebs ist. In den Sechzigern des vergangenen Jahrhunderts wurden Softwareentwickler noch nicht sonderlich ernst genommen.

Anzeige
Anzeige

Einfache Steuerung mit komplizierter Speicherung

Die Steuerung des AGC basierte auf einfachen Verben und Substantiven, die die Astronauten über spezielle Tastaturen auch mit schweren Handschuhen noch sicher eintippen konnten. Das erinnert entfernt an Überlegungen, die auch heutige UX-Designer anstellen.

Die Tastatur der Apollo 11 im Nachbau. (Foto: S&T Geotronics/Kickstarter)

Gespeichert war die Software seinerzeit in einem System, das als Core Rope Memory, zu deutsch „Fädelspeicher“, bezeichnet wurde. Hierbei handelte es sich um eine rein physikalische Methode der Speicherung.

Anzeige
Anzeige

Der Code, geschrieben in der damals gebräuchlichen Sprache Assembly, wurde mit Drähten zu einem lesbaren System vernäht. Dazu musste der Code in seine Nullen und Einsen zerlegt werden. Sollte der Computer eine Eins auslesen, wurde der Draht durch einen Ferritkern gefädelt, sollte er Null bedeuten, ging er am Kern vorbei. Um die insgesamt 73 Kilobyte an Daten aufzufädeln, war monatelange manuelle Arbeit mit Spezialmaschinen erforderlich.

Konzepte aus dem AGC noch heute in Gebrauch

Da es bei der Steuerungssoftware für die Apollo 11 im Zweifel um Leben oder Tod ging, erdachten die Entwickler Konzepte, die auch heute noch zu den Best Practices der Programmierung gehören. So führten sie etwa das Konzept der Priorisierung ein. Damit konnten weniger wichtige Prozesse zum Vorteil wichtigerer Prozesse einfach abgebrochen werden, um Rechenkapazitäten freizumachen.

t3n meint:

Die Mondlandung der Apollo 11 ist ein faszinierendes Kapitel in der Geschichte der menschlichen Innovationskraft. Das bezieht sich nicht nur auf die für damalige Verhältnisse spektakuläre Software, sondern betrifft jeden Aspekt dieses Projekts. Es lohnt sich, einmal die Geschichten aus der damaligen Zeit zu lesen. Mir blieb dabei vor Staunen so manches Mal der Mund offen stehen.

Dieter Petereit

Zum Weiterlesen: Zum 50. Jubiläum der Mondlandung: Computer der Apollo-Rakete landet auf Kickstarter

Mehr zu diesem Thema
Fast fertig!

Bitte klicke auf den Link in der Bestätigungsmail, um deine Anmeldung abzuschließen.

Du willst noch weitere Infos zum Newsletter? Jetzt mehr erfahren

Anzeige
Anzeige
Kommentare (1)

Community-Richtlinien

Thomas Schmidt

Spannendes Kapitel der Menschheit, ich würde mir den Code gerne ansehen, geht das auch in Notepad++ ?

Bitte schalte deinen Adblocker für t3n.de aus!
Hallo und herzlich willkommen bei t3n!

Bitte schalte deinen Adblocker für t3n.de aus, um diesen Artikel zu lesen.

Wir sind ein unabhängiger Publisher mit einem Team von mehr als 75 fantastischen Menschen, aber ohne riesigen Konzern im Rücken. Banner und ähnliche Werbemittel sind für unsere Finanzierung sehr wichtig.

Schon jetzt und im Namen der gesamten t3n-Crew: vielen Dank für deine Unterstützung! 🙌

Deine t3n-Crew

Anleitung zur Deaktivierung
Artikel merken

Bitte melde dich an, um diesen Artikel in deiner persönlichen Merkliste auf t3n zu speichern.

Jetzt registrieren und merken

Du hast schon einen t3n-Account? Hier anmelden

oder
Auf Mastodon teilen

Gib die URL deiner Mastodon-Instanz ein, um den Artikel zu teilen.

Community-Richtlinien

Wir freuen uns über kontroverse Diskussionen, die gerne auch mal hitzig geführt werden dürfen. Beleidigende, grob anstößige, rassistische und strafrechtlich relevante Äußerungen und Beiträge tolerieren wir nicht. Bitte achte darauf, dass du keine Texte veröffentlichst, für die du keine ausdrückliche Erlaubnis des Urhebers hast. Ebenfalls nicht erlaubt ist der Missbrauch der Webangebote unter t3n.de als Werbeplattform. Die Nennung von Produktnamen, Herstellern, Dienstleistern und Websites ist nur dann zulässig, wenn damit nicht vorrangig der Zweck der Werbung verfolgt wird. Wir behalten uns vor, Beiträge, die diese Regeln verletzen, zu löschen und Accounts zeitweilig oder auf Dauer zu sperren.

Trotz all dieser notwendigen Regeln: Diskutiere kontrovers, sage anderen deine Meinung, trage mit weiterführenden Informationen zum Wissensaustausch bei, aber bleibe dabei fair und respektiere die Meinung anderer. Wir wünschen Dir viel Spaß mit den Webangeboten von t3n und freuen uns auf spannende Beiträge.

Dein t3n-Team

Kommentar abgeben

Melde dich an, um Kommentare schreiben und mit anderen Leser:innen und unseren Autor:innen diskutieren zu können.

Anmelden und kommentieren

Du hast noch keinen t3n-Account? Hier registrieren

Anzeige
Anzeige