Hacker News new | ask | show | jobs
by williamstein 4131 days ago
I'm a University professor who does much work funded by the NSF (millions of dollars), whose university (Univ of Washington) is on that list. My tech transfer office tried hard to make me keep some of my software work closed source and succeeded for years (see http://sagemath.blogspot.com/2014/08/what-is-sagemathcloud-l...). In December I realized to my surprise that some of my NSF grants that funded my work had an explicit open source requirement. This was entirely because of a new requirement in a specific NSF program -- search open source at http://www.nsf.gov/pubs/2014/nsf14520/nsf14520.htm to see it. This was something that a program officer (Dan Katz) at NSF added a few years ago; I asked him about it a few weeks ago when he visited UW, and he said it was inspired by when he worked as a researcher at Caltech and he wanted to open source his work and used grant requirements to do so.

Granting agencies like NSF can have a massive impact on ensuring the work they fund with tax payer money is made available to tax payers for free. The NSF SI2 program is a rare new example of exactly this happening in practice today. I couldn't find any other similar NSF requirements for other NSF programs, but I am going to hold this up as an example whenever I have a chance to advise NSF in the future. Little by little things may change.

3 comments

The NIH has similar requirements in some RFAs, and has funded the creation and maintenance of a number of open-source, widely-used libraries such as ImageJ, the Visualization Toolkit, and the Insight Toolkit (either directly or indirectly via support for clinically-focused applications utilizing those).
Wait, I don't understand.

Are the non-free parts of SMC there because the university demands that they stay non-free or because you want them to? Does this particular grant involve any of the non-free code you've already written?

Also, the grant speaks about releasing software. Do they consider it a "release" if you only give web access to the frontend, but keep all of the backend private?

1. There are no non-free parts of SageMathCloud (here it all is: https://github.com/sagemath/cloud). It used to all be closed source, since the University tech transfer office required it in order to work with me... but I've since open sourced everything as required by the grants.

2. Regarding your next question, "the grant" I linked to is actually a program solicitation. It's the instructions for people preparing grants for the program, and also the guidelines for other people reviewing these grant proposals. The thing that is actually legally binding on the university is what the actual grant itself says. In my case the grant said (basically) "We will release all code under the GPL." I didn't write that phrase -- some other co-PI on the grant did -- but it was still signed off on by my office of sponsored research.

Sadly, the open sourcing of software does not address the patent aspect. It makes subversion easy... perhaps common place, but is probably not really enough.
Unless of course if you put in your grant application that the code will be licensed under GPLv3 or any other license that requires submittors to provide a license for patents.
Thanks for bringing this up, Bill.

Regarding the larger issue, SI2 does not require open source, but it suggests that it is a good idea.