13 ms·
For what it's worth, there is a lot of movement in the Federal government to open source code that is written for the government. The GSA, which is the kind of
by dimmke 6y ago
For what it's worth, there is a lot of movement in the Federal government to open source code that is written for the government. The GSA, which is the kind of meta agency that helps other federal agencies do stuff talks a lot about this. They also have a site called https://code.gov/ https://code.gov/ that lists open source projects created for the Federal government. A lot of their own repositories are completely open source and they do development in the open.
I work on a contract for the CDC and we open sourced an older version of the software we display data on maps in: https://github.com/CDCgov/CDC-Maps https://github.com/CDCgov/CDC-Maps
I'm working on switching our development to open so we use the same codebase that is available to everybody and adding other visualizations. It's slow going but there is movement there. I do agree it would be beneficial to fund open source projects, likely by including some requirement in contracts.
I think them funding projects directly with cash could cause a lot of problems though. The increase regulations that would need to be added would probably not be worth it for open source projects. People who get funding would likely need to submit a lot of documentation, there'd also probably be weird rules about non U.S. citizens etc... and laws would need to be passed.
- jhardy54 6y agoBig +1. I found a small bug in a GSA site (plainlanguage.gov) and was able to PR a fix that was merged almost immediately. It's a shame that we can't do the same with all of the bugs in other government websites.
- deleted 6y ago[deleted]
- mtalantikite 6y agoIt's definitely becoming more common. Many agencies have organizations up on GitHub where development of various products are done out in the open (for example, https://github.com/cmsgov https://github.com/cmsgov).
- toomuchtodo 6y ago> I think them funding projects directly with cash could cause a lot of problems though. The increase regulations that would need to be added would probably not be worth it for open source projects. People who get funding would likely need to submit a lot of documentation, there'd also probably be weird rules about non U.S. citizens etc... and laws would need to be passed. I think 18F's modular contracting methodology is highly effective for this sort endeavor, if you can take the opinion that they're the sponsor and benevolent dictator driving that part of the codebase (and the code developed is open sourced upon confirmation acceptance criteria has been met). Thank you for switching to an open development model. A rising tide lifts all boats. https://18f.gsa.gov/2019/04/09/why-we-love-modular-contracting/ https://18f.gsa.gov/2019/04/09/why-we-love-modular-contracti...
- dimmke 6y agoNice link, I've followed 18F a little and I'm interested in everything they're doing. I think whipping contractors into shape is the easiest path to increasing government participation in open source. It's easier than coming up with new regulations specifically around open source funding. Billions of dollars are spent each year by the federal government on custom software development anyways. And on the whole, they end up spending about what big tech companies do for engineers (but not getting the same level of quality) Forcing the contractors to be more open will probably keep them more honest and make them write less shitty code.
- deleted 6y ago[deleted]
- jrumbut 6y agoI think the contracting model (which has it's place!) is really at the root of the problem. The time for contractors is when you need something that is very rare in the world or you need a large temporary expansion of capacity. A lot of government contracts are the kind of work that will be consistently taking place over decades and can be done by any of hundreds of thousands of similarly competent people. Imagine if you didn't even need to write a contract, didn't need a bidding process, that could be substantial time and money saved on its own. Then with FTEs minor initiatives like finding interesting internal libraries to open source can just happen. What I'm saying isn't a new idea (really it's an old idea) and I very much admire those who are actually taking the risk to make this kind of thing happen because the failures can be very visible and successes sometimes aren't.
- godelski 6y agoFor what it's worth a large amount of the DOE work (where they have the super computers) is open source. You got ORNL (with Summit and soon Frontier)[0], ANL[1] (soon to have Aurora), and LLNL[2]. I think what needs to happen is that things could be better organized, for example ORNL has [3] which still open sourced but not grouped under the ORNL GH. Also if we got to code.gov and search "ORNL" and "C++" we only see DCA++ which isn't on the GH but here[4]. I think as long as code isn't sensitive to national security (LLNL...) it should be open source. But I think the big problem is that organization and discovery is very difficult. code.gov is an attempt to solve this, but it doesn't do it well. [0] https://github.com/ORNL https://github.com/ORNL [1] https://github.com/argonne-national-laboratory https://github.com/argonne-national-laboratory [2] https://github.com/LLNL https://github.com/LLNL [3] https://github.com/ornladios/ADIOS2 https://github.com/ornladios/ADIOS2 [4] https://github.com/CompFUSE/DCA https://github.com/CompFUSE/DCA
- rwcarlsen 6y agoAnd I'll add Idaho National Lab [5] to that list - particularly the MOOSE multiphysics finite element code [6] is a largish project with significant momentum/funding: [5] https://github.com/idaholab/ https://github.com/idaholab/ [6] https://github.com/idaholab/moose https://github.com/idaholab/moose
- ssully 6y agoI'll add Pacific Northwest National Lab (PNNL) [7] [7]: https://github.com/pnnl https://github.com/pnnl
- xxpor 6y agoThe funny part about a lot of the national security code at LLNL is that I bet there is approximately no one else on the planet with the computing resources to actually run it (HPC simulations of weapon effects) Except the few countries that possibility could are exactly the ones we wouldn't want to get their hands on it... funny how that works out. Just remember, what was the actual reason ENIAC was created? It wasn't just for fun: >its first program was a study of the feasibility of the thermonuclear weapon. https://en.wikipedia.org/wiki/ENIAC https://en.wikipedia.org/wiki/ENIAC
- an_opabinia 6y agoBrookings seems to be advocating funding open source IT projects that already exist, for example a big ($10m+) check to the Apache Foundation. Apache already has the compliance competency. It may be more efficient to use existing grant writing for universities. The Apache Foundation can redistribute the money it can’t hire programmers competently the way a university research department can. However it would be bigger impact to write smaller checks for many tools. The real problem is that single purpose / single feature IT software tends to be the best at what it does but is the hardest to fund this way. The compromise will probably be funding people to write and evangelize standards. This is too bad, because people who apply for grants aren’t Google, they aren’t standardizing an existing, widely deployed real piece of successful engineering without any economics brakes. They’re people writing things like SOC 2 or ISO 27000xxx that arguably do not provide any meaningful value at all - standards that could vanish overnight and absolutely nothing about a single person’s daily life would change at all. 18F or whatever publishes a lot of stuff like this. Markdown policy documents. I think it’s profoundly wasteful, it is taking talented people’s intellectual energy and diverting it to something that not only hardly anyone will use, but perpetuates the worst aspects of government - the belief that text and bureaucracy and the way lawyers do things is intrinsically valuable, as opposed to something normal people routinely completely and utterly ignore.
- sethish 6y agoI'm not sure who I would trust, but I don't generally trust university research departments to produce high quality, reusable software. Not that industry projects produce consistent quality software either, but fewer of those projects are open sourced.
- peterwoerner 6y agoSure, but there is no reward for research departments to produce high quality code. Their job is to experiment and publish, maintainable bug free(unless it effects their code) doesn't get rewarded. With that being said there are tons of high quality open source scientific computing projects e.g. lammps, abinit, dakota, Deal.II which are open source, ran by people at government research labs and universities and funded by e.g. NSF which work really nicely and are (I assume) quality software products. I will note that the Europeans seem to be better and producing these kinds of works than the Yankees.
- kobe_bryant 6y agoyup, I'm working on a contract for HRSA and open source is a requirement
- kfrzcode 6y agoThe work we do for the VA is open source! I am a contractor working alongside the US Digital Service - there are a TON of projects out in the wild and lots of movement in the "Government should build open source software" direction. https://github.com/department-of-veterans-affairs https://github.com/department-of-veterans-affairs Join us at https://oddball.io/jobs https://oddball.io/jobs
- dalbasal 6y agoSay, for the sake of argument, that you had $100m pa to invest in open source. What/how would you do?
- gunsch 6y agoI work on a contract for the VA, which includes open-source repos [1] for VA.gov's frontend + backend systems. We work closely with USDS [2], who has been a huge ally in advocating for doing our work in the open, including our project management. It seems like GSA does a lot of similar advocacy work, though I haven't interfaced with them directly. One interesting thing we've run across is that Public Domain source code is not considered "Open Source" in terms of OSI licensing [3]. This isn't usually relevant, but has blocked use cases like software services offering free use for OSI-licensed projects. (To other readers: If you're interested in chatting about working on modern, open-source projects in the federal space, drop me a note! Email in profile). [1] https://department-of-veterans-affairs.github.io/va.gov-team/ https://department-of-veterans-affairs.github.io/va.gov-team..., repository links at the bottom [2] https://www.usds.gov/ https://www.usds.gov/ [3] https://opensource.org/node/878 https://opensource.org/node/878
- dimmke 6y agoHey, I just sent you a connection request on LinkedIn. Definitely interested in learning more about your open working experiences. I'm really surprised that they're also including project management with that.
- robocat 6y ago> Public Domain source code is not considered "Open Source" in terms of OSI licensing https://opensource.org/node/878 https://opensource.org/node/878 The reasons look to more nuanced than that article (especially for government work) but the crux AFAIK is that public source is not a license, so there is no license that the OSI can approve. From https://opensource.org/faq#public-domain https://opensource.org/faq#public-domain : There are certain circumstances, such as with U.S. government works as described above, where it is not easy to apply a license, and the software must be released into the public domain. In these cases, while it would be inaccurate to display the OSI logo or say that the license is OSI-approved (since there is no license), nevertheless we think it is accurate to say that such software is effectively open source, or open source for most practical purposes, even though it is not officially released under an open source license. (This is assuming, of course, that in the laws of releasing jurisdiction the meaning of "public domain" is compatible with the Open Source Definition.) After all, the freedoms guaranteed by open source licenses are still present, and it is possible for the familiar dynamics of open source collaboration to arise around the software.” The next FAQ heading explains that the CC0 license was not OSI approved due to its patent clause. Public source does have its issues with some jurisdictions, but surely jurisdiction problems are no worse than the specific problems each other license has.