To infinity and beyond – Code in Space



To infinity and beyond – Code in Space

Recently, the source code for the Apollo11-mission’s command and lunar modules were released on Github [1] so everyone can have a look at the code which helped the Americans to get to the Moon.

It’s in Assembly which will probably make it difficult too read for many programmers, but there are some comments and naming conventions which all programmers – and non-programmers – can appreciate. For example, there is a file called BURN_BABY_BURN—MASTER_IGNITION_ROUTINE.agc which, not surprisingly, contains the General purpose ignition routines that launched the Saturn V rocket [2].

There is a file called Burn Baby Burn Master Ignition Routine

Scanned code uploaded

Hard copies of the source code were originally scanned by airline pilot Gary Neff and put online by the famous Massachusetts Institute of Technology(MIT). However, some of the code was unreadable in places probably due to the quality of the original printouts, so tech researcher Ron Burkey decided to type out the code and fill in the missing parts.

Later, he got some of the missing bits from Gary Neff, which showed that the parts Ron Burkey had filled in were correct [3]. Ron Burkey has even built a simulator of the Apollo Guidance Computer [4].

Woman insisted on rigorous testing

Considering the recurrent discussion about why there are so few female programmers, it is an interesting fact that the development of software for the Apollo program was led by Margaret Hamilton. She was awarded the Presidential Medal of Freedom a year ago. Here is a description of her approach to the challenge from NASA’s website:

“The very first contract NASA issued for the Apollo program (in August 1961) was with the Massachusetts Institute of Technology to develop the guidance and navigation system for the Apollo spacecraft. Hamilton, a computer programmer, would wind up leading the Software Engineering Division of the MIT Instrumentation Laboratory (now Draper Labs). Computer science, as we now know it, was just coming into existence at the time.

Hamilton led the team that developed the building blocks of software engineering – a term that she coined herself. Her systems approach to the Apollo software development and insistence on rigorous testing was critical to the success of Apollo. As she noted, “There was no second chance. We all knew that.” [5]

International Space Station

If you are interested in more information about source code in space, you can have a look at NASA’s website. Here you can read that the International Space Station (ISS) has 3.3 million lines of code on the ground supporting over 1.8 million lines of flight software on the ISS [6].

Code alerting you of Space Station

By the way; on Github there is this little python script, that will alert you whenever the International Space Station is near your longitude and latitude. As the readme.md explains it:

“This is a quick and dirty python app that runs in the Gnome panel and acts as an alarm for when the International Space Station is overhead.” [7]

Maybe it could be interesting to try out?

Interplanetary Internet

And don’t worry about internet connection in space. The “Godfather of the internet”, Vint Cerf, who invented the underlying TCP/IP-protocol for the internet together with Bob Kahn, has grand plans for the internet; an Interplanetary Internet [8].

Curo Talent is also venturing to infinity and beyond. We are going to be the first Microsoft Partner in Space, by launching the very latest Microsoft Surface Book 2 into the stratosphere – learn more at www.curotalent.com/space.

 

LINKS:

[1] Original Apollo 11 Guidance Computer (AGC) source code for the command and lunar modules
[2] BURN_BABY_BURN–MASTER_IGNITION_ROUTINE.agc
[3] The code that took America to the moon was just published to GitHub, and it’s like a 1960s time capsule
[4] Computer simulation of the onboard guidance computers used in the Apollo Program’s lunar missions
[5] Margaret Hamilton, Apollo Software Engineer, Awarded Presidential Medal of Freedom
[6] Space Station Facts & Figures
[7] Lights up when the International Space Station is overhead
[8] Google’s Chief Internet Evangelist on creating the interplanetary internet

Dan Mygind

Dan Mygind is a Journalist and Computer Scientist with a strong interest in technology, technology-related businesses, and the transforming effect source code can have on society.
He has worked for startups, SMEs and global IT-organisations such as IBM as a developer, consultant, and IT-architect. With a solid technology background, he has written extensively for a wide variety of publications such as Computerworld as well as writing technical white papers for Microsoft and other companies.
He is also a published author, ‘World Storytellers

Contact Dan Mygind: mygind{at}writeit{dot}dk

The views expressed are those of the author and do not necessarily reflect the view and opinion of Curo Talent.

Your opinion is valuable. Please comment below.

  • (will not be published)

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>