An Aerospace Coder Drags a Stodgy Industry Toward Open Source

How one software engineer at a traditional space company convinced the bigwigs to share his command and control program.
KeplerNASATA.jpg
NASA

More than a decade ago, software engineer Ryan Melton spent his evenings, after workdays at Ball Aerospace, trying to learn to use a 3-D modeling program. After a few weeks, for all his effort, he could make … rectangles that moved. Still, it was a good start. Melton showed his spinning digital shapes to Ball, a company that makes spacecraft and spacecraft parts, and got the go-ahead he’d been looking for: He could try to use the software to model a gimbal—the piece on a satellite that lets the satellite point.

Melton wanted to build the program to save himself time, learn something new. “It was something I needed for me,” he says. But his work morphed into a software project called Cosmos—a “command and control” system that sends instructions to satellites and displays data from their parts and pieces. Ball used it for some 50 flight projects and on-the-ground test systems. And in 2014, Melton decided Cosmos should share its light with the world. Today, it’s been used with everything from college projects to the planet-seeking Kepler telescope.

Opening up Cosmos wasn’t an easy swallow for the aerospace industry. It’s historically closed-off: Big companies sell big-bucks programs, and people either shell out or cobble together their own kludgy systems. But a freely available, edit-able, enhance-able program has been a boon to researchers and businesses—anyone that can benefit from a robust system to point satellites and display their data.

Let It All Hang Out

Convincing Ball—a card-carrying member of the military-industrial complex that also makes scientific instruments for the likes of NASA—to distribute its spacecraft code wasn’t easy. “The biggest issue was getting permission,” Melton says, “and part of that is convincing people of why this was a good idea.”

He created a killer pitch deck. He told the people upstairs that they could still sell licenses—like if customers wanted to add their own proprietary code to the open source program, they could buy the right to do that. He said that opening the door didn’t have to mean compromising security, and that it would be good for Ball if the world saw what they could do. Command! Control! Such power!

Plus, academics with CubeSat kits and small satellite companies with big dreams—priced out of programs, forced to key in their own necessarily inferior code—could definitely afford free software. Who knew what cool research they would do with it?

It took four months of meetings about the pros and cons, like worries that someone would unwittingly (or wittingly) introduce a vulnerability. Following that were around four months of legal negotiations, like how they could stay within export-control regulations, to get the OK.

Finally, Melton was allowed to put Cosmos on the open-source host GitHub—where you can also download a program that makes your computer fart when you scroll. People have since downloaded it 62,559 times.

Give and Take

Scientists and aerospacers have long used open-source products, like the Linux operating system. After all, it makes sense to bring in existing, gratis software for common tasks like running servers. The phrase “reinventing the wheel” and the idea that it’s stupid exist for a reason: If you aren’t spending your time constructing wheels, you can spend your time going places.

But there’s been a recent shift in how large, sometimes lumbering, security-conscious companies like Ball participate. Those organizations don’t just take and take from the open-source community anymore—they’ve started to give back.

Related Stories

To do that, they’ve had to overcome their fears. Execs are understandably wary of the “use what’s out there and also put it all out there” approach. “There was, I think, kind of a philosophical thought for a while that closed source code was secure,” says Todd Berman, GitHub’s vice president of product engineering, “and that by seeing the source you’d be able to discover vulnerabilities.” (And then perhaps exploit them.) But coders and companies have been finding that more eyeballs and typing fingers help keep code secure, innovative, and documented. Even the military has bought into the idea.

And that’s not just good but necessary. Openness is an unavoidable part of software’s future, of the future of space, satellites, research, and defense. “I think it’s impossible for any large company in any industry to ignore open source software as part of the total landscape of what’s available for use—and participation,” says Eric Dashofy, principal director of IT development at the Aerospace Corporation.

The Cosmos to Come

Since Ball threw Cosmos onto GitHub, college seniors have used it for their capstone projects. The Naval Academy flies five CubeSats powered by the software. Boulder-based Blue Canyon Technologies employs it, and Ball has sold five commercial licenses. Brazil, South Korea, and Australia are interested in bringing it on board their space endeavors. Job listings at companies that are not Ball Aerospace now list “experience with Cosmos” in their qualifications.

And at Ball, the free-wheeling code helps attract and keep The Youth. “A lot of young people coming into the workforce, that’s all they really know is open-source projects,” says Jason Thomas, a Cosmos technical lead. “And we’re able to say, ‘You can still continue working on this stuff here in the stodgy old aerospace industry.’”

<a href="https://www.wired.com/video/9998/12/tiny-diy-satellites-from-stanford/" class="clearfix no-hover"> <img width="480" height="270" src="https://www.wired.com/wp-content/uploads/9998/12/wired_tiny-diy-satellites-from-stanford.jpg" class="attachment-600-338-full size-600-338-full wp-post-image" alt="wired_tiny-diy-satellites-from-stanford.jpg"> Related Video Tiny DIY Satellites from Stanford

To come, though, are applications Ball never necessarily intended, outside of aerospace. Individual innovators sans satellites have used it to get a handle on a ball-balancing robot and a Lego-and-LED Frankenstein that blinks lights to convey messages. And while those projects are silly, the ones to follow could be serious and surprising. Because you never know what’s going to happen when you give control (and command) to the world.