Congress should invest in open-source software
brookings.edu
brookings.edu
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
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.
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.
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-contracti...
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.
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.
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.
[1] https://github.com/argonne-national-laboratory
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.
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.
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.
Like a license, I think it would be nice if projects adopted a development guideline, code formatting, the commit, code review, merge process, etc. So that everyone can have a common set of known operating norms around how that project is developed. It would be a lot easier for a funding organization to review if that were in place. The Robert's Rules of Code Review. Bonus points if this were all encapsulated into an automatic process.
I think there is a ton of value in funding projects (Apache,Rust,Blender,etc) as well as individuals. It would be wonderful if someone could go on sabbatical, full or part time and get paid to work on OSS. Maybe you apply for a grant, show them the git repos (process above analyzes), one has a plan (fix bugs, new features, evangelism, tPM, etc) for the time and with time with the bare minimum of goals. Like an agent can watch your activity log and do a roll-up.
I think 50k a year would be a number that many technical folks making much much more would jump at the chance to just work on OSS.
This isn't completely true. I'm familiar with at least few projects which got grants specifically to build tools for other scientists and those were great for funding general software engineering jobs not tied to the usual academic publication/job cycle. That was good for supporting ongoing upgrades — nobody gets a publication for upgrading a dependency, which is how you end up with someone keeping a Windows 95 box on life support for years because they were focused on science – and also for supporting things like good documentation since that's a serious time commitment.
It'd be an idea to scale up things like that for identified high-impact projects, with the trick being finding someone capable of overseeing software engineering rather than the usual academic focus of existing grant panels. Seems like something which might be a fit under the Commerce department since there's a lot of stuff which American businesses benefit from but generally do not directly support.
I've got a friend on the data science/visibility team at CERN, and she has some fun stories. It's absurd to me that the reproducibility path for so much modern day research in nearly every field passes through proprietary closed source software, proprietary pre-compiled signed binaries, ditto for firmware, and then (sometimes) hardware where the entirety of the documentation consists of 'A service contract with the vendor'.
The reproducibility crisis in the sciences right now is essentially an excess of inputs and deficit of testing those inputs -- closed source hardware/software is not helping.
Another thing that works against this is a lack of academic credit for doing,overseeing, or steering the work. This also could change.
Changing the incentives can easily change the results.
> Changing the incentives can easily change the results.
Arguably, besides the PI (Principal Investigator) listed on a paper, you should also list a Principal Engineer.
It has been solving the problem you mention very well.
I think you’re under-estimating the value of publishing a good policy from a respectable source within the Federal government.
Many of the government’s technology problems are actually self-inflicted policy problems. Publishing a good policy gives internal reformers a place to start. When the lawyers and security people start telling you no, it’s much more effective to say “actually this language comes directly from GSA, who approved it for X, which has the same compliance requirement you’re concerned about” than to simply protest that it’s industry best practice.
I do agree that this lawyers-first way of doing things kinda sucks. It’s certainly not the way to maximize tech success. But it’s the system/culture we’ve got. I’d love to hear ideas for changing it, especially if you can figure out a way to accomplish the privacy, security, integrity, and fairness objectives that the current system prioritizes.
A government agency struggling to serve the public good because it’s hobbled by obsolete tech is better than an agency enabled by cutting edge tech unshackled from the public interest and democratic legitimacy.
We wind up with a lot of political and business family dynasties despite the terrible incompetence of sons and daughters. Part of that is that families can operate totally without policies, that they are having horrible dynasty lawsuits because nothing is written on paper or litigated that way. Yet as long as they don’t sue each other, the lack of policy friction - a “liquidity” that may not show up as a dollar amount but as something else - makes the family dynasty surprisingly competitive.
Wouldn’t it be ironic that policies - specifically the hundred+ page markdown output kind of policies, not something succinct like I don’t know, the Ten Commandments or the Bill of Rights - make the corrupt family dynasty more competitive?
https://github.com/department-of-veterans-affairs
Join us at https://oddball.io/jobs
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..., repository links at the bottom
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 : 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.
It's no-brainer infrastructure, like highways.
The newer proprietary educational portals are usually designed after Moodle, so it's not only bad, it's also trend setting. The good news is that this means they are better than the old ones from before people had something to copy.
Bottom line: if universities could contract for support and pay developers a fraction of what they currently pay for proprietary LMS, Moodle (or another open source platform currently starved for resources) would have much better usability and student data wouldn't be in the hands of private equity firms.
And Canvas is GPL 2 as well, so it’s licensed a heck of a lot better than Blackboard.
Canvas core is AGPLv3, but many important plugins are proprietary so I'm not aware of universities self-hosting.
Just so I'm not making an empty comment, here are a few quick complaints:
- Confusing differences between calendar vs module views that differ from class to class depending on where the professor tries to put things
- Zoom is shunned to its own tab rather than integrated with the calendar, causing students to constantly ask each other for the password for every session
- Everything (tests, midterms, homework assignments) is called a quiz, and it's often unclear what is going to be graded or what allows multiple submissions until it's too late
- Notification settings are terrible and most people stick with the settings they set in the first week, meaning some of my classmates are just now realizing they've been missing announcements or grade postings
- If I get an email that a teacher has released grades, I have to go to Canvas to open it - and sometimes it's not even true
- Notification counts are ignored because they appear even on things I've already seen but just not clicked on from the "home" view
- Replies to my own discussion posts are mixed in with replies to everyone else's posts, meaning no real discussion is had
> - Confusing differences between calendar vs module views that differ from class to class depending on where the professor tries to put things
This is actually a feature, not a bug. Courses are wildly different, professors think wildly different. I would not want the software to shoehorn everyone into the same schematic. After all, in-person courses are organized in wildly different ways. You just have learn and communicate.
> Zoom is shunned to its own tab rather than integrated with the calendar, causing students to constantly ask each other for the password for every session
That is a misconfiguration on your uni/prof's part. If they do it right, every calendar entry should a zoom link with the password included, resulting in one-click joining of class.
> Everything (tests, midterms, homework assignments) is called a quiz, and it's often unclear what is going to be graded or what allows multiple submissions until it's too late
Are we using the same software? If you click on any assignment it clearly shows every one of these things at the top. I just checked in student view.
-- I completely agree with your comments about notification settings. Also, the email system within Canvas is atrocious.
And this is what I see at the top of two of my next submissions:
Due Monday by 11pm / Points 30 / Submitting: a file upload / File Types: pdf, doc, and docx / Available until Oct 20 at 12pm
Due No due date / Points 1 / Questions 1 / Time Limit None
Neither says how many attempts I have. I believe the file upload has unlimited re-uploads and the latter only allows for one submission, but I really have no idea how to confirm that without risking it.
Also, if you click on an assignment you should be able to see attempts allowed in the top view. If you can’t then your teacher may be hiding it (or you only get one). If they are hiding it, you can still see it through graphiql if you feel like looking (your-institution.instructure.com/graphiql)
If there is still trouble in your courses, ask your prof to paste the Zoom link with password on the hompage of your Canvas course (they can add it as first module item if using Modules as homepage)
As for the submission issue, I think Canvas will only tell you about multiple or unlimited attempts on an assignment if you have them. If only one attempt is allowed, then it says nothing. I agree that this is a bug.
Training is expensive.
It took forever to implement at our organisation (it was a non-profit) and was generally a waste of time.
In the 00's I was part of an effort to merely get the State government to consider OSS.
The lobby was powerful and effective.
Despite broad bipartisan support (we did a great job educating legislators on open software and open data and how that resonates with the work of the public) our house speaker blocked it solid.
Had there been a vote, it would have passed.
Tons of people lobbied that speaker for literally months. Fax, phone calls, visits to her office, the works.
4 guys in expensive, black suits, and some number of zeroes to the right of a donation got it done.
For what it's worth, the same group was successful in part of removing that speaker from office.
The damage had been done. It was hard to even bring the matter up in committee going forward.
MS did a really good job of pushing off web technologies as threat to their platform. We are only now getting to where we should have been. Netscape was way too naive and MS saw two or three steps ahead and blocked their move.
It's like Hacktoberfest, but instead of a free t-shirt it's $200.00 off your tax bill. What could possibly go wrong?
Open-source meets this requirement, proprietary software doesn't.
But that is a much narrower statement.
Most software developed using government funds is not exclusively developed by government employees as part of their official duties. Most Government funding of software development goes to contractors, where that rule does not apply.
The no copyright only applies to the US, not necessarily outside. Outside the US it definitely can have a copyright.
There are also some weird exceptions for government employees, specifically for the u.s. postal service and for certain materials created by NIST.
So Freedom of Information Act request will work if they're already predisposed to release the software, it's no guarantee.
People of all the countries are not a problem, but governments that are in political opposition to the US can be. I could imagine them using the source code to target technological and social structures of the country. They could do it now as well, but with much more effort than cloning stuff from GitHub.
I would suggest that the government reimbursed 80% of small contributions, e.g. below $300 a year per project, and matched larger contributions, e.g. up to $3000 a year per project.
As always, when an influx of free money is involved, cunning criminals would try to siphon it out without producing useful software. This is why I would limit such contributions to small amount per individual contributor.
It makes really easy for a large enough group of fans fund a popular project for free, and double their larger contributions, without the government choosing the projects. It also would still require spending money, or just effort, to donate, so donating just for kicks is limited.
There are already processes and procedures in place, it piggy backs on a lot of existing relationships. NSF?
I know I live in cloud-cuckoo fantasy land here, but I know plenty of developers that would love to work on projects for the civic good, but they don't because they also want to earn good money so that they can live comfortably, raise a family easily, etc. etc. So they go and work for Facebook and Google, etc.
There's an inbuilt assumption that government can't or shouldn't ever compete with tech giants for salary. But look at the incredible sums of money wasted on contracts with borderline useless consulting shops. You can't tell me that money wouldn't be better spent on hiring smart developers and project managers and just getting stuff done.
I know it'll never happen, but a developer can dream. There's no actual reason why it couldn't.
https://medium.com/the-u-s-digital-service/youll-never-be-th...
https://www.fastcompany.com/40528581/obama-federal-it-fix-it...
"However, when a US federal government agency uses contractors to develop software, that is a different situation. The contract can require the contractor to release it under the GNU GPL. (GNU Ada was developed in this way.) Or the contract can assign the copyright to the government agency, which can then release the software under the GNU GPL."
Unlike other developed democracies, the U.S. is a country where bribing the Congress is actually legalized, in the form of campaign donations. In fact, the main work of most congresspeople is to run after money to finance their next campaign. Therefore they will serve primarily the ones that pay them, not the ones that elect them.
When open source bribes politicians then they'll pay attention.
America has no such restrictions. Members of Congress & the President start running & fundraising now ~2 years before an election (& unofficially before that). For the House of Representatives, that means members are in an electioneering & fundraising mode non-stop. The staggered election cycle in the Senate means that a large portion of the Senate is constantly campaigning further making focusing on the act of governing difficult. Fixing these issues doesn't solve all problems obviously but making no reforms isn't going to improve things either.
Not the OP, but ... murder or genocide is very clearly a crime, while lobbying starts with "talking to an elected official about laws that concern you", which is sorta normal in democracy, the elected officials should be available to talk. It only becomes problematic if it is overdone or done too secretively.
I think that a good and transparent lobby register is probably more useful than outright ban; at least an external observer can glean some information from it.
For the purposes of discussing government corruption, "lobbying" mean "talking to an elected official about laws that concern you, with the implication that their response will affect how much and in what direction you use money to pervert the electoral process". (Obviously, corporations generally don't actually explicitly say that part, because plausible deniablity.)
Lobbying is already legal, and is mostly a bad action; but if we make it illegal, it will create a black market that isn't regulated. It's the same problem (one of many) that the "War on Drugs" had, in that any activity that's illegal tends to be unregulatable. It also attracts to the market for people who are already doing illegal things.
I think the root of the problem is that politics in the US (and in most other places) is a popularity contest; it attracts people who are charming, lie effectively, and who's goal is to be popular. They, of course, have other goals too, but having the accolades of the represented is a requirement, and people that seek that status end up drawn towards politics.
That's not remotely true. It is illegal to actually give any gifts to any government official (including elected officials). This extends in practical effect to "we have to charge the DoE for coffee when they're doing a site visit."
You can donate to political campaigns--just as you can in every democratic country I'm aware of. Candidates can solicit donations--just as they can in every democratic country I'm aware of. What's atypical in the US is that the party structure is incredibly weak (which means you get less relative funding from party sources, and therefore candidates have to get more funding from fundraising), and elections are so eye-wateringly expensive that you need to spend more time fundraising to be competitive.
If you get caught up in details, you won't be able to understand.
There are probably thousands of individual government regulations that each could cost AT&T more than $16 million per year. If lobbying was as powerful as some think, why don't they lobby even more?
Without lobbying, competition would have destroyed profitability of telecommunications.
The issue is under the first amendment, the government is not allowed to curb speech by people or organizations advocating for a candidate as a third party (which people can contribute to instead).
Spend enough time in both continents and you’ll see that the proposition that the US is somehow more corrupt is not only disingenuous, it’s also probably dead wrong.
https://www.transparency.org/en/cpi#
This is only perception, but it's still pretty interesting and useful.
FWIW according to that the US is more corrupt than some European countries, less corrupt than others. You can probably even guess the countries that are less corrupt and more corrupt in Europe.
Of course, having a president who equates civil fines for late paperwork with criminal prosecution for dispensing hush money as equally benign "process crimes" is a major problem as well.
They will end up funding low quality competing projects which will harm my project by using money and media coverage to steal attention.
That's basically the story of my career. The government, working with corporations have been ruining my career so far.
I would be much better off if VCs and governments had stayed out of our industry entirely.
HEC-RAS is a Windows-only GUI application. Supposedly USACE has an internal Linux version, not publicly available. HEC-RAS has a limited COM API, but it's not officially documented. I suspect that the API was exposed unintentionally. Most of the input files are text, but the format is very strange (very old-school), again with no official documentation. I spend much of my days reverse-engineering HEC-RAS file formats in order to make the process of building flood models more efficient and less error-prone. Other developers like me exist at competing civil engineering firms, working on similar reverse engineering projects and secret sauce tools for HEC-RAS.
If HEC-RAS was made open source, it would be a game changer. We'd be able to accomplish so much more. If the input/output files were officially documented, it would be a game changer. FEMA would benefit tremendously.
The following link does include a Linux download, but with little support - https://www.hec.usace.army.mil/software/hec-ras/download.asp....
Also doing some digging on Github, I did find an reverse engineered version of a python version of RAS via win32com control - https://github.com/mikebannis/rascontrol, there's also projects of varying degree across Github - https://github.com/search?q=hec-ras.
Mike Bannis has done great work wrapping the HEC-RAS controller and creating parsers some of the file formats. There's a very helpful _unoffcial_ book [1] laying out the win32com control and file format details. Making HEC-RAS open source would allow many more projects like these, with significantly less guesswork.
[1] https://www.kleinschmidtgroup.com/breaking-the-hec-ras-code-...
Are there anything specific about the formats I should be asking for? I'm assuming there are hundred of different file formats (input and output alike). If I knew more about the file formats, that may make the conversation with the team easier.
> All three of these levers for FOSS—direct funding, procurement regulation, and tax incentives—should be included in the next infrastructure bill.
https://www.nsf.gov/funding/pgm_list.jsp?org=nsf&ord=rcnt
Put 10 million a year for 5 years as an experiment. It takes an extra administrator and some part time experts in the field who are compensated for the work.
I would hesitate to accept that Faustian bargain.
(Not to say that things shouldn't be accessible, but we've already seen good-will gestures ruined because of this case. Some university posts lectures online to be nice, forced to take them down because they aren't accessible.)
The main sticking point I struggled with here is around beltway contractors. They already largely prevent good software from making it into gov. Today, they prefer to write their own crap or live on OSS without really giving back. Most proposals I thought about here would result in beltway bandits getting the OSS contracts without doing real passthrough to the actual devs. They're the ones with the contract relationships and can tell funders their OSS value-add layer is the part needing funding to make it gov-ready. Most folks in this community are nice as individuals, but due to the lengthy & uphill nature of pushing a contract through, they've locked down the system, and it'd take a tight policy & strong org to work around them. I'm not a fan of Linux Foundation, Apache, etc. as financial stewards either, so it's tough.
If congress invests in open source, it subsidizes all software development for the world.
If congress invests in software from companies (like MS or Amazon), it subsidizes software development for these U.S. companies to compete on the global stage.
I can see the first case being in the best interest of humanity, and the second case being in the best interest of the U.S.
What would you do?
Corporate money already has a bad influence on software freedom. This will be worse.
What would work is UBI, so persons who are willing to live frugally for a couple of years can create software, no strings attached.
That is before we get into the potential problems of UBI itself. Which there would be numerous.
> This research shows that the passage of such a law in France led to as much as an 18% increase in the founding of French IT-related startups and as much as a 14% increase in the number of French workers employed in IT-related jobs.
Yes it did!
Branches.. revisions.. being ran through a legal interpreter to ensure there are no logical errors.
There is a movement for plain english bills, which the average user(citizen) could read. I'm for that too.
SB 1101
Legislation failed self consistency checks against:
HB 1203, SB 32
Renders sections in statute redundant:
33.401, section A 31.22, section D
Renders sections in statute moot:
31.101, all sections. 32.4, section B
Gaps in enforcement found (loop holes)
SB 1101 Section A, has incomplete coverage of peoples...
HB 7075
That's the normal law creation workflow (nearly everywhere, for a century or so already). They don't use automated tools, but the features are there.
Life isn't software engineering where anyone can just contribute. I literally had a conversation today with someone that thought Common Law was "Christian Law" and then called me Dumb when I explained where that didn't really make any sense.
Only when people know enough to enforce it?
That's kind of how the law works in all scenarios.
There are so many skeletons in the closets, however most are unenforceable because there is more reasonable precedent in the other direction.
If nothing else, I'd like to see a lot of law refactored into human readable language while keeping its meaning.
Everyone just has an incoherent mix of gaslighting regarding everything that went wrong, and inadequate regulation.
Governments can be helping contribute to industry standards, the protocols, the smart contracts that would help some industries function more seamlessly. A state-contributed escrow smart contract would basically fix the escrow industry. A backdoor in it would be laughed at hilariously within a day.
This would be a more collaborative role of the state and propel things forward much faster.
Also the problem that Congress is in the pockets of these tech monoliths.
It is an admission that the open source concept cannot survive on it's own merit in the marketplace.
It is asking government to pick winners and losers by way of funding, instead of the marketplace.
What could possibly go wrong? Everyone knows that government lives on the cutting edge of technology and will always respond instantly to the open source community --- rather than say corporate donors and lobbyists. They would never demand things be steered in their direction.
As they say, be careful what you wish for --- you just might get it.
For example, we're currently subsidizing multiple vaccines for COVID-19 because it's important that we collectively take on the risk that a single one might fail. Those billions in spending to pay for something that might be worth $0 is worth it because it's likely at least some of the vaccines will be safe and effective.
Sometimes things start out as unprofitable and then only later, because of those dollars invested, become profitable. Space, for example. Government investments in solar power have also been super important.
Or, more relevant to Hacker News, how about ARPANET being funded by the military, and then later that funding going to the National Science Foundation? Eventually, of course, it got privatized.
Vaccines easily survive on their own merit in the marketplace. Government funding is being used to speed up the process and insure redundancy in case of failure.
ARPANET is another questionable comparison.
A world wide, failure proof network had never been done at the time so the military subsidized the basic research and development. Once the basic R&D was done, the funding ended.
I would be inclined to support new, innovative R&D but I am not willing to pay taxes simply to clone existing commercial software.
I was taking issue with your broader principle that "asking for government support is really an admission of failure." In fact, subsidies can be incredibly valuable for the societies that collectively pay for them. I think it's best to evaluate on a case-by-case basis. This author has done a ton of research and so I didn't like it being dismissed out-of-hand on principle.
Here's the paper linked from the piece about procurement (need a free account to access):
https://papers.ssrn.com/sol3/papers.cfm?abstract_id=3355486
Also, for the record, vaccines are highly subsidized, particularly for children. Those subsidies are one of the best things we've ever done as a nation.
It is an admission that the transportation infrastructure concept cannot survive on its own merit in the marketplace.
If the marketplace controlled the interstate highway system, every on and off ramp would have a toll booth --- not to mention that the roadways would likely receive minimum upkeep.
Some things are simply unworkable under the "free market" and transportation is one of these --- but software is not.
The same applies to software: like cheap and versatile transportation, libraries and infrastructure are force multipliers for commercially-viable and public-interest products. Despite such software being heavily used in industry, there's a lot that is funded from a combination of public sources (e.g., a side-effect of federally-funded basic research by groups with deeply-held open source convictions) and volunteer effort. This could be improved by direct public funding or by tax incentives for companies that contribute to independently-governed open source projects. Either way, it takes legislators recognizing that open source infrastructure has sufficient value to create policy that helps sustain it.
Closed source enhances Productivity;
Open source Empowers and enhances Productivity;Who's the "cancer" now?
Essentially it will politicize it, probably to a degree it has not been publicly subjected to.
And OSS has little to no professional PR to defend it, at least in relation to the vendors that will employ armies of PR flacks.
Remember we need something like this to counter the "breaking up FAANG is bad for national security" narrative.
I want to see Biden / Congress cutting the ribbon on a datacenter, quantum computing lab, or something.
But that isn't to say, that congress shouldn't be allocating budget to open source projects where it makes sense. Another poster pointed out the education software market, which is a good example of a case where the government is basically creating a whole industry that exists primary to service a government need. In that case there should be a strong bias to libre licensed software, even going so far as to create it if needed.
Blanket statements though, about all software the government uses should be free is crazy. Why can't the government actually do cost/benefit analysis and make that determination on a case by case basis and pick the tool for the job. It would be crazy to say that they should write their own internet search engine, or niche software for the two guys in the government that use $commercial_off_the_shelf_package that only runs on windows.
So, why not identify a few places that need change and fix those rather than these all encompassing statements. Tax filing software is another area where anyone who isn't h&r block or Intuit thinks the government should actually spend a few million and write some software, or for that matter voting software.
PS, in case it wasn't clear, if the government writes some software is should absolutely be opensource with a liberal license.