Live data from Hacker News

The People’s Code

whitehouse.gov

21–30 of 64 posts

Re: The People’s Code

#22

Putting the code out there for other agencies to use is great, but getting them to actually use it will be another battle. Reuse is tantamount to taking away someone's budget, and therefore, status. The occurrence of two different groups implementing very similar things entirely separately happens more often than you'd think. And I'm not convinced they want to talk or work together, because bureaucrat/military office…

Of possible interest, I used the GitHub API a few months back to see what was actually happening with the code government agencies were committing to GitHub (reuse, contribution patterns, licensing, etc). I ended up writing up some of my observations in a post [1] and 18F blog [2]. [1]: https://emanuelfeld.github.io/blog/2016/04/27/government-git... [2]: https://18f.gsa.gov/2016/06/16/emanuel-feld-talks-about-his-...

Really good work, thank you for sharing. Probably worthy of a Show HN post. I wonder how this will track over time.

Re: The People’s Code

#24
post #18
post #16

Earlier quoted context omitted.

I'm pretty sure that, assuming you're a government employee, any work you create that would normally be covered by copyright as part of your job is public domain. There's no license legally possible.

Yeah, absolutely. We make that argument often. In fact, the software we open-source is technically supposed to be released as public domain (as in, no license applied) and often is if people are doing things right. But that doesn't mean it has to be hosted and released online. Many agencies work under the "not going to release anything until we get a FOIA request" model. Just because it is public domain doesn't mean…

Well (as another Federal coder), one problem is the unfunded mandate issue. If this comes with resources to maintain public repos and updates, sure. Otherwise, if someone emails me I share the latest snapshot but only as my time and duties permit.

Re: The People’s Code

#25
post #18
post #16

Earlier quoted context omitted.

I'm pretty sure that, assuming you're a government employee, any work you create that would normally be covered by copyright as part of your job is public domain. There's no license legally possible.

Yeah, absolutely. We make that argument often. In fact, the software we open-source is technically supposed to be released as public domain (as in, no license applied) and often is if people are doing things right. But that doesn't mean it has to be hosted and released online. Many agencies work under the "not going to release anything until we get a FOIA request" model. Just because it is public domain doesn't mean…

Want my email address? I'll just send FOIAs all day long through Muckrock if I know what I should be asking for (and pushing the results up to Github and the Internet Archive).

Re: The People’s Code

#26

As a developer, I have been so impressed with the Obama Administrations efforts to put everything online. There is a .gov for anything now and I've been watching organization after organization digitize our commons and put them online. This "Federal Source Code" policy is a great extension of the project-open-data initiative released a few years back: https://github.com/project-open-data I found the db-to-api project…

I just checked out vets.gov to have a snoop around, and it's mostly quite impressive. But I found an SSL configuration error on this page (https://www.ebenefits.va.gov/ebenefits/vonapp) that will probably prevent vets from being able to use the site. Anyone know where to submit a ticket about that? I got yet another SSL error from the contact form on that page.

Re: The People’s Code

#27
I'm very familiar with the Department of Energy process, and there are a few considerations for every lab in the DOE.

TL;DR: The DOE encourages open source software, but it isn't default and there's some (low) barriers.

In general, though, what you can do with your (non-export-controlled) code consists of (in order of increasing difficulty):

1. Nothing. Keep your code private. If you'd like to stop maintaining code but want to make sure it sticks around, the DOE has a software library, the ESTSC, in Oak Ridge (a division of OSTI). It may also be the case that the entity running the lab wants to claim ownership.

2. Open Source. Due diligence is needed to ensure funding agencies and MOUs are respected. Copyright is typically assigned to the contractor running the lab in question (i.e. for Berkeley lab, -> Copyright goes to UC, SLAC -> Stanford, etc...). Major international collaborations can be a bit tricky because foreign countries have their own rules. I think more work needs to be emphasized on this front going forwards.

The DOE also wants to track the popularity of Open Source software, namely downloads. GitHub has met their requirements for reporting.

The DOE discourages use of the GPL and similar licenses. The reason, as I understand it, is due to the fact that the Government (i.e. Defense) must be able to use and modify software (and give to contractors, etc...) without falling under any additional burden. I believe the BSD license is preferred most widely across the labs.

In some cases, people at labs do release software under GPL. If they didn't get special permission, they are likely violating their lab's contract with the DOE.

3. Commercialize. This is really hard. You have to first perform market research, establish the market, spin off, deal with SBIRs, etc... This is a high barrier.

I've been personally working on streamlining the process for (2) with legal for my lab, so that anybody can open source their software very easily, hopefully by just filling out a web page. I'm hoping the recent white house directives help eliminate some of the bureaucracy involved in the process. I've also been trying to reduce fragmentation across the lab. The lab has never offered an official SCM platform, and grad students/postdocs are notoriously bad at keeping important source code in their personal GitHub and then leaving after some time.

It should be noted that almost all national lab facilities are effectively ran under contract, so nearly all national lab employees are not actually federal employees. So we do have a slightly different set of rules.

Finally, there is already a decent presence on github and bitbucket of labs, in case you are interested:

https://github.com/LLNL

https://bitbucket.org/berkeleylab/

https://github.com/slaclab

https://github.com/NERSC

https://github.com/sandialabs

It should be noted this is an extremely, extremely small slice of the software that drives experiments, projects, and research in the lab. Many times software belongs to the project/research group, so there's likely a project github organization where the code naturally resides. This is sort of a consequence of labs becoming more and more multi-disciplined, i.e. the science missions of labs like SLAC and Fermilab are no longer aligned primarily around their accelerators.

OSTI is supposed to maintain an index of that software if it's reasonably important, but it's not really enforced.

PS: If someone from USDS/data.gov/18f can and would like to help out with this in any way, I'd be happy to collaborate!

Re: The People’s Code

#28
post #18

Earlier quoted context omitted.

Yeah, absolutely. We make that argument often. In fact, the software we open-source is technically supposed to be released as public domain (as in, no license applied) and often is if people are doing things right. But that doesn't mean it has to be hosted and released online. Many agencies work under the "not going to release anything until we get a FOIA request" model. Just because it is public domain doesn't mean…

Want my email address? I'll just send FOIAs all day long through Muckrock if I know what I should be asking for (and pushing the results up to Github and the Internet Archive).

I would be willing to help code FOIAAAS.

Re: The People’s Code

#30
post #18

Earlier quoted context omitted.

Yeah, absolutely. We make that argument often. In fact, the software we open-source is technically supposed to be released as public domain (as in, no license applied) and often is if people are doing things right. But that doesn't mean it has to be hosted and released online. Many agencies work under the "not going to release anything until we get a FOIA request" model. Just because it is public domain doesn't mean…

Want my email address? I'll just send FOIAs all day long through Muckrock if I know what I should be asking for (and pushing the results up to Github and the Internet Archive).

I would also happily FOIA software projects if I knew what to be asking for.
Post reply on HN