Affirmative Action for Open Source Software

I mentioned to a friend my wish that, as long as the government is spending money in hopes of boosting the economy, it would spend it on something that has proven to yield very high returns, i.e., open-source software. He asked “How would you decide which projects to fund? Most of the funding for software so far has come from the Department of Defense.”

My proposal would be copied from the way that universities implement their race-based hiring programs for faculty. Each department in a university is given a fixed number of slots that they can fill by hiring whomever they believe is best qualified to be an assistant professor. If, however, a department should hire someone whose skin is dark enough to qualify them as a desirable minority, that hire does not count towards their allocation. In other words, a department with one slot that has found a white or Asian candidate can still hire that person and a favored minority in addition. This way the university enlists its entire staff in helping with race-based hiring, rather than having one administrator at the top whose job is to find potential professors with the appropriate skin tone.

How can we apply this to open-source software and government agencies? It might seem as though each government agency were spending as much money as humanly possible at all times. Yet in fact each agency has an annual budget and is constrained by that budget. If we were to set aside a few billion dollars we could say “Any agency that wants enhancements to existing open-source projects or wants to fund new open-source software can do so with all of the money coming from the central open-source software fund.” That way agencies would be encouraged to spend money on open source because any funds spent wouldn’t come out of their usual budget.

How would it work? Suppose that a 30-person group within the National Park Service wanted a Web-based tool for collaboration amongst themselves and a volunteer organization. They find that a Drupal module does 85 percent of what they want. They would hire the developer of that module to add the features. Those features could be rolled into the public distribution or made available separately to other programmers worldwide. The money would come from the open-source software fund, no questions asked, rather than the Parks Service budget.

16 thoughts on “Affirmative Action for Open Source Software

  1. I am a Free and Open Source Software supporter, but I don’t support the idea of affirmative action for F/OSS. While it is clear that some F/OSS projects provide real economic and social advantages, we should not be trying to artificially accelerating the adoption of F/OSS. It is possible that the best possible outcome for society is a mixture of F/OSS and proprietary software. The Free Software revolution has been underway for 25 years now, I’m okay with it taking another 25 years. Even with the dirty tricks of some proprietary software vendors, I’m confident that F/OSS will win. But only once it deserves to win.

  2. Great idea, really. Often I have thought about how (more) awesome the GIMP and Inkscape would be if every graphic design studio in the world hired one developer for one month to implement a feature, benefiting both themselves and everyone else, and eventually contributing to weaning themselves off of a dependence on paying Adobe. But of course no studio would do such a thing, because a real investment in development of features that would actually be worth anything costs a lot of money, and most design studios are quite small outfits. But if there was a fund like this, it might enable this kind of action, imagine!

  3. Stuart: You don’t support “artificially accelerating” open source software, even when the government is spending trillions of dollars accelerating everything else? Right now we are putting billions of taxpayer dollars behind companies with a track record of delivering negative returns on investment (the Detroit automakers being a notable example). Why not put some dollars behind open-source software, which has achieved a fantastic positive ROI? If we put all of our money into Rust Belt industries and roads and bridges built with techniques familiar to the Romans, that will effectively decelerate all the rest of our economy.

  4. I think this is a fantastic idea. Don’t forget that government can also pay for work that is lacking for volunteers in open source projects — user interface design, documentation/tutorials, security work, performance, etc.

    Don’t forget that the government in effect already helps open source through CERT. http://www.cert.org/ This seems to be a reasonable success, and very good bang for the buck as philg points out, so that’s a good reason to expand it.

    It may also help a few of the millions that have lost their jobs lately…

  5. Uhm… Does your argument really boils down to “because the government is wasting money, it should spend even more money”? That hardly seems logical to me. If you’re opposed to wasting tax dollars on Detroit, why not write an essay about that instead of suggesting yet another way our government can expand the deficit?

    F/OSS will continue to grow to meet real demand. If it is the best choice to meet the needs of the government, sure I support spending tax payer dollars. However, I don’t support distorting the equation. I don’t want my money spent ideologically, I want it spent on the best value. We don’t need artificial incentive to drive the adoption of F/OSS, we just need time.

  6. Stuart: I’m not opposed to government spending on infrastructure that has the potential to create growth in many areas of American society. I don’t regret the money that the Defense Department and NSF spent on computer networking, for example. The taxpayers have gotten a great return on their investment. I also wouldn’t be upset to see money spent on a wireless Internet that covers our road network at the minimum. My problem with giving Wall Street money so that they can continue to pay executive bonuses on the same scale or giving Detroit money so that they can stave off Chapter 11 for another few months is that I can’t see how it helps the broader economy, notably how would it help new businesses get off the ground?

  7. The initial idea sounds interesting: there’s at least a connection between the needs of spenders and the spending practise, in general. However, you missed to answer the important questions.

    (1) How much money should be reserved for this fund in total?
    (2) How is the money allocated among potential spenders?

    Concerning (1): While you say that Open Source has proven to yield high returns, where’s your evidence? It’s hardly a law; quite many people have burned time and money to make open source components work before they figured out that a proprietary solution would have been more cost-effective (or finally found an open source solution that worked).

    Also, it may yield high returns from a individual point of view (users, companies) because of lower license costs. But does it really yield high returns from a social point of view? Volunteers make no money, they don’t pay taxes, they often can’t build a successful business on open source — that is, whenever there’s no complementary good they could sell. Increasing supply of open source may also reduce the number of existing software companies, jobs, and taxes — all positive assets for a society.

    Concerning (2): I’m not familiar to your university’s policies. So I’d like to ask: What happens if you have, say, $1.000.000 in total but spenders request $1.400.000 during the year? There’s still have to be a rule concerning the allocation; for example: “First comes, first serve”. What prevents the first spender to request all the money for a “useless” project — say, to develop another desktop environment that is “more like Windows”?

    The later also indicates another problem: There’s no evidence that spending will be useful from a social point of view. Open Source is full of examples of re-inventations of wheels. That’s not much of a problem as long as individual burn their own time and money to do so. But governments spend public money, so they should not spend it on recreating existing wheels. Your suggestion does not seem to adress this problem.

  8. Suggestion: pay developers of useful open-source software _after_ they have developed it, not _before_. Get taxpayers to vote for which software deserves payment.

    Published digital content (including software) is a “public good”, which means that it makes sense to fund it via taxes. Even though we have a complex and freedom-threatening worldwide intellectual property legal system which tries to turn it into a private good, technological developments are making that legal system less effective every day, and in the end all published content will be a public good no matter what.

    For more details about what I call Voted Compensation (including how to solve the “I vote to pay myself” problem), see http://www.1729.com/ip/PublicGood.html .

  9. Philip Dorrell: My proposal is not that anyone building open-source software get free money from the government. The people writing the software would have to solve a government agency’s problem before they could get paid, just like any other government contractor (though I guess we don’t apply that rule to military contractors!). Government is a big consumer of software and, looking across all branches of government, requires almost all of the same applications as the private sector. Parts of the government manufacture and repair stuff. Parts of the government sell stuff at retail. People within the government work together, oftentimes with collaborators separated in space and time.

  10. Philip: I do regret the money the government spent on computer networking, not because it was a terrible investment in and of itself [1], but because the system that spent that money also pays farmers not to grow crops and wastes enormous amounts of wealth destroying countries only to spend even more trying (incompetently) to put them back together again.

    You can’t separate a single investment from the system that makes it. If my system for investing, for example, was to invest in only the most hyped companies, I of course would not regret my investments in Lotus, Oracle, and Google. But on the other hand, Webvan, Mamma.com, Boo.com, Enron, Pets.com, Inktomi, and even Cisco and Yahoo! at the height of the boom would not have worked out so well. Should I celebrate my winners, or should I recognize that even a crappy system will get a few hits if it makes enough investments?

    And that’s what we have here, a systemic problem [2]. Our government is a system that uses force to take wealth from the best producers and managers and then either redistributes that wealth poorly (to GM, for example, or to corrupt foreign government officials), or simply destroys that wealth outright (bombs).

    Therefore, I regret every dollar the government spends. No matter how well the government manages to spend the money, it can never hope to do better than private entrepreneurship and private charity. The harm is already done when the government takes, prints, or borrows the money. If anything, managing to spend the money ‘better’ might embolden politicians to try to extract more wealth and increase the scope of government power over our lives.

    Also, government control always follows from accepting government money, so I sympathize with the notion that little good could come from government money going to open source software. This fact is, I believe, in large part why our country’s esteemed private universities look so much like the public ones — they’re both on the dole. Here’s an even bleaker thought experiment to highlight this point: Taking ownership of Google, Cisco, and Berkshire Hathaway would clearly be a ‘better’ investment of government money than failed corporations like GM, Chrysler, and Fannie Mae, but could you conceive of any good that would come from nationalizing these firms?

    [1] It wasn’t, but I think we could still agree that companies on the free market could have invested that money more efficiently had the government not appropriated the funds out of the market in the first place and taken its cut for bureaucratic overhead.

    [2] Your point that you would support government spending on certain types of infrastructure is a case of the Dictatorship Fallacy. That is, if the government did exactly and only what you want it to do, then it would be good and useful [3]. The problem is that in our current system, the only way for you to actually get the spending you want (if at all) is for other people who have different values and economic interests than yours to also get the spending they want (farm subsidies, bombing Arabs, Wall Street bailouts, etc). The real choice is deciding who should get to allocate wealth, government or the individuals who create it. Once the decision has been made to let government allocate wealth, the decision of where to spend that wealth will inevitably be decided by the political power of special interests.

    [3] Given the enormous government encroachments on privacy in recent years, I’m not clear on why anyone would want the government directly operating a massive portion of the mobile internet.

  11. But F/OSS has no boundary (international) or ownership. With your model, the US tax payers will end up forking the bill while other countries ripping the benefit.

  12. The affirmative action parallel is a bit of a red herring in the title. What you really seem tobe after are government software projects after the style of the WPA. That may seem socially useful on its face, but it is not as harmless as it seems. First it harms all closed source software authors. Are we better off if a federally sponsored GIMP puts Adobe out of business? Certainly Adobe is worse off, but does the good we receive outweigh the federal hit on Adobe? Second you’ll simply be further enriching those giant consulting houses who already do this for the government. They’ll nominally open source their work, but potentially overspecify it in a way which makes it difficult for anyone but their clients to continue to use it.

  13. Travis: In http://philip.greenspun.com/politics/economic-recovery I argue for a smaller government, but realistically it doesn’t seem to be in the cards. If we’re determined to ratchet up government spending, I’d like to see it spent in a way that yields dividends for the future.

    George: We can’t lock out foreigners from our open-source software? I don’t see how that makes us worse off. Remember that the U.S. government will be paying programmers to solve its problems. If the problems get solved, the U.S. taxpayer has already gotten value for the dollar.

    Jim: Would we be worse off if the GIMP puts Photoshop in the shade? If so, we could greatly improve the economy by outlawing free and open source software. Nobody would be able to embed Linux; they’d have to license Windows from Microsoft or find some other commercial closed-source OS.

  14. The government would find a way to mismanage it. They would define the wrong requirements, hire clueless contractors with no cultural background in or awareness of open source, stand by as passive, uninvolved clients, and then have them throw the result over the fence so it didn’t come out of their budget.

    Your Drupal adopt+improve example would happen 1% of the time. The 99% case would be a mishmash of undocumented, custom ASP.NET. The code would be replete with embedded SQL queries, XSS vulnerabilities, IE-specific code, and other 2002-era problems. The application would either miss the use case by so much that it was completely useless (for the intended purpose as well as any other), or be so poorly structured that changes are practically impossible, or both.

    After launch, it would be supported by Alex and Sandra, two sysadmins paid by the contractor. They would work full-time at the the government agency under a 7-figure, 5-year operational maintenance contract. It would be “released” as an obscure HTTP URL to a ZIP file, without any Web site (“it’s public”).

    As an open source project, it would have zero reuse potential and zero value.

    If you’ve seen government software created, you know I’m not kidding. Inventing funding constraints would cause the system to be more inventively gamed. There’s a cultural mismatch much deeper than lack of funds (and they would be even less cautious with slush funds than with their own).

    That said, I do think you could pick 10 OSS luminaries and give the collective $10MM. They would allocate it in very small chunks to cover part or all of an existing OSS developer’s salary (to devote themselves to the project). Such a system would build on existing developer reputations, ability to execute, OSS distribution, and demonstrated need for the project. The results would be available to that clued Drupal contractor and everyone else. You could call it “Google Summer of Code.”

  15. Here’s the relevant bit:

    “6) Funding for the Development of Open Software

    In the same vein, the government can spend $2 billion a year to develop open source software. This money can be used to further develop and simplify open source operating systems such as Linux, as well other forms of free software. The payoffs from this spending would be enormous. Imagine that every computer buyer in the world would be able to get a computer for which the operating system was free, as was almost all the software that they would ever use.

    This would surely save consumers an average of at least $200 per computer. With sales at close to 20 million a year, the savings in the United States alone could easily exceed the cost of supporting software development. Adding in the benefits (and presumably some contributions) from the rest of the world, we will be way ahead by going the route of publicly funded open software open software. The cost would be $2 billion a year. “

Comments are closed.