14

Taking shs's question a step further... Why isn't all government sponsored software open source? I can see excluding some for security purposes, but the rest? Didn't we as tax payers already pay for it? The government has no rights, only the people, so how can the government license something? Who is the licensee? It would be the public since the government is the people.


To those of you that think the government has rights, I would urge you to read The United States Constitution.

Community
  • 1
  • 1
dacracot
  • 22,002
  • 26
  • 104
  • 152
  • 1
    Could you make this community wiki please? – David Arno Nov 04 '08 at 16:11
  • Hey Dave... are you watching me? Every time I post something you are there. You're creeping me out. – dacracot Nov 04 '08 at 16:14
  • 2
    Yep, the government assigned me to watch you due to your subversive open-source views :) – David Arno Nov 04 '08 at 16:17
  • @Oli, it's a highly subjective discussion thread that could be closed on the grounds of being subjective and argumentative. From experience, the best way to keep such threads open is to mark them offtopic and to wikify them (so that folk don't earn rep from discussion questions) – David Arno Nov 04 '08 at 16:32
  • Why is earning rep from discussion threads bad? – dacracot Nov 04 '08 at 16:35
  • 1
    Many feel it is cheating as it is generally easier to earn rep from discussion threads. As I've earned plenty that way myself, I'd be a hypocrite if I insisted others don't. As no one seems inclined to shut this thread, I'd suggest you ignore my earlier request and enjoy the rep :) – David Arno Nov 04 '08 at 16:44
  • I support that this should be a community wiki. Or someone should step in and close/delete the thread, as it's not strictly programming related. On the other side, I like the discussion. – Sunny Milenov Nov 04 '08 at 17:14
  • Btw, there is a good mechanism this to become a community wiki - so if there are no 4 people with enough points (2000+) to edit the post, thus forcing it into community mode, then it looks like it should stay open. – Sunny Milenov Nov 04 '08 at 17:15
  • 1
    This is definitely programming related. It might not have a code-sample answer, but it's related and should stay open. – Bill the Lizard Nov 04 '08 at 18:40
  • I've added descriptive titles to the links. – jfs Jan 05 '09 at 18:21
  • 5
    Which government is this? There are other countries than the USA, you know. ;) – jalf Feb 05 '09 at 19:56

19 Answers19

13

My wishful thinking is that if the software is created by government employees or custom software created for the government by a contractor, it should be automatically in the public domain (as all government published documents are). If the government bought the software from a company, even if it included some customization, it should remain closed-source. You run into a bit of a grey area where it was developed by contractors for the government, but could then be sold as a commercial product (if anyone was stupid enough to buy software created for the government... see The Daily WTF for references)... I don't know how to resolve that, but despite my desire for FOSS, I think it best to err on the side of the business in this case.

I also think the government should be required to use existing open source software if it is a viable competitor to a closed-source solution. It would save some tax dollars and promote government openness (not in the software sense, though that would be good too).

How do we make it happen? :D

rmeador
  • 25,504
  • 18
  • 62
  • 103
  • 1
    We have problems making (insert issue here) happen with our government. I really like your answer, but I doubt my congressmen has a clue. – dacracot Nov 04 '08 at 16:38
  • 1
    I doubt most people in the upper levels of government have a clue. Most don't have a background in technology, and can't make the informed decisions, yet pass down decrees on how to do things to those who do the technical work. – Thomas Owens Nov 04 '08 at 16:40
  • 1
    The government rents office space...what's the difference? – pearcewg Nov 05 '08 at 21:34
  • 1
    The state of MA had an awesome CTO that was going to replace Microsoft licensing with open source equivalents as a cost savings strategy. Ironically, he got fired two months later - such a bummer – danpickett Nov 05 '08 at 21:53
  • All government documents are not automatically in the public domain. Maybe you are talking about some mythical government that I've never heard of but there is no government that I know of that does that. – BobbyShaftoe Jan 01 '09 at 07:00
  • In Canada government documents can be obtained via "Access to Information Requests." It's not public domain, but is close to it. – Gavin Miller Jan 06 '09 at 18:58
  • I don't believe the US government can copyright what it produces (but can restrict distribution on other grounds), but it can negotiate license in what's produced for it. – David Thornley Feb 05 '09 at 20:11
  • Yeah, let's all avoid software developed for the US government, yeah, cool, especially the military man! Oh wait, Arpanet was developed for the US military and is generally considered the predecessor of the Internet. Guess I'd better log off then... – MarkJ Sep 18 '09 at 14:26
  • @MarkJ University projects don't count. – JAB Jun 11 '13 at 20:19
10

I work for one part of the government.

First, let me tell you, you DON'T want to see the crap that runs your government.

There are plenty of 'holes' in the code I end up supporting all day long. No need to advertise them to those that would cause havoc with 'em, and never enough time or resources to fix them all.

Gov't agencies ARE concerned about money. IT depts don't generally get enough of it. It is very hard for gov't agencies to compete with private firms for quality people. It is also harder to get rid of bad programmers. If there is a full staff, some are dead weight and no way to hire more or better people.

Requirements are thought up by politicians and are never clear, concise or right.
Deadlines are even worse because now you need to adhere or support a law that impacts thousands or millions of people. Hence, bad code, worse standards, tons of band-aids.

Sorry, no open source.

And yes, I would normally support this initiative looking from the outside in but this would just be begging for maliciousness from outside individuals/groups/governments!

dna123
  • 268
  • 3
  • 12
  • 2
    I've worked writing software in both the private and public sector. The concerns you express are true, but not just for the public sector. Many private sector companies open source with success despite the same issues. – dacracot Nov 04 '08 at 17:36
  • Very true. I guess my thought is, if you OS 1 piece of code, you gotta do it all. Even if it's not security related code, the security of the code is in jeopardy. – dna123 Nov 04 '08 at 17:54
  • 2
    security through obscurity is not security. – Tim Howland Nov 05 '08 at 21:36
6

Sounds good to me. I - as a non US citizen - then get access to open source software that US taxpayers paid for :)

David Arno
  • 42,717
  • 16
  • 86
  • 131
  • 1
    Interesting point, but we at least also get what we paid for, which we don't now. – dacracot Nov 04 '08 at 16:12
  • Even if I am not an US citizen, I am not really happy to have access to US Health software written in the MUMPS language ;) http://en.wikipedia.org/wiki/MUMPS – Davide Inglima Nov 04 '08 at 16:57
  • I've heard of MUMPS, but never looked at it before. "IF IF=THEN DO THEN "? Wow, now I know why modern languages have reserved words! LOL. – David Arno Nov 04 '08 at 17:17
  • 2
    You also get the benefit of many other US actions, such as government-sponsored research and the USN patrolling the oceans. Doubtless we benefit from something your country does. I'd rather worry about what's good for me than try to make sure it isn't good for you. – David Thornley Feb 05 '09 at 20:16
  • @David Amo Reserved words don't always help. http://ideone.com/rF8cGr – JAB Jun 11 '13 at 20:16
5

There is a lot of government-sponsored open source now, especially stuff coming out of government labs like Sandia. It's not hard to find.

An argument against open-source software by the government is that tax dollars of folks writing commercial software are being used to make competing products. That's an entirely different thing than if folks did that on their own time or with their own money. Imagine if you had a hotel, then the city bought a neighboring piece of property, put a hotel on it, then started selling rooms at lower rates (oh, actually that sort of thing does happen).

David Nehme
  • 21,379
  • 8
  • 78
  • 117
5

There are a lot of good ideas here but the best answer is the most simple and obvious one.

There is not enough demand from voters for open source software in government.

I think a good start would be forcing the use of open document format. Having open standards makes open software more feasible.

Then maybe one day we can have e-voting machines that I can trust to count my vote.

Shatrat
  • 51
  • 1
3

It's public domain:

http://en.wikipedia.org/wiki/Work_of_the_United_States_Government

Davide
  • 17,098
  • 11
  • 52
  • 68
  • Apparently, work produced by contractors is not public domain, and so far, I've see 5 government projects in my 6 month work experience at the government and all 5 were produced with at least one contractor on the team, meaning that the code is (from that article, anyway) protected. – Thomas Owens Nov 04 '08 at 16:48
  • Interesting. But they don't seem to cooperate and make things available. – dacracot Nov 04 '08 at 16:49
  • Most of the contracts make it so that the contractors don't keep copyright either. – Robert C. Barth Jan 01 '09 at 07:33
  • The Freedom of Information Act applies in certain circumstances. YOU have to do some work, though. – Bob Cross Jan 30 '09 at 18:02
  • @dacracot, you hit the nail on the head. Just because things may be a certain way legally with the copyright, getting the code from a government agency is another issue. As Bob Cross points out, FOIA may need to be invoked. – Scottie T Feb 05 '09 at 19:57
2

The question mentions security briefly, but it can be a major reason that government produced or government sponsored software can't be open sourced. As a whole, the military runs a lot of software that is custom and written for a specific purpose and exposure of the source code would expose classified information. Granted you could make and argument that relevant information could be redacted but that isn't always possible as if you know what the software is for, you can derive information about that without having to know the exact name (i.e. actual operation envelops for airframes).

rjzii
  • 14,236
  • 12
  • 79
  • 119
  • Actually, it was mentioned right in the question. – John Saunders Aug 01 '09 at 16:13
  • @John Saunders - My coffee must not have kicked in yet. Regardless though, I think my answer might still be interesting to people that are reading through all of the answers. – rjzii Aug 01 '09 at 16:19
2

You really want the targeting and tracking software for a Hellfire missile to be out on the web? Secrecy is part of the equation you know...

DiningPhilanderer
  • 2,737
  • 3
  • 25
  • 29
  • I mentioned that. I understand security, but is the logistical system that the Army uses to supply potatoes to fort whatever a security risk? Then why can't I get a copy? – dacracot Nov 04 '08 at 16:17
  • But... a logistical system could help terrorists supply munitions all around the globe! Sure, they'd need all the hardware and infrastructure to do it, which is why I'm half-joking. – Ryan Abbott Nov 04 '08 at 16:37
  • You know, the 'terrorists' (who they are?) have money to pay for a closed source software too.. =) – Seiti Nov 04 '08 at 16:56
  • Man, I got voted down. Talk about a kick in the groin :) – DiningPhilanderer Nov 04 '08 at 17:01
  • Logistics are among the things they woudl be most interested in. From them you can see how many troop we have in what area, even get an idea of what they are doing, and see ayn weakness in the supply system. – Jim C Nov 04 '08 at 17:08
  • @JimC, Not the data... just the software. – dacracot Nov 04 '08 at 17:10
2

It depends on if you're talking about the federal government or local governments, but the answers are the same.

  • Governments aren't driven by profits, they're driven by creating public services, so the rationale of using open source to reduce software licensing costs isn't as important as it might be in the private sector.

  • Governments are slow at adapting to new trends. This is by design, you want government to be stable. Keeping with the status quo of buying proprietary software is a safer choice for government.

  • Open source software has been around for a long time, but the critical mass needed to support it in a broad sense (ie, is there a big enough talent pool in my area to hire people to support this new technology) is fairly new.

  • Governments are most influenced by people who know how to work the system. Proprietary software companies have a keen interest in securing government contracts, and use their influence to lobby government accordingly.

For the followup question:

  • The governments job is to provide services to the population. If proprietary software provides better service than the open source alternative, the government should not be mandated to chose the inferior solution.

  • The government does have rights. It is a legal entity that enters into legally binding contracts. This is necessary for governments to function with the private sector. The government would hold the license (as an example).

Eric
  • 321
  • 1
  • 6
  • 17
  • AAAAAAAAAAAHHHHHHHHHH! THE GOVERNMENT DOES NOT HAVE RIGHTS! – dacracot Nov 04 '08 at 16:41
  • Typo: you meant to say "The government does have responsibilities." I know what you meant but the word "rights" seems to be a trigger word. – Bob Cross Feb 05 '09 at 00:56
  • Government agencies have to watch costs, just the same as private organizations. Government budget limits, when they exist, are often more rigid than private budget limits. – David Thornley Feb 05 '09 at 20:13
2

There seem to be some pretty naive views around here about how much commercial software is not/has not been dependent on funding from government projects. There are very few software products that don't incude government-funded code somewhere, whether enhancements, or patches, or bug fixes, or in many many cases getting from first dev version to first release version.

And it's deeply embedded in most cases - you'd never be able to slice out the govt pieces.

If this proposal were adopted, there'd be very few products left to pay for. At least from U.S. companies.

dkretz
  • 37,399
  • 13
  • 80
  • 138
1

The main reason that US government-developed software is not open source is because commercial software companies would have to compete against free software developed using public money. The small number of open-source products that the US government does produce do not compete against equivalent commercial products.

mkClark
  • 1,493
  • 2
  • 19
  • 18
0

I think this is a political question and doesn't fit to the typical scope of SO.

It is debatable whether government is at all serving the people or whether it is just the strongest bully, serving the ruling class and corporations. Of-course that changes from country to country, where there's almost a consensus that governments in Scandinavia are good to their people, and it's pretty much agreed that North-Korea's (for example) is an oppressive bully.

If you want to keep some controversial subjects out of the question, I suggest you frame it as: Should a benevolent government make its sponsored software open source?

yairchu
  • 23,680
  • 7
  • 69
  • 109
0

For US government-sponsored projects which are broadly applicable, I commonly see a license like this:

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so.

(That's the license for CLIPS).

For other stuff, I think it's a matter of specialization, safety, etc. For example, working on the space shuttle program, there's no great reasons to "open source" the software that flies the shuttle. The software is highly specialized (who's going to build their own shuttle?), and they probably don't want to roll in anonymous community changes because of flight safety issues.

Ogre Psalm33
  • 21,366
  • 16
  • 74
  • 92
0

Well, for one, a lot of things governments do aren't done by those in the private sector. What good would it do for the government to release its tax collection system to open source?

Slapout
  • 3,759
  • 5
  • 40
  • 61
  • I would necessarily use the "tax collection system" as a whole, but perhaps a module or two would be useful to me. Also, it allows for citizens to proof the correctness of something like the "tax collection system". – dacracot Nov 04 '08 at 17:22
0

First, not all software can be open source as in "done in the free time by someone". For example tax paying software changes every year quite considerably, needs many patches and there is probably need of responsibility, controlled version/patches tracking, etc. You don't want to have to deal with people who pay wrong taxes because they used the unstable SVN branch. Beside tax paying sw is boring and you can't find many volunteers. Sure you can take a company to do the sw and enforce it to release sources, but the company will probably ask for more money for that.

For off-the-shelf software (say, MySQL, PostgreSQL instead of SQL Server, Oracle) you still have to do many considerations:

1) For limited installations the license cost is moot (let's say you have 50 servers with a $5000 db license on them - that's $250K which for a government is probably not even worth the time lost in talking about it).

2) Trust+Culture. Government people have widely demonstrated not to understand internet, computers, etc. in so many ways. The probability of them understanding OSS is below 0. They may even be in good faith in that.

3) Support, TCO. OSS being free is true only if your time is free. When you put in consultants, experts, employer's time etc. cost increases. Whether it goes over proprietary software or not is another whole matter but cost should be considered as a variable. For example, call-center costs for Windows are cheaper.

4) Fear (justified or not). Somewhere I read "Nobody has ever been fired for choosing Windows". Whether this sentence is right or wrong, if you want to push OSS you may end up being alone (like in your superiors not understanding, not trusting, etc.). Many conscious people still do not have the balls to make that choice. If something goes wrong and you were the one pushing Linux when everybody said Windows...

5) Corp pressure. It exists, nothing to add.

6) Slow environment. In some governmental institutions, there are still Windows 95 PCs around. Not exactly the "tomorrow we will change it all" environment you are thinking about.

7) Installed base / vendor lock-in (it depends on how you see the glass :)).

8) Laws. Each government has its laws on how product can be chosen etc. Free ones may not even be allowed by the law especially if they don't have a legal representative (most major OSS has a legal rep., but not all).

9) Most people don't care. Really, for us geeks this OSS-proprietary war has its meaning.. most people care about it as much as they care about taxonomical classification of flies.

10) Is the company you are working in, running on 100% OSS ? Why not ?

Marco M.
  • 252
  • 1
  • 4
0

Systems built on platforms (.net, java, etc) are solutions. The government pays (willingly) for the solution, but the ROI is much higher than other methods to get the same result.

The government buys many things that it doesn't intellectually own, because it needs the product/solution. Millions of examples out there.

pearcewg
  • 9,545
  • 21
  • 79
  • 125
0

The public interests are not necessarily served by doing as you propose. The only interest I see is those of people who espouse open source propaganda. There are, of course, extra costs to be incurred by such a proposal and such costs I don't see as really adding much value to the public.

BobbyShaftoe
  • 28,337
  • 7
  • 52
  • 74
0

By law, the government cannot copyright any work it has wholy produced. (ie Public Domain) And without a copyright, you can't enforce a software license like the GPL or even BSDL.

However, the government can obtain copyright ownership from a work produced by private entities. And, if they write new code for it, they must follow the licensing restrictions. Technically, the code they write is public domain, but it's generally useless without the copyrighted and licensed code.

This is why, for example, SELinux is GPL'd. Because they are required by the Linux kernel licensing to GPL their work.

It's getting pretty rare these days to see any open source project that is entirely self-contained. Usually they link to some other open source library.

Erik Funkenbusch
  • 92,674
  • 28
  • 195
  • 291
-2

Trust - Plain and simple. A government cannot open itself to anyone modifying it's code.

For example: A coder could knowingly introduce a buffer overflow into the linux kernal. They know it's location, the payload required and bang instant compromise. This also offers deniability, as it appears as "just another" overflow bug.

Edit -- My rebuttal to the comments: http://www.debian.org/News/2006/20060713

The debian kernal was compromised via the host being compromised. Yes, code may be reviewed, but we're still spotting new errors even after 20 years of knowing buffer overflows are a problem.

Review is not a perfect catchall.

Gavin Miller
  • 43,168
  • 21
  • 122
  • 188
  • 1
    I suppose we're to believe that patches into the main kernel tree are unchecked? – postfuturist Nov 04 '08 at 16:49
  • The rebutal doesn't really work. The same can be said for closed source software. – BobbyShaftoe Jan 01 '09 at 07:05
  • @Bobby - I agree totally, someone could infect/pollute a closed source software base; however the exposure of the code base is limited to those with source access, open source has a broader audience as implied by it's "open-ness". – Gavin Miller Jan 05 '09 at 17:47
  • open source offers more chance for review and a sliding scale of how and who has access to it. You can't pick one project and apply the rules that project uses to all open source. – Arthur Thomas Jan 05 '09 at 18:33
  • @Arthur - Not sure what you mean by your last sentence. As to who has access: open source doesn't restrict who has access, instead it restricts to what code gets published, subtle difference. – Gavin Miller Jan 05 '09 at 19:19
  • 2
    Subtle but important - not just any joe blow can commit their changes directly into the trunk. If the government keeps a tight reign on who has commit access then it's the government (broadly speaking) that decides what goes in. – Erik Forbes Feb 05 '09 at 20:12