Forty years after Apollo 11 landed on the moon, NASA open sourced the software code that ran the guidance systems on the lunar module.
By that time, the code was little more than a novelty. But in recent years, the space agency has built all sorts of other software that is still on the cutting edge. And as it turns out, like the Apollo 11 code, much of this NASA software is available for public use, meaning anyone can download it and run it and adapt it for free. You can even use it in commercial products.
But don’t take our word for it. Next Thursday, NASA will release a master list of software projects it has cooked up over the years. This is more than just stuff than runs on a personal computer. Think robots and cryogenic systems and climate simulators. There’s even code for running rocket guidance systems.
This NASA software catalog will list more than 1,000 projects, and it will show you how to actually obtain the code you want. The idea to help hackers and entrepreneurs push these ideas in new directions — and help them dream up new ideas. Some code is only available to certain people — the rocket guidance system, for instance — but if you can get it, you can use it without paying royalties or copyright fees. Within a few weeks of publishing the list, NASA says, it will also offer a searchable database of projects, and then, by next year, it will host the actual software code in its own online repository, a kind of GitHub for astronauts.
It’s all part of a White House-directed push to open up the federal government, which is the country’s largest creator of public domain code, but also a complete laggard when it comes to sharing software. Three years ago, President Obama ordered federal agencies to speed up tech transfer programs like this. And while the feds have been slow, the presidential directive is starting to bear fruit. In February, DARPA published a similar catalog, making it easier for entrepreneurs to get ahold of the Defense Advanced Research Projects Agency’s code too.
NASA has run a technology transfer program for over 50 years. It has given us everything from the Dustbuster to Giro bicycle helmets to “space rose,” a unique perfume scent forged in zero-Gs. But it’s high time the agency actively pushed out its software code as well. Increasingly, NASA’s research and development dollars are paying for software, says Daniel Lockney, Technology Transfer Program Executive with NASA’s Office of the Chief Technologist. “About a third of everything we invent ends up being software these days,” he says.
From Star Mapper to Bear Tracker
Already, NASA software has been used to do some pretty amazing stuff outside the agency. In 2005, marine biologists adapted the Hubble Space Telescope’s star-mapping algorithm to track and identify endangered whale sharks. That software has now been adapted to track polar bears in the arctic and sunfish in the Galapagos Islands. “Our design software has been used to make everything from guitars to roller coasters to Cadillacs,” Lockney says. “Scheduling software that keeps the Hubble Space Telescope operations straight has been used for scheduling MRIs at busy hospitals and as control algorithms for online dating services.”
All of the software that NASA writes is copyright free, and although the aforementioned rocket guidance system code and other software may be too sensitive to share, many other projects can be shared with anyone — in theory, at least. If the NASA software isn’t open-source, you need to get cleared by the space agency for a release. Sometimes, this is as simple as proving that you’re a U.S. citizen and signing a usage agreement. The problem is that with more than a thousand projects — coded by software developers at 10 different field centers — it has been tricky for outsiders to get an idea of what NASA has. That’s why Lockney and his staff built this master catalog.
It was no easy task. “The agency is so spread out that putting everything together…and making it all match has been one of the biggest challenges,” he says. By Lockney’s count, the agency has about 227 public projects, hosted on sites such as GitHub and Source Forge and even NASA’s own website. It had been sharing a lot more code via word of mouth, but putting the 1,000 projects he found in a single catalog will make it a lot easier to figure out what software NASA has.
Lockney expects the catalog to “grow significantly” after it gets released. “More code will come out of the woodwork. And we’ll process it, categorize it, write up a plain language explanation of what it is, and add it to the catalog.” It’s a daunting task, but there’s no better agency to pull off an open-source moon shot.
We travel for romance, we travel for architecture, and we travel to be lost.
Wes Anderson // Centered
So I watched The Grand Budapest Hotel on the weekend. I loved it! It’s filmmaker Wes Anderson at the top of his game, and has all of his trademarks -> a huge cast of quirky characters, funny dialogue, a madcap story, miniatures, a spectacular colour palette, and symmetry. Anderson seems to be obsessed with symmetry in the framing of the shots in his films, frequently having a character or object centred in the shot, while the rest of the frame is wonderfully symmetrical. The symmetry in Anderson’s filmography is demonstrated in this awesome short Wes Anderson // Centered by filmmaker kogonada.
I need a letter different from r… r’ for instance.
Computers are providing solutions to math problems that we can’t check
Good news! A computer has solved the longstanding Erdős discrepancy problem! Trouble is, we have no idea what it’s talking about — because the solution, which is as long as all of Wikipedia’s pages combined, is far too voluminous for us puny humans to confirm.
A few years ago, the mathematician Steven Strogatz predicted that it wouldn’t be too much longer before computer-assisted solutions to math problems will be beyond human comprehension. Well, we’re pretty much there. In this case, it’s an answer produced by a computer that was hammering away at the Erdős discrepancy problem.
Full Story: Io9
Happy Pi day!
This is just the first post for today. There’ll be two more, so be sure to check them out later if you miss them!
Here’s an arc-length parametrization of a closed curve for the Greek lowercase letter pi, famously used for the circle constant, π = 3.1415926535897932384626… (that’s what I bothered memorizing!)
Arc-length parametrizations are also called unit-speed parametrizations, because a point moving along the path will move with speed 1: the point moves 1 unit of arc-length per 1 unit of time.
It is generally very hard, if not impossible, to find this parametrization in closed form. But it always exists for nice continuous curves. Since it has some pretty cool uses, just knowing it exists is a powerful enough tool for mathematicians to use it on other cool theorems.
Using computers, we can usually approximate it numerically to any degree of accuracy we desire. The basic algorithm is pretty simple: just make a table of arc-length for each value of t. Then, the unit parametrization is just reading the table in reverse: find t given arc-length. Some interpolation is usually necessary.