NASA Goes SourceForge
refactorator writes "We have a lift-off! The NASA Ames Research Center has open sourced Java PathFinder , a JVM that is an explicit state software model checker, all written in Java. For the first time, the complete master development site of a live NASA software engineering project is hosted on SourceForge. Read the official press release for details. The team around John Penix, Willem Visser, and Peter Mehlitz fought long and hard to get the development hosted outside of NASA, to enable true collaborative software development. Now show the government that it works - join the fray. May Java PathFinder boldly go where no NASA program has gone before." (Both Slashdot and SourceForge are part of VA Software.)
The bigger question for me is if the open source software is used and fails then where does the accountability lie? consider the stress that would be required for anything NASA does, and consider the results of even slight errors. now imagine the sort of bugs that crop up in other open source projects... this could be bad.
This app spiders through all routes of an app through the bytecode. Not only will this become a very stable and usable debugging application, but the applications that borrow from this application are endless with possibilities. For NASA to OS an app, this was probably the best choice!
Good quote, too many chars. Seriously, the slashdot 120 char limit sucks!
IANARS Damn.
Censorship is telling a man he can't have a steak just because a baby can't chew it. --Mark Twain
Poor guy. That name must be an endless source of amusements to his Linux-using colleagues.
Who thought of the PENIX man pages when I saw that guy's last name?
Doesn't our government exist to serve the general public? Why aren't more government software development projects open source? Why was it such a battle to make this particular application open source?
Don't get me wrong, this is a great feat by NASA-Ames, but it's something I already expect as a taxpayer...
Just when you make it idiotproof, some idiot builds a better idiot.
NASA WorldWind has been on SourceForge since September. Though most development happens over IRC.
World Wind ( http://worldwind.arc.nasa.gov/index.html )is also open source. I think there are other NASA open source projects as well. This definitely isn't NASA's first venture into open source, although it may be their first project release on SourceForge.
Whoever corrects a mocker invites insult;
whoever rebukes a wicked man incurs abuse.
--Proverbs 9:7
This is not the first app that NASA has open sourced, just the first one on sf.net. NASA has an OS website at
http://opensource.arc.nasa.gov/
Evolution or ID?
With NASA, for not validating/testing a solution enough, just as it would be my responsibility if I implemented a half-assed piece of software into a corporate environment without adequate testing. If NASA went down to the hardware store and bought a garden hose valve for a rocket fuel tank, slapped it on the night of a launch and it failed and sent a rocket into the drink- would you blame the garden hose valve maker? Course not. We like to point fingers all the time at things other than our decision-making process.
I help volunteer for a car club which teaches high performance driving at various racetracks. A lot of stuff becomes Really Important when you're driving close to the limits of your talent and the vehicle's equipment. Stuff does go wrong, although it's statistically very rare for there to be an incident caused by mechanical failure. Much of the time, it's driver error.
For example, a wheel falls off. The driver says "I crashed because my wheel fell off." No. The driver crashed because the driver forgot to check lug bolt torque, and the wheel came off because the torque on the lug bolts wasn't correct. A more complex example: "I crashed because my brakes failed". No. The driver crashed because the lap before he crashed, the driver didn't realize his brake pedal was getting really spongy- or worse, he did realize it, and didn't do anything about it (ie, he didn't pit in and bleed the brakes because he wanted to stay out on track).
Please help metamoderate.
How many NASA employees got fired on their first day at work when being introduced to this "John Penix" fellow and giggling uncontrollably right in front of him?
Slashdot requires you to wait longer between hitting 'reply' and submitting a comment.
The team around John Penix, Willem Visser, and Peter Mehlitz fought long and hard to get the development hosted outside of NASA
Long and hard indeed.
(I'm going to hell for this.)
- The freedom to run the program, for any purpose
- The freedom to study how the program works, and adapt it to your needs. Access to the source code is a precondition for this.
- The freedom to redistribute copies so you can help your neighbor.
- The freedom to improve the program, and release your improvements to the public, so that the whole community benefits. Access to the source code is a precondition for this.
From what I can tell, this is definitely a true Free Software license. However, you have to register with an agency of the United States government in order to muck with the code. Some may have a problem with this, be forewarned."Could it be that NASA is finally giving up on Ada and embracing the safety, reliability, and simplicity of Java?"
BWHAHAHAHAHA!!!
Oh, man. I needed a good laugh today.
Aside from the compulsory Slashdot Java FUD, it's really not a joke. Java has a big advantage in that the the bytes codes produced can be verified, and so the program tested, without any concerns of the final deployment platform. This is a major advantage for an organisation like NASA which most likely has a wide range of hardware on which software is deployed.
Generally, I'm pretty anti-Java. I hate working in it myself and I've partially structured my career so as to avoid it.
Why do I hate it? It is a language that builds in bureaucracy, making you say everything three or four times, static this, static that, hard-coded the other, if there's a fun or useful feature it's not there ("generics" are about 5 years too late and from my reading still amazingly weak compared to most other languages, and that's just one of the fun features I have in mind) after programming in a language like Python or Ruby it's like programming with handcuffs and concrete galoshes, complete with the sinking feelings the latter can cause and subsequent project death.
(We didn't used to need IDEs that did half to three-quarters of your typing for you (and I mean keyboard typing), and most languages still manage to live without it. That says something. (I'm also somewhat amazed at the Java community's ability both to have strong namespaces like org.slashdot.something.web, and still name classes with 40 or 50 characters, like WebPageToMirrorDeciderBooleanHelperInterface.))
But there are times that is called for, and NASA development epitomizes that. My personal feeling is that it is called for far, far, far less often than conventional wisdom says it is, but the call is certainly not zero.
All those features I'm bitching about missing above, including but not limited to things like closures, any sort of continuation support, metaclasses, "duck" typing like Python or Ruby, support for "eval"ing strings as if they were source code (which I've used precisely once in the last five years; I'm not saying this is something that should be used a lot), all kinds of things like that, are bad for an state checker, as it really complicates the space and makes it hard to tell what will happen when without actually running the code, which for various reasons is also not a practical solution to state checking.
There may be slightly better languages (ada?), but all in all Java is a good choice for NASA, for the very reasons that I hate it.
--
"Do you think," said a Woodpecker who had been busy making a hole in the table, "that there might be a problem with the name 'UNIX'? I mean, it does sort of suggest being less than a man."
"Maybe we should try another name," suggested the Job Sparrow, "like Brut, or Rambo."
"Penix," suggested a Penguin.
http://www.davar.net/HUMOR/UNIXLAND.HTM
-jp
The federal govenrment can't hold a copyright.
Copyright (C) 2005 United States Government as represented by the
Administrator of the National Aeronautics and Space Administration
(NASA). All Rights Reserved.
The above statement from the license is not legal.
By defn all copyrightable materials produced by the feds are Public Domain... in the most legal sense of the phrase.
Someone at NASA wasn't paying attention.
Furthermore, since the copyleft principle relies on Copyright to grant certain permissions, the fact that the Feds can't hold copyright means that they can't use "traditional" open source licenses.
That's why you don't see this whole flood of OSS from the feds.