NASA

The code that took astronauts to the Moon is now freely available online

Complete with '60s easter eggs.

JOSH HRALA
11 JUL 2016
 

The programming code that controlled the flight software for Apollo 11 has been uploaded to the popular code sharing website GitHub for the first time.

Not only does the uploaded code give current programmers a look into the past, it is also filled with pop culture references from the mid-1960s, making it somewhat of a time capsule.

 

The code was originally created by programmers at the MIT Instrumentation Laboratory in the mid-1960s who were tasked with making it from scratch because the technology needed to send the craft to the Moon simply didn’t exist yet.

So, to pull it off, the team created a new way for computers to store programs called 'rope memory', reports Keith Collins from Quartz, which used an assembly programming language that is notoriously complex to read, a task made all the harder for today’s programmers who mostly haven’t ever used assembly before.

The code now on GitHub – known as the Apollo Guidance Computer (AGC) code – was first made public when MIT uploaded scanned pictures of it years ago, though it wasn’t until 2003 when a man named Ron Burkey manually typed out every line and uploaded it to the internet back in 2003.

"It was scanned by an airplane pilot named Gary Neff in Colorado," Burkey told Quartz. "MIT got hold of the scans and put them online in the form of page images, which unfortunately had been mutilated in the process to the point of being unreadable in places."

"Quite a bit later, I managed to get some replacement scans from Gary Neff for the unreadable parts and fortunately found out that the parts I filled in were 100 percent correct!" he continued.

Despite all of the effort Burkey put in, the code never became that popular online. That is, until last week when a former NASA intern named Chris Garry uploaded it to the GitHub.

 

While the code is important for modern day programmers because it allows them to basically look into the past of their profession (or hobby), for the non-coders among us the coolest part is seeing all of the witty one-liners and 1960s references peppered throughout the code.

For example, one of the files is called 'BURN_BABY_BURN- - MASTER_IGNITION_ROUTINE' with this as description:

NASACodeBody1MIT

There are tons of these little quips throughout the AGC code that MIT programmers probably thought would go unnoticed forever.

NASACodeBody2MIT

It’s also interesting because it shows us just how far our technology has progressed over the last half-century. The AGC that took astronauts to the Moon in 1969, for example, had only 64 kilobytes of memory, meaning an iPhone 6 has roughly 250,000 times the storage capacity.

Hopefully, as the future of coding keeps marching forward, one day we will get another astronaut to the Moon, which will provide some truly great comparison material.

You can check out the newly republished code in its entirety here.

More From ScienceAlert