热度 24
2015-6-29 17:37
2221 次阅读|
0 个评论
So what's the problem with “free” as in “free beer”? I'm a sucker for “buy one, get one free” offers. There are a variety of costs, sometimes hidden, in free (as in beer) software. Free (as in beer) software makes it difficult to recover the cost of developing software. (The Free Software Foundation (FSF) has a confusing article about how to sell free software on their website, which skirts the question of how to be paid for developing software, but does include a pitch for donating money to the FSF.) There are ways to make money developing software, but the most effective of these is to either sell support services (like RedHat), build the software into a product (like Cisco), or to use the software internally to provide a service (like Google). If you happen to have a great idea for a program, something new and novel, FOSS makes it difficult to create a company around your idea. Venture capitalists will not fund development that can be easily undercut simply by copying sources off a website. One can count the major software companies on a few fingers: Microsoft, Oracle, Adobe, Intuit, and a few more, all founded before the rise of FOSS. Of course, if you happen to develop a proprietary program that runs on a smart phone, no matter how pointless it may seem, the VCs come running. People confuse cost with value, and this extends to the areas of accounting and taxes. In 2008, the Linux Foundation estimated the cost to develop the Linux kernel at $1.4B, with the cost of a complete distribution about $10.8B. But for the users, the cost is zero. The value of the Open Source software that they use on a company's balance sheet is the cost of acquisition, namely zero. Where development of a new proprietary software product may qualify for an RD tax credit, developers of Open Source software that will not be sold or leased may have a more difficult time justifying the credit. Few people invest time, money, or energy on things that have little or no cost. You're likely to skimp on maintenance on the $500 clunker you bought to haul junk while sparing no expense on the new SUV you bought for $50K. There is also the Tragedy of the Commons, where a shared resource used by all tends to be over-used to the detriment of all. We don't have to worry about overgrazing the Town Commons, but there is a parallel with Open Source Software, where programs used by many are often supported by very few. The Heartbleed security flaw brought to public attention that a widely used and critical software library, OpenSSL, was maintained by one full-time employee and ten volunteers on a shoe-string budget. Despite the fact that this library was used by many major companies and was an integral part of their products and services, it was Open Source. Where similar software from a proprietary software company would have generated a revenue stream which would fund support and development, the OpenSSL Project depended on donations. There are a number of similar Open Source Software projects, such as the Network Time Protocol (NTP), which are critical to the Internet, but which have minimal support. (The Linux Foundation, in response to the lack of support for OpenSSL and other projects, created the Core Infrastructure Initiative, CII, funded by a number of major tech companies. CII will fund two full-time core OpenSSL developers) We think of donations as charity, not as paying for development and maintenance of critical software packages. Indeed, a corporation might have to go through its “corporate giving” department to contribute to one of the FOSS projects, where the application for a donation might be weighed against donations to the local theater company or food bank. Voluntary donations have allowed a number of projects to stave off starvation, but that doesn't result in them thriving. Many companies that use free software almost never think about the cost of development, the value of the software to their products and internal development, or the risk that they are exposed to if the software is not maintained. Finally, the last hidden cost I see in Free and Open Source Software is minimizing the value of time, energy, and creativity expended by the people who develop software. Few people would say that everyone who writes a book, composes a song, or paints a picture should give their creative work away for free. But many in the FOSS community have a different standard for software developers. People and companies who sell software rather than give it away are characterized as if they are stealing something that belongs to everyone — an opinion widely expressed by the Free Software Foundation and Software Freedom Conservancy. Science fiction writer Robert Heinlein popularized the saying “There ain't no such thing as a free lunch” in his 1966 novel, The Moon is a Harsh Mistress . While Free and Open Source Software has many positive aspects, including high quality, transparency, and creativity, let's not forget that there are hidden costs. These include a far smaller software development economy (except for games) compared with our vibrant hardware development economy, higher risks from insufficiently maintained software, and undervaluing software development talent (again, except in the area of games). These costs may not be easy to quantify, but they should not be forgotten. Michael Eager is principal consultant at Eager Consulting in Palo Alto, Calif. He has over four decades experience developing compilers, debuggers, and simulators for a wide range of processor architectures used in embedded systems. His current and former clients include major semiconductor companies and systems developers. Michael has been a member of the ISO C++ Standard Committee and ABI Committees for several processor architectures. He is chair of the Debugging Standards Committee for DWARF, a widely used debug data format. He is active in the open-source and Linux communities.