« The Left and Israel - Not Anti-Semitism | Main | Environmentalism - Religion for Progressives »
January 05, 2003
Communism and Software - The Free Software Movement
Utopian communism has entered the Software sphere. The Free Software movement seeks to make all software free of cost and open source - which would almost eliminate capital investment in software and force reliance on either the government or volunteers to produce this software. A move is currently underway to force the government to put all of its software under the GPL (see below) license, which is a utopian tactic that will have decidedly non-utopian consequences (which is hardly a surprise - utopianism is a cognitive disorder - see Cognitive Disorder of Progressives for a related disorder.
Introduction to Open Source
First, an introduction. The Open Source Movement is a broad social movement among software developers to produce software where the source code (the human readable - one hopes - form of the software) is available to the users, and can be modified by future users. Source code is the human produced element of software. Today, most proprietary software is provided as "binaries" or "object code" - which is a very cryptic form of the software generated by computers from the source code.
In general, Open Source provides a way for volunteer programmers to produce software that everyone can use - without the cost of marketing or even corporate structure. In some special cases (see below), profit-oriented companies also contribute open source software.
Advantages of Open Source
Open source has many good attributes. Sophisticated users of proprietary software (a small minority) are limited by not having access to the source code. Access provides the ability to diagnose and fix bugs and installation programs, and to understand the software. True Open Source also provides cross-fertilization as those who modify the software are required to contribute their changes back to the community if they distribute the software. There are number of other positive aspects that come from the Open Source community.
Disadvantages of Open Source
Open source as a general principle has only a few disadvantages.
One is that it may force revelation trade secrets that have significant value, thus inhibiting investment in using those trade secrets with such a license.
Open source results in a limited range and poor packaging of software. Open source producers only work on their interests, and the interests of programmers cover only a small part of the software arena. Furthermore, the ecology of open source overemphasizes coding to the detriment of documentation, installability, and understandability.
Open source may compromise security - although this is a matter of dispute: security experts often argue that "security through obscurity" does not add security, and open software proponents argue (often correctly) that having the source open means that security holes are more likely to be found *before* they are exploited, as more people are reading the code. However, the "security through obscurity" argument is flawed. It is really meant to counter the lazy belief that obscurity is sufficient to provide security, and to cause folks to realize that cryptographic algorithms are strongest if they have been exposed to open review. Real-world security usually combines obscurity and other techniques.
Some Good Results from Free Software and Open Source
The Free Software movement (a subset of the Open Source Movement), started by Richard Stallman, has produced some remarkably good results. The Linux operating system is the most well known example. The Apache web server is the most popular web server in the commercial web world. What could be wrong with such results?
GPL, on the other hand, is Often Bad
However, the Free Software movement strongly advocates the GPL license (one form of open source - see below), which is strongly anti-capitalist. They have an additional goal, enforced in the license: software should be free (no cost and no trade secrets or proprietary code).
GPL License
One of the most common forms of Open Source software is that produced with the GNU Public License (GPL). The GNU Public License requires anyone who distributes products based on GPL'ed software to also provide the source code, including any modifications that were made by the distributor. It is a "viral" license in that any code that is GPL'ed will always be GPL'ed, as will any derivative works. In other words, one cannot produce proprietary software under GPL or incorporating any GPL'ed code withouth providing, at no cost, the source code that was created. GPL was the invention of Richard Stallman and is the license under which Linux is released. It is the preferred license of the Free Software movement.
BSD License
Another common form of Open Source software licensing is the BSD (Berkeley) license. A BSD license allows users of the software to either redistribute the source with their modifications, or to keep the source confidential. BSD licensed software is commonly used by for-profit companies such as Microsoft and CISCO.
Note that in both cases, a company can profit from selling hardware that uses the Open Source software, but only in the BSD case can a profit be made directly by improving and then selling the software itself.
It is ironic that the BSD license provides more freedom than the Free Software movement's GNU!
Value of GPL
GPL software has a very useful place in the modern world. It is a form of computer charity to business and individuals, and it also allows a form of collaboration between software creators that leads to genuine creativity. It also provides a training ground for programmers and designers. Of course, the BSD license has these same advantages.
GPL Economy - Charity, Ego, Reputation - but NOT Capitalism
However, the effort to produce GPL software is normally unpaid. Contributors achieve their reward in terms of satisfaction of having contributed (charity), plaudits from users and other contributors (ego), and enhancement of professional reputation (indirect capital gains).
Because GPL strongly limits the rights of those who produce derivative software, it does not allow the power of capitalism to operate in a very useful manner. A company has little reason to invest in software which it is required to release for free to the entire world. Users do not have to pay for it, and competitors can get a running start against the real creator of value. Thus GPL is strongly anti-capitalist in the software world.
GPL Irony - Hardware Makers can Profit, but not Software Makers
GPL does nothing to inhibit hardware manufacturers from taking the donated efforts of the creators and making profits by basing their hardware on the usage of this free software. In fact, one of the largest hardware producers (IBM) does exactly that. IBM advertises its computers, including the largest, as platforms for (GPL'ed) Linux. Thus GPL's goals are anti-capitalist, but the only capitalists injured are those who seek to invest in software as their primary product! This is a truly silly result and is typical of applying utopian ideals to the real world.
Why Companies invest in GPL for their own Capitalistic Benefit
There are companies that invest in GPL'ed software (or software with similar licenses). Sun Microsystem supports the Apache Jakarta project. But Sun has an ulterior, closed-source motive! The Jakarta project provides the reference implementation of an important component which can only be used by Sun's proprietary, closed source Java language! Thus GPL'ed software is being used to support a very closed software environment. This was *not* a goal of GPL, but rather another non-utopian consequence of the real world.
Some companies (most notably Red Hat Software) have a business model that is based on providing services to the GPL world. Thus Red Hat Software contributes to Linux. It makes some money by selling distributions of Red Hat Linux, but anyone can get that software for free, so that profit area is limited. Only those who wish to take advantage of the added value of the documentation, support and a nice box pay for this software. Thus GPL has limited the added value that a software producer can contribute to documentation and packaging.
GPL will Never replace Proprietary Software
In contradiction to its goals, GPL software will never replace a significant portion of proprietary software. The reason is that it relies on either non-monetary rewards to its creators, or special market circumstances (such as the Sun and IBM examples) to pay creators. Thus it relies largely on the charity and vanity of programmers. This model tends to produce some very clever software, but often not very good software packages. Programmers win plaudits for clever software. They don't win plaudits for documentation. Programmers prefer to solve technical problems, rather than the more mundane issues of installation packages or business software. Programmers love to *use* open source because it is free, and programmers can figure out how to install it. Other users would prefer to pay a bit for ease of installation and better documentation.
GPL's assumption that it can replace proprietary software contains an implicit assumption that there is a limit to how many different software programs are required. It is essentially a static assumption - it denies changes in the needs for software.
It also ignores such important but mundane sofware applications, such as credit card processing, insurance processing, inventorying, embedded software (a car computer, a microwave oven controller), process control software, etc. In other words, it tends to focus on either flashy software (e.g. graphics) or infrastructural software (operating systems, web servers, etc). The reason is that this software tends to be the sort that leads to plaudits to the creators, or it supports other profit making entities that will pay for non-proprietary software (see the Sun example again).
The Danger in GPL - Government Funded or Usage of Software
The danger in GPL is the movement to force its adoption by governments. This takes two forms, both cheered by GPL advocates and many open source advocates.
By far the most dangerous movement, currently being highlighted by Microsoft, seeks to force government funded software to be released with the GPL license. This actually *restricts* the use of software compared to the current approach of public domain licensing. It means that government funded software (often the result of academic research - such as the BSD Unix operating system) can never be used in proprietary software.
If this had been the practice over the last 20 years, most of the internet software now in use would need to have been *redeveloped* by private industry, rather than adopted and improved by that industry. This is a clear case where industry (the enemy, after all, of utopian communists) would have to pay for this software, while everyone else would get it for free! It would also likely have inhibited the development of many clever products, including the Routers that form the backbone of the internet (Many Cisco routers use BSD, NOT GPL licensed software).
The other form is the effort to force governments to use *only* GPL'ed software. Some governments have already gone along with this - after all, GPL'ed software is much lower cost. Of course, in the real world governments need to use some software that simply is not available in the GPL world - such as mapping software that is only sold in proprietary form in order to protect valuable proprietary map databases. So these governments are either crippled in some ways, or (as actually happens) they have to keep making exceptions.
Furthermore, the long term effect of this approach is to reduce the capital flow from government into software development, which means that software features of primary value to government will simply not be developed.
Because ultimately governments should be responsible to their constituents, they should make the decisions on what kind of software they wish to buy based on their needs. In many cases, certain kinds of GPL'd or BSD'd or public domain software will in fact be the right case. Also, having governments pay Microsoft's monopoly rents for every desktop is not necessarily in their best interest. But like any utopian movement, the Free Software movement seeks to impose global restrictions.
And Finally, This is Endlessly Debated
This is endlessly debated on my favorite Nerd Website
Posted by ozone at January 5, 2003 11:33 AM
Trackback Pings
TrackBack URL for this entry:
http://www.tinyvital.com/cgi-bin/mt-tb.cgi/3
Listed below are links to weblogs that reference Communism and Software - The Free Software Movement:
» online poker from online poker
You may find it interesting to check some information about online poker online casino [Read More]
Tracked on January 31, 2005 11:29 PM
» online poker from online poker
Please check the pages in the field of online poker texas holdem online poker [Read More]
Tracked on February 1, 2005 05:59 AM
» online poker from online poker
In your free time, check out the pages about online poker texas holdem phentermine levitra [Read More]
Tracked on February 9, 2005 04:56 AM
» online poker from online poker
In your free time, visit some helpful info in the field of online poker texas holdem phentermine [Read More]
Tracked on February 11, 2005 10:50 PM
» virtual strip poker from virtual strip poker
Please check some information about virtual strip poker where can i play texas holdem for free [Read More]
Tracked on February 18, 2005 01:52 PM
» texas hold'em from texas hold'em
Christ wants to slay reason and subdue the arrogance of the Jews... by texas holdem [Read More]
Tracked on February 20, 2005 04:29 AM
» online casino from online casino
You can also visit the sites dedicated to online casino texas hold em online poker [Read More]
Tracked on February 21, 2005 09:16 AM
» online casino from online casino
You can also visit the sites dedicated to online casino texas hold em online poker [Read More]
Tracked on February 21, 2005 09:16 AM
» antique poker chips from antique poker chips
You are invited to visit some relevant pages about 3 card poker antique poker chips [Read More]
Tracked on March 2, 2005 02:37 PM
» texas hold em from texas hold em
You may find it interesting to check some relevant pages in the field of texas holdem online poker [Read More]
Tracked on March 11, 2005 07:30 AM
» party poker from party poker
You may find it interesting to check some information about texas hold em party poker texas hold em [Read More]
Tracked on March 16, 2005 05:56 AM
» party poker from party poker
You are invited to check some information in the field of party poker online poker texas hold em [Read More]
Tracked on March 17, 2005 11:18 PM
Comments
"Utopian communism has entered the Software sphere. The Free Software movement seeks to make all software free of cost and open source - which would almost eliminate capital investment in software and force reliance on either the government or volunteers to produce this software."
This is incorrect. The Free Software movement is about choice. It seeks to write software so that every user can choose to use it. There is nothing about eliminating proprietary software. There ARE statements about getting people to recognize and use free software, and many people switch over to it after having been ravaged by the for-profit software monopolists out there now.
However, relating free software and communism is simply wrong. Nobody wants the government to supply them software.
Posted by: tom at December 1, 2003 11:08 AM
Posted by: Steve at December 16, 2003 12:28 PM
Ummmm, ooookkkaay. You are saying that you cannot make money from GPLed software? If you actually read the GPL, you would realise that its only required to make the source availiable (for free) along with the binaries which you can charge for (eg RedHat's current model)
Another example would be Lindows, it is not freely availiable, however, the source is (or should) be availiable at no extra cost to the people who have acquired Lindows.
I find the talk of communists and Linux in the same sentence or really even in the same artictle offensive. Especially when the article does not even appear to be well researched.
Plus, there are a lot of propietry based software availiable to the Linux platform.
Posted by: emu at April 8, 2004 06:32 AM
the Free Software movement strongly advocates the GPL license (one form of open source - see below), which is strongly anti-capitalist. They have an additional goal, enforced in the license: software should be free (no cost and no trade secrets or proprietary code).
A very common mis-conception. There is nothing in the GPL that prevents charging for software.
Open Source is about knowledge, not money. People who release open source projects want to share knowledge, and learn from others. The GPL protects this exchange of knowledge.
Open Source is also about trust. If a government uses an Open Source system, the public can verify that it works, and comment on the techniques in an informed, public debate - the same cannot be said about Closed Source systems.
Posted by: ChaosD at April 8, 2004 07:33 AM
As one who uses Linux daily and have been following open source software for ages, "not researched well" is silly.
As far as communism, why offensive? Communism is against private property. So is GPL.
This doens't mean GPL is bad, although I prefer the BSD licensing for true open source, and I strongly oppose GPL licensing for government created software as public domain licensing is more free than any other form.
Posted by: John Moore (Useful Fools) at April 8, 2004 12:16 PM
Online Tramadol is one of the most prescribed treatments for pain in the world. More than 55 million people have taken cheap Tramadol to relieve their back pain, shoulder pain, and other chronic conditions. By acting on parts of the brain that trigger pain, and by reducing the size of pain signals that travel throughout the body, Tramadol provides powerful pain relief in just minutes! Buy Tramadol Now or visit this site: http://www.top-tramadol.com
Posted by: tramadol at August 11, 2004 06:35 PM
Posted by: online poker
at June 26, 2005 12:52 PM
Post a comment
Thanks for signing in, . Now you can comment. (sign out)
(If you haven't left a comment here before, you may need to be approved by the site owner before your comment will appear. Until then, it won't appear on the entry. Thanks for waiting.)