Public money, public code.
Its really that simple
Yes, I think all ~~government~~ software should be FOSS.
(Ok, ok. Not all. I don't think it should be mandatory to distribute software. But if you do distribute software, I think the source code should be required to come with it and there shouldn't be any intellectual property restrictions on modifying it or distributing it, with or without modifications so long as you include the source code. Aside from that, distributing versions with malware included without sufficiently advertising that fact should be considered some sort of fraud or vandalism.)
But I'm under no illusion that there's any likelihood of that happening any time in my lifetime. One can hope, though.
Of your "possible challenges", the first two are complete fiction. FOSS would make it easier to properly maintain and update systems, complex or otherwise. And databases and code are two different things. Beyond that, I'll say that distributing software only in compiled form doesn't make anything more secure or hide anything about how the code works.
Edit: Oh, I also think a right to attribution is a good thing. It can be done poorly. (Like some of the earlier BSD licenses that would result in pages and pages of attribution for a single code project.) But done well, I think it's a worthwhile thing.
Yes. Public money public code and all that.
However...
For security reasons, I wouldn't feel comfortable if every one who wanted to could just contribute to it. It would need to be a closed developer group with security clearance. We can all look at what they're doing, but we can't insert our own patch commit requests to them ad nauseaum.
That's entirely possible in the existing open source model with things like CODEOWNERS in github. I think it would work well for this concern.
What do you think: should all government software be open source?
No. I think that there are some things that should very much not be open source or even have binaries distributed, stuff like things like software used for some military purposes. You wouldn't want to distribute it with abandon to the world any more than you would the weapons it drives or is used to create.
Open source only requires source distribution with binary distribution, so the software can be open source and still not publicly distributed. It just means if its ever declassified, the source will be required to be distributed along with the software itself.
If the source isn't publicly available, it's not open source. It sounds like you're suggesting that the software remain closed source until some later date where it then becomes open source.
That is simply not true. Go read a few open source licenses and see for yourself. They only require that the source code be distributed with copies of the software itself. The code is not required to be made available to the general public.
A few references:
Generally, open source refers to a computer program in which the source code is available to the general public for usage, modification from its original design, and publication of their version (fork) back to the community.
https://en.wikipedia.org/wiki/Open_source
The program must include source code, and must allow distribution in source code as well as compiled form. Where some form of a product is not distributed with source code, there must be a well-publicized means of obtaining the source code for no more than a reasonable reproduction cost, preferably downloading via the Internet without charge.
The term open source refers to something people can modify and share because its design is publicly accessible.
https://opensource.com/resources/what-open-source
having the source code freely available for possible modification and redistribution
https://www.merriam-webster.com/dictionary/open-source
I haven't read any open source licenses, so it's possible you are correct in some technical sense, but that is not what people mean when they use the term open source.
Clearly the OP was using the common definition, or most of the post wouldn't make any sense.
The only one of your sources that directly contradicts what I am claiming is the Wikipedia line about the source being publicly available. But that is inaccurate. All the major open source licenses require source code be available to anyone who has access to the executable form of the software - not the public in general. So, if some FOSS software is available to download on the Internet without any restriction on its access, then so must the source code. Most FOSS software is distributed this way.
However, if you write software under an open source license, you are not required to share that software with anyone. The license requires you to distribute the source ALONG WITH the software. But it doesn't require you to make the software freely available to everyone, or anyone.
Tying back to my original point, which has been derailed by myriad people who refuse to read before thinking they know things, I was saying that we don't need exceptions for military software because it can be licensed as open source without that code being handed over to our enemies. But requiring it to be open source would, for example, preclude the DoD from building kill switches into the F-35s that they sell to our allies, because they'd be required to share the design of the plane's control systems along with the product - again, only to the people who receive a copy of the product - not to the public at large.
You don't get to redefine open source. It's always been about giving the source code to whoever you give the software.
Making it publicly available is an acceptable alternative to fulfill that obligation.
I'd say that kind of thing should fall under a label of being "Classified". If it's something like a recruitment page for the Army that shouldn't need any kind of classification.
I agree, all software developed or used by governments should be open-source.
There might be few cases where there is a legitimate reason for it not to be open source (no open source software available, need a proprietary software for running old legacy equipment ...). In this case the decision should be voted on and the arguments exposed publicly.
Some, but probably not all. Seems like it would be a bad move to open-source all military software.
Why? Open source only requires sharing the source when sharing the software. No distribution of software - no distribution of source. But if they are gonna sell software to other militaries or civilian contractors, we have a right to know what they're selling.
And no, hiding your code doesn't generally make your software more secure.
It just seems like a bad tactic. For example, if the US gives Ukraine some software that helps them fight Russia, it's likely tactically advantageous (to Ukraine) if Russia doesn't have the source code.
Of course, it doesn't mean Russia couldn't do some reverse engineering to some extent. But that takes time, and likely wouldn't be as complete/thorough as just handing them the source code.
If the DoD gives some ooen source software to Ukraine they are required to give the source code to Ukraine - not to Russia.
Trying to understand what you're saying: how is that open source then? It sounds like you're saying giving the source to Ukraine only would suffice.
That's exactly what I'm saying. Go read the GPL and you'll see that's what it says too.
You’re confusing GPL with open source. Not all open source software is GPL.
The general discussion in this thread is if source code to government software should be publicly available. Not if government software should adopt GPL.
Its not just GPL. MPL, BSD work this way as well. And the original post refers to open source, not "code available to all". Come back with a commonly used open source license that enforces what you're describing and maybe you'll have a point. Otherwise, why are we arguing about things that can just be looked up?
It’s generally not a good idea to make military technology accessible to the enemy.
So you didn't read my comment before replying?
that could be solved by encrypted military plugins/addons that have their own security measures
Do you mean software created by the government, or simply used by the government?
In the US, I believe the standard is that the software would be public domain if it's an official government publication.
Within reason.
A nice little application to calculate tax and benefits? For sure.
A detailed model on how a nuclear attack would behave depending on the wind direction and tidal waves? That shit needs to be kept secret.
That should def be open source
Why would it be more difficult to maintain and update a complex system?
They don't have to accept outsider contributions on their mainline nor employ less people to work on it.
I don't have a source, some looking will find it, but NASA used to have to be in the public domain. Now they partner, and the partner gets the patents. I know the Apollo soyez mating hardware was public domain, and apas docking is still.
I also seem to remember that research paid for by the USA, used to have to stay public.
I don't have a source to quote, just memory.
There really is no good reason for not being open source.
yeah i think all government software available to the public should be free and open source.
Any even partially publicly funded government code should be open sourced, just like the new rules for public funding and publishing of scientific research. If people actually paid attention this would crush my former local government department.
I think all public funds that generate data and/or software needs to be public.
The notion that maintenance is an issue is a red herring. Proprietary software purchased by government requires ongoing support contracts right until the vendor discontinues the product and leaves the public funds to prop up another billionaire.
Open source would also stimulate the economy since businesses could benefit from the project and use or apply it to their use, something which currently requires more investment with the same vendor.
All publicly available software should be free and open-source, ten toes down.
Another can of worms is dealing with proprietary technology. A lot of software is built in partnership with private companies. They likely don’t want to give out their competitive edge for free.
I think more government software should be open source, but I don’t think it’s possible to make all software open source.
Imagine governments adding to foss. Would be awesome.
Software developed by government funded research is typically released open source in the US.
Estonia: digital government services with open and auditable APIs.
What makes an API auditable?
Yes, in the same way all research funded by the public should be open. If you pay for a dataset to be gathered and only one team gets to use it you have wasted money. Make the dataset open, make all the methods open, and it can be used multiple times, increasing the return on investment. In the same way if someone is working on security auditing for something like OpenSSH anyone who uses it benefits. You pay once for the work but get benefit for all who use it.
This also makes standardising easier because of the common tools so you can have cross department access without unnecessary technical barriers. For example, making a standard format for data in a SQL database means you can access multiple datasets and correlate them, allowing the study of important issues with minimal fuss. You can even create standards for accessing this data to make it much safer to use without exposing people's personal information.
On the flip side you could have Microsoft and other similar companies decide what is worth investing in and just hope their system will work. If there is a security issue you just have to wait for them to patch it assuming they identify it. If they stop supporting something you can't keep using it with external support because you don't have the code.
Honestly, it is also a national security risk. Using a vendor from another country means you have someone who can access your data with software you cannot audit who is potentially influenced by the government of another country and you just have to trust them. I cannot understand the use of Windows in military applications. Honestly, asking the fox to guard the hen house. Why would you let the USA have access to your systems with the plausibly deniability of a company like Microsoft in between? Sounds like lazy writing for a military fantasy novel, not modern foreign policy.
Ask Lemmy
A Fediverse community for open-ended, thought provoking questions
Rules: (interactive)
1) Be nice and; have fun
Doxxing, trolling, sealioning, racism, and toxicity are not welcomed in AskLemmy. Remember what your mother said: if you can't say something nice, don't say anything at all. In addition, the site-wide Lemmy.world terms of service also apply here. Please familiarize yourself with them
2) All posts must end with a '?'
This is sort of like Jeopardy. Please phrase all post titles in the form of a proper question ending with ?
3) No spam
Please do not flood the community with nonsense. Actual suspected spammers will be banned on site. No astroturfing.
4) NSFW is okay, within reason
Just remember to tag posts with either a content warning or a [NSFW] tag. Overtly sexual posts are not allowed, please direct them to either !asklemmyafterdark@lemmy.world or !asklemmynsfw@lemmynsfw.com.
NSFW comments should be restricted to posts tagged [NSFW].
5) This is not a support community.
It is not a place for 'how do I?', type questions.
If you have any questions regarding the site itself or would like to report a community, please direct them to Lemmy.world Support or email info@lemmy.world. For other questions check our partnered communities list, or use the search function.
6) No US Politics.
Please don't post about current US Politics. If you need to do this, try !politicaldiscussion@lemmy.world or !askusa@discuss.online
Reminder: The terms of service apply here too.
Partnered Communities:
Logo design credit goes to: tubbadu