Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Space Programming IT Technology

NASA Prepares to Open Source Code 330

comforteagle writes "According to this story at O'Reilly, NASA is looking for approval for their own open source license. The NASA submitter (lawyer of course) states that none of the current licenses meet their needs, but more interesting is that NASA needs a license at all. It makes one wonder what we, and other space agencies, might see coming out off NASA. It's also nice to see code that taxpayers paid for anyway being released for their use too. There must be at least one slashdotter who could dream up a use for NASA software. X Prize participants maybe?"
This discussion has been archived. No new comments can be posted.

NASA Prepares to Open Source Code

Comments Filter:
  • by wideBlueSkies ( 618979 ) on Thursday February 12, 2004 @10:48PM (#8265820) Journal
    From http://news.osdir.com/article448.html

    Open Source: NASA's Open Source Licensing
    Posted Feb 12, 2004 - 11:45 AM

    Bryan A. Geurts, Patent Attorney, for NASA's Goddard Space Flight Center has submitted a first draft of their NASA OPEN SOURCE AGREEMENT to the Open Source Initiative for approval. (No link available at publishing time)

    More interesting is that fact that they are looking for such approval. The obvious question is what will be released to the community and other space agencies once the license is approved to meet the open source definition.

    A copy of the draft submission can be found on the Open Source Initiative mailing list here.

    Bryan states in his submission that "None of these agreements suffice on its own or combined together for purposes of NASA for the following reasons:

    i. NASA legal counsel requires that all NASA releases of software include indemnification of the U.S. Government from any third party liability arising from use or distribution of the software. See 4.B.

    ii. Federal Statute mandates that the U.S. Government can only be held subject to United States federal law. See 5.C.

    iii. NASA policy requires an effort to accurately track usage of released software for documentation and benefits realized?purposes. See 3.F.

    iv. Federeal Statutes and NASA regulations requires a prohibition in NASA contracts against representations by others that may be deemed to be an endorsement by NASA. See 3.E.

    v. Because it is important that each of the aforementioned clauses be a part of each open source agreement relating to NASA released software, the proposed agreement must mandate that distribution and redistribution of the software be done under the aegis of NOSA (mandatory domination similar to GPL). See 3.A."

    A copy of the proposed license follows:

    NASA OPEN SOURCE AGREEMENT VERSION 1.1

    THIS OPEN SOURCE AGREEMENT ("AGREEMENT") DEFINES THE RIGHTS OF USE,
    REPRODUCTION, DISTRIBUTION, MODIFICATION AND REDISTRIBUTION OF CERTAIN
    COMPUTER SOFTWARE ORIGINALLY RELEASED BY THE UNITED STATES GOVERNMENT
    AS REPRESENTED BY THE NATIONAL AERONAUTICS AND SPACE ADMINISTRATION
    ("NASA"). ANYONE WHO USES, REPRODUCES, DISTRIBUTES, MODIFIES OR
    REDISTRIBUTES THE SUBJECT SOFTWARE, AS DEFINED HEREIN, OR ANY PART
    THEREOF, IS, BY THAT ACTION, ACCEPTING IN FULL THE RESPONSIBILITIES
    AND OBLIGATIONS CONTAINED IN THIS AGREEMENT.

    NASA Original Software Designation:

    NASA Original Software Title:

    User Registration requested, please visit http://www.

    NASA Point of Contact for Original Software:

    1. DEFINITIONS

    A. "Contributor" means NASA, as the developer of the Original
    Software, and any entity that makes a Modification.
    B. "Covered Patents" mean patent claims licensable by a Contributor
    that are necessarily infringed by the use or sale of its Modification
    alone or when combined with the Subject Software.
    C. "Display" means the showing of a copy of the Subject Software,
    either directly or by means of an image, or any other device.
    D. "Distribution" means conveyance or transfer of the Subject
    Software, regardless of means, to another.
    E. "Larger Work" means computer software that combines Subject
    Software, or portions thereof, with software separate from the Subject
    Software that is not governed by the terms of this Agreement.
    F. "Modification" means any alteration of, including addition to or
    deletion from, the substance or structure of either the Original
    Software or Subject Software, and includes derivative works, as that
    term is defined in the Copyright Statute, 17 USC 101. However, the
    act of including Subject Software as part of a Larger Work does not in
    and of itself constitute a Modification.
    G. "Original Software" means the computer software first released
    under this Agreement by NASA with NASA designation and
    entitled , including
    source code, object code and accompanying docum
  • ITAR ITAR ITAR (Score:4, Informative)

    by Anonymous Coward on Thursday February 12, 2004 @10:54PM (#8265874)
    Not likely to be very workable. NASA can't release a lot of stuff because of ITAR restrictions. The US of A treats most space related items as being ITAR Restricted.

    For those asleep at the keyboard, ITAR is International Traffic in Arms Regulations.

    For example, check out Flight Linux:
    http://flightlinux.gsfc.nasa.gov/

    You'll note that even though required by the GPL, NASA refuses to release the sources because of ITAR prohibitions.

    Move along, there is nothing to see here.

  • by fayd ( 143105 ) on Thursday February 12, 2004 @11:02PM (#8265920)
    This [ghg.net] was originally developed while he (Gary Riley) worked for NASA at the Johnson Space Cener. It was available in source form since before I started working with it in 1993.
  • Re:Old? (Score:5, Informative)

    by vondo ( 303621 ) * on Thursday February 12, 2004 @11:05PM (#8265945)
    Not to mention that they probably have plenty of stuff completely unrelated to science. Management software, utilities anyone might find useful, etc.

    For instance, nedit [nedit.org], a great editor for people coming from Windows/Mac, was developed by Fermilab, a particle physics laboratory.

  • by Anonymous Coward on Thursday February 12, 2004 @11:06PM (#8265946)
    You are basicaly correct.

    U.S. Code Title 17 Chapter 1 Section 101:
    A "work of the United States Government" is a work prepared by an officer or employee of the United States Government as part of that person's official duties.
    and from Section 105:
    Copyright protection under this title is not available for any work of the United States Government, but the United States Government is not precluded from receiving and holding copyrights transferred to it by assignment, bequest, or otherwise.
    Although I will say that NASA seems to act like it owns the copyright on the images it produces.
  • by Baldrson ( 78598 ) on Thursday February 12, 2004 @11:30PM (#8266137) Homepage Journal
    From a proposed omnibus space commercialization act [google.com]:
    SEC. 703. DISPOSITION OF INTELLECTUAL PROPERTY RIGHTS TO INVENTIONS MADE UNDER GOVERNMENT SPONSORSHIP.

    (A) GOVERNMENT SUPPORTED INVENTIONS TO BECOME PUBLIC PROPERTY.--Any invention reduced to practice under partial or total government support must immediately be placed in the public domain.
    (B) REDUCTION TO PRACTICE TO BE PRIVATELY FINANCED.--Any invention conceptualized under government funding may be patented, and the patent held by the inventor or his assignee, if all work subsequent to the initial realization that a patentable innovation had been made is carried out under private sponsorship.
    (C) GOVERNMENT NOT TO HOLD PATENTS.--The United States government shall hold no space related patents under any circumstances.
  • Nothing new... (Score:5, Informative)

    by vistas ( 214241 ) on Thursday February 12, 2004 @11:31PM (#8266142)
    For over 30 years NASA code was available through a program called COSMIC which was administered at the University of Georgia.

    http://www.cosmic.uga.edu/

    In fact for awhile they operated out of one of the many buildings previously occupied by the 40 Watt Club

    Since 1998 the code has been available through the Open Channel Foundation

    http://www.openchannelfoundation.org/cosmic/

  • by Robotbeat ( 461248 ) on Thursday February 12, 2004 @11:31PM (#8266143) Journal
    If you're refering to Maestro [telascience.org], that is not the code I was refering to. If you look on this page [nasa.gov], you will see this picture [nasa.gov], which shows some pretty darn good 3d processing for only using a few still cameras! And if you look here [nasa.gov], you will find this [nasa.gov] picture which shows a representation of what the Spirit rover's software uses to find its own way, without need of constant instruction from Earth. Pretty good software, if you ask me! The public Maestro [telascience.org] program is pretty slow, but so is Java in general for high-performance applications. Maestro [telascience.org] doesn't actually generate the 3d range information from the raw images, it just displays it (and apparently is used to figure out the rover's schedule of stuff to do).
  • Re:no GPL (Score:1, Informative)

    by Anonymous Coward on Thursday February 12, 2004 @11:36PM (#8266184)
    Not as I understand this. (IANAL, of course.) Look on debian legal somewhere for discussion of export restrictions and the GPL. Maxima delt with this, and I suspect it won't be the only program to deal with it.

    Export restrictions don't need to be part of the license to apply - they apply regardless of whether or not the software license says they apply. Licenses sometimes make explicit notice of the fact they do or might apply, but it is the regulations themselves that determine the issue. If you read the license proposed, all that NASA is saying is export restrictions might trump anything in the license, and they aren't granting an export license here. That applies for ANY software license, including BSD, GPL, whatever. It's the software itself that decides the issue.

    Open source has been lucky to dodge this issue (I imagine its being international from the start helped!) although crypto software has had some very close calls. The internet and portability makes the export control of any software available publically a joke, of course, but the law isn't going to concede that point. NASA is practicing a typical CYA move, so if some s**t hits the fan they don't get put in the hot seat. That's all it means, and that's all it can mean. So I wouldn't worry.
  • Re:Absolutely (Score:4, Informative)

    by BWJones ( 18351 ) * on Thursday February 12, 2004 @11:49PM (#8266265) Homepage Journal
    Out of curiosity, which NASA image processing software are you referring to?

    Specifically, I am interested in code that can perform automated image mosaicing, also automated registration of images obtained through different modalities and code that will allow unsupervised k-means and/or ISODATA image classification/clustering of multispectral images.

  • by Anonymous Coward on Thursday February 12, 2004 @11:59PM (#8266342)
    Look at the list of contributors here [openchannelsoftware.com].

    All public-domain.

  • Re:ITAR ITAR ITAR (Score:3, Informative)

    by ender81b ( 520454 ) <wdinger@@@gmail...com> on Friday February 13, 2004 @12:00AM (#8266350) Homepage Journal
    Building a nuclear bomb is not very easy, only 9 countries have accomplished it in the history of the world: US, Soviet Union, China, GB, France, India, Pakistan, Israel and South Africa. It requires extesnive manufacturing compacity and large amounts of very good scientists.

    As for "Wrap in cobalt" you must've been watching too much star trek...

    Civilization might be global but there's absolutely no reason why the US should share technology as advanced as some of the space tech is with the rest of the world and expect nothing in return or exercise no control over it.
  • Re:Absolutely (Score:5, Informative)

    by Anonymous Coward on Friday February 13, 2004 @12:11AM (#8266431)
    Hey, for all of you out there who are in this position...

    Please contact a NASA center and start asking around about doing joint research. NASA has a lot of research funding that requires joint work with a university, but you've got to hook up with the right researcher to get it. Every NASA center has an office that will help you find the people most likely to help you.

    Believe me, if you need that image processing code and you are a university, a joint research agreement will get you a lot of help. If you need some other kind of code, and you think NASA has it, start calling around! It may be a bit of work, but you'll be surprised how eager many NASA researchers are to work with you.

  • Re:NASA'Sdoom (Score:4, Informative)

    by sdedeo ( 683762 ) on Friday February 13, 2004 @12:17AM (#8266475) Homepage Journal
    It's hard to judge superiority when the applications are often very specific; my experience with the code that gets passed from researcher to researcher is that it often works extremely well and can be adapted and extended a great deal. See, for example, CMBFAST [cmbfast.org], the code used to compute predicted anisotropies in the cosmic microwave background. Not only have people have parallelized it or sped it up (trading off for accuracy), but over the years it has been extended to test more and more exotic physics.

    But code quality aside, what about applications elsewhere? NASA's codebase presumably does a wide variety of things in addition to running gazillion-ly redundant life support on the space shuttle. Think about all the design and testing it does of hardware, the software it writes for image processing and signal analysis, running the deep space network. How about making models of satellite structural integrity? Surely something useful -- although it might take someone within the field to realize the similarity between a problem they face and one NASA has already solved.

    And, of course, scientists love to write their own tools for text editing, data analysis (often these are incredibly powerful and extendable -- naturally more so than, say, commercial software products which remain close-sourced), collaboration software, yadda yadda ad infinitum

  • by badmammajamma ( 171260 ) on Friday February 13, 2004 @12:18AM (#8266485)
    NASA made their AI engine available in the public domain in 1986. It's called CLIPS. It was written in C, was very portable, and very fast. In fact it's still being updated. The funny thing is that it did what other companies were charging $10,000 for.

    So this is nothing new for NASA. Maybe it's just been a long time since they've done it. Technically, all non-classified government funded software is supposed to be made available in the public domain.
  • by Anonymous Coward on Friday February 13, 2004 @12:39AM (#8266600)
    Examples I know of: NASA STEP Testbed [nasa.gov], and Express Engine [sourceforge.net], though they're not the glamourous or sexy type of software most of you seem to be thinking of in this article. Not rocket or Mars-related, at least.
  • Re:Old? (Score:3, Informative)

    by Amiga Trombone ( 592952 ) on Friday February 13, 2004 @02:22AM (#8267152)
    The reason they use such "archaic" hardware, even in brand-new boxes, is because they have to withstand ambient temperatures up to 150 degrees farenheit for long periods of the day. The boxes can't be ventilated very much without exposing them to the elements (and destructive teenagers), and it gets hot as an oven inside when the sun is hitting them all day.

    While I can't vouch for this information personally, a friend of mine who does microprocessor design once told me that slower processors are used because the faster the processor, the more random errors it generates. While the errors can be compensated for in software, that, of course, adds complexity to the software. And the more complex the software, the greater the possibility of bugs.

    So in the interest of keeping things simple, and as bug free as possible, the slower processors are the preferred solution.

    I'm not really knowledgeable about microprocessor design. Perhaps someone who knows something about it could elaborate/clarify?
  • by dsoltesz ( 563978 ) * <deborah.soltesz@gmail.com> on Friday February 13, 2004 @02:43AM (#8267259) Homepage Journal

    This is probably the package you are looking for: Integrated Software for Imagers and Spectrometers [usgs.gov]. It's been distributed freely for many years, and is, indeed, public domain. It's funded by NASA for use by NASA-funded researchers and the planetary science community in general.

    Note, Isis 3.0 has not been released yet, look for the beta in coming months - look at Isis 2.1 for the stable release. Download/Install instructions are on this page: Isis 2.1 Installation Guide [usgs.gov].

    Automatic mosaicking is generally done using the spacecraft positioning information. Automatic registration? It doesn't exist (yet). Registration involves varying levels of human intervention, and when some level of automation is achieved, it's mission-specific and under special circumstances. Isis is primarily a cartographic package - IDL is generally used for statistical work.

    Another image processing package that's public domain is USGS MIPS [usgs.gov]. It's a (non-NASA) terrestrial image processing package that evolved from the same roots as Isis, so you'll find it has many of the same capabilities.

    I don't know what other NASA packages there might be out there like this, if there are any. I'll ask around.

  • by Anonymous Coward on Friday February 13, 2004 @03:05AM (#8267350)
    Yes, but much of the work done at NASA isn't done by an "officer or employee of the United States Government", but contractors.

    The contracts aren't for the software, but for the resulting space technologies... so the codes written by the contractors to help build the technology isn't owned by NASA.

    I'm not certain what you mean by images... but if you mean the pathfinder images, you should know that JPL isn't a government lab, but an affiliate of NASA. Marshall is a NASA lab and is managed by NASA civil-servants, JPL is managed by Caltech.

  • Re:Stupid Question? (Score:4, Informative)

    by Nate Eldredge ( 133418 ) on Friday February 13, 2004 @03:18AM (#8267396)
    A lot of it is "free", if only you can get it. The problem is that it costs agencies (and hence taxpayers) time and money to distribute, so there is no incentive to do so. For instance, government publications cost money, to defray the cost of producing and distributing them to the public. IMHO it makes sense for this cost to be paid by those who use the material, rather than by a lot of taxpayers who have no interest in it.

    As for the rest, well, that's why we have the Freedom of Information Act. If you want source code for the accounting system for the Bureau of Public Works, put in an FOIA request and they'll either give it to you (for the cost of distribution, I guess) or give you a good reason why they won't.

    NPR is not a government agency, but a private nonprofit organization, so your questions don't apply to it. However, even if it were, the government tends to use "industry standard" formats, and Real could certainly be considered that. As an example, all the forms on the IRS web site are in PDF, and they recommend (free but commercial) Acrobat Reader for viewing. Probably a lot of other files are available as Word documents, since that's how they are produced.
  • by Detritus ( 11846 ) on Friday February 13, 2004 @03:23AM (#8267417) Homepage
    Because most of it is written by other entities under contract to NASA. If a civil service employee of NASA writes a program, it isn't copyrighted according to federal law. If a contractor employee writes a program, it is copyrighted. Normally the copyright would be assigned to NASA, who paid for the development of the software.
  • by nettdata ( 88196 ) on Friday February 13, 2004 @05:22AM (#8267754) Homepage
    Moderators:

    This is NOT a troll... the Skunkworks was the REALLY COOL department of Lockheed Martin that created all of their super-secret, very cool stuff.

    Check out this link [habu.org] for some of the books written about them.

    Personally, I'd be VERY interested in some of their code.

  • by JimDabell ( 42870 ) on Friday February 13, 2004 @05:30AM (#8267769) Homepage

    Although I will say that NASA seems to act like it owns the copyright on the images it produces.

    It seems to be pretty clear to me: [nasa.gov]

    Photographs are not protected by copyright unless noted. If copyrighted, permission should be obtained from the copyright owner prior to use. If not copyrighted, photographs may be reproduced and distributed without further permission from NASA. If a recognizable person appears in a photograph, use for commercial purposes may infringe a right of privacy or publicity and permission should be obtained from the recognizable person.

  • Re:Public Doman. (Score:3, Informative)

    by SEWilco ( 27983 ) on Friday February 13, 2004 @06:51AM (#8268020) Journal
    There is a little NASA stuff on Open Channel Foundation [openchanne...dation.org]. The ones I looked at are indeed restricted to US citizens... but the license says it's for private non-commercial use.

    Incidentally, if you remember NASA's old distribution system, COSMIC [uga.edu], Open Channel does have some COSMIC softare [openchanne...dation.org] available. But I see that same "private use" license there.

    COSMIC (1966-1998, R.I.P.) policy included:

    Unless the program is copyrighted, licensed, patented or otherwise protected, users within the U.S. may freely duplicate programs, and/or may incorporate portions of NASA-developed codes into commercial products for use within the United States. Restrictions with regard to international distribution of NASA products and derivative products apply to some programs. Consult with COSMIC on a program by program basis for details. Users are also permitted to commercialize their own versions of licensed and copyrighted codes. Again, COSMIC can provide details on the terms and conditions.
  • by tiger99 ( 725715 ) on Friday February 13, 2004 @09:54AM (#8268663)
    IIRC, some of the old DEC PDP-8 operating systems were either public domain or copyright free because thay had been written for the government. Certainly they were free to the end user. I never saw source code, don't know on what terms that would have been available, but as was the practice in those days it probably came for the cost of a tape plus a handling charge. I am sure some other older people out there will remember. That was not true on later PDP-8s with floppy drives, which used a proprietary DEC OS.

    The reason I found this out BTW was that I wanted to build myself a computer. We had a PBP-8 at work (with discs and licensed OS), but to get some sort of commonality I was thinking about using the Intersil IM-6100, which was a PDP-8 on a chip, and I needed an OS. I found that some of the DEC stuff was available, what finally killed the project was the cost of the optos for a paper tape reader, needed to load the bootstrap and then the OS. IIRC the phototransistor array for the reader head was going to cost about 50 UKP, which was a lot of money at the time, so I never built my own PDP-8.

    Maybe the government-funded PDP-8 software actually started open source,in the sense of a commodity product which achieved significant distribution. Certainly the user group, DECUS, were the first such thing of any importance.

  • Re:Old? (Score:2, Informative)

    by IsaacW ( 543020 ) <isaac,waldron&gmail,com> on Friday February 13, 2004 @10:04AM (#8268733) Homepage
    I'm currently working on a satellite development project at my university, and we are developing a custom triple modular redundant flight computer system.

    Though my project is the communications system, I have come to learn quite a bit about computer systems in high-radiation environments. Basically, high-energy radiation or particles can temporarily short out a transistor and cause memory bits to flip or a wrong result to be calculated inside a processor. The energy required to flip a bit is proportional to the energy stored in the device. Faster devices have smaller feature sizes, and store less energy per memory bit. Thus, they are more prone to these types of "single event upsets" that flip bits and cause unpredictable results. For a given mean level of radiation, there is a feature size above which the probability of an upset is very close to zero, and so processors with feature sizes at least this big (read: typically slower than other processors with smaller feature sizes) can be used without too much worry.
  • For 28 years, Nasa has published the magazine, Nasa Tech Briefs [nasatech.com], dedicated to the commercialization of technologies originally paid for or comissioned by Nasa, and that makes NASA big money, while offsetting our tax costs for space exploration.

    For those whom feel that everything Nasa does is automatically non-copyright, the problem is that very few things that NASA has ever done are NASA exclusive. Almost all research is done by a University under a technology sharing arrangement. The copyright is held by the University in these cases.

  • by JacobKreutzfeld ( 614589 ) on Friday February 13, 2004 @02:57PM (#8272105)
    I'm a consultant working as a contractor for NASA. I've been involved in writing two pieces of code we use here which were based on open-source tools. I'd like to give these back to the community, since they helped us, and I think are generally useful: one's an "SSL VPN" (reverse proxy into intranet web and SMB fileshares, in Java); the other's a Web GUI front end for adminning a qmail-ldap mail cluster, in PHP.

    I'm having a heck of a time finding what NASA's position is on giving the code away. Issues presented have been code security (what if my login page can be hacked?) and contractor vs. government ownership (but the contractor got paid for the work, right?).

    Still working through the process, hoping the code will see the light of day before it becomes obsolete/irrelevant.

I've noticed several design suggestions in your code.

Working...