Happy Software Freedom Day! Find Out How NASA Has Contributed To Open Source Software:
“Back in 2008 and 2009, people were still trying to figure out what ‘cloud’ meant. While lots of people were calling themselves ‘cloud enabled’ or ‘cloud ready,’ there were few real commercial offerings. With so little clarity on the issue, there was an opportunity for us to help fill that vacuum.” - Raymond O’Brien, +NASA Ames Research Center
Needing a way to standardize web space, a team of researchers at NASA Ames began a 2008 project known as NASA.net. The project offered a way to consolidate web development tools and data resources which heightened efficiency between all facets of the space agency. William Eshagh, another key contributor from NASA.net’s early days, aimed to find a way for web developers to upload code to a platform that was universally utilized.
“The basic idea was that the web developer would write their code and upload it to the website, and the website would take care of everything else,” according to Eshagh.
Still requiring an “infrastructure service” to manage the large quantities of data that NASA accumulates on a daily basis, the scope of the Ames project switched gears, and NASA.net was reorganized as Nebula. Rather than simply setting standards and providing a platform for web developers, the Nebula team would construct an open source compute controller. Early on, the collaborative nature of Nebula benefited development – as anyone with the understanding of the technology and desire could access the code and provide improvements. Raymond O'Brien, who remained on the Nebula team, reiterated the appeal of Nebula’s open source identity.
“From the beginning, we wanted this project to involve a very large community—private enterprises, academic institutions, research labs—that would take Nebula and bring it to the next level. It was a dream, a vision. It was that way from the start,” said O’Brien.
An early obstacle the pure open sourced project had to overcome was a piece of software known as the cloud controller, a pivotal segment of the project if the end users are to access computers or data. At this time, the existing tools were either written in the incorrect programming language or were closed source – not usable due to licensing limitations. However, It only took the Nebula team a matter of days to build a new cloud controller from scratch, and immediately began to attract interest from Rackspace Inc.
“We believed we were addressing a general problem that would have broad interest,” stated Eshagh. “As it turns out, that prediction couldn’t have been more accurate.”
Rackspace, known for providing open source storage, was set to begin construction of a similar cloud controller to what Nebula just released. Given the technical similarities between the two teams, Rackspace and Nebula began a partnership known as OpenStack – and a community of developers around the world would contribute towards the construction of what would become one of the most successful open source cloud operating systems.
The future of OpenStack, and other open source projects, are bright due the early efforts of the NASA.net team at Ames. Due to the initial devotion to keeping the project open source in those early days, a large majority of contributions to the OpenStack code came from community efforts outside of NASA. Today, on Software Freedom Day, be sure to checkout the following resources related to the OpenStack cloud, a NASA Spinoff.
1. Web Solutions Inspire Cloud Computing Software
2. Nebula, NASA, and OpenStack
3. Software Freedom Day