Free Software

So, what is the price of this stuff?

Actually, the price ranges anywhere from no-cost to perhaps as much money as the program author(s) asks for. How can this be, you ask, astutely. Glad you asked!

Free Software is not only a concept, but a contract between the writers of computer software and the users of the software. Free Software is about freedom--the freedom to inspect, understand, modify, and update the software you rely on to do your work. This idea is so foreign and contrary to the normal licensing "agreements" foisted on a majority of computer users today that most users initially think there must be something grossly inferior with software that is freely available via Internet download. Nothing could be further from the truth.

Consider the Linux Operating System (of which I write a bit about elsewhere). This project was initiated by a Finnish computer science major back in 1991 named Linus Torvalds. Linus got the ball rolling by releasing his work on a Usenet newsgroup in the fall of '91 and received a somewhat unexpected but enthusiastic welcome for his new operating system kernel. Interest in the new Linux kernel grew steadily from a technical curiosity to a very capable operating system when combined with software from the GNU project and other projects a few years later. Linux has grown from a project to explore the capabilities of the Intel 80386 microprocessor to now having been ported to many architectures from mainframes to a wristwatch! Throughout its life cycle, Linus has owned the copyright (as well as the trademark to the Linux name) to the Linux source code he wrote (and other authors theirs) and has licensed it under the GNU Public License. I recommend you jump over and read through this document now.

Okay, now that you're back let's continue. It may seem that the GPL is very restrictive for a document that purports to promote software freedom, yet its restrictions exist to prevent the program the GPL covers and any subsequent works from becoming a proprietary work inaccessible to anyone but the controlling entity. The GPL does allow the charging of a fee for distribution, but copying and redistributing modified GPL software after that point is not prevented. Perhaps the most important and restrictive part of the GPL seems like an afterthought. This last paragraph prevents the incorporation of a GPL'ed program into a proprietary program. The GPL also doesn't compel you to redistribute any changes you may make to a program covered by it, however, should you decide to pass the modified program to someone else, then you must make those source code changes available to them. You cannot prevent them from making those changes public, however.


Other Licenses

There are many ways of licensing some work in the modern software arena. Free Software need not be licensed under the GPL and there are many works available that aren't. So called "artistic licenses" may give the author a range of latitude, yet some freely available programs aren't necessarily Free Software. Here are my definitions of some software types. Keep in mind that I am not a lawyer, so don't depend on these for legal defense. YOU HAVE BEEN WARNED! ;-)

BSD

Software licensed under a BSD style license still has its copyright held by the original author(s). However, the BSD license makes no demands that subsequent versions of the software be freely available. In fact it could (and has) happened that free software under BSD license is modified and incorporated into proprietary software. Some believe this to be the ultimate in freedom while others disagree. BSD style licenses often carry a requirement that a certain copyright notice be included in all subsequent versions of a source file.

Public Domain

Public Domain software has been around for quite sometime. A key difference between GPL and public domain is that public domain software has no limitation against its later use in or as a part of proprietary software. Source code may or may not be available and modification and subsequent redistribution of such software may not be allowed. Cost is usually free. Copyright has been surrendered by the author to the public domain.

Restricted Use Software

Not very common, but in existence, restricted use software is often distributed freely and at no cost. Such software is characterized by its license preventing commercial use or use by others than a targeted group of users. Source code is rarely available. Copyright retained by the author. An example of where this software is popular is most freely available software written for amateur radio use under DOS and Windows.

Shareware

Shareware is the most popular in the Windows world. Shareware is also known as "try it before you buy it" software. This mode allows small software companies and individuals to develop and sell their software in a low cost way. Frequently these programs will have some desirable or critical feature disabled or have a time limit on the run time of a program or utilize a counter to limit the number of times the program is run. Payment of the licensing fee often includes a serial number to "unlock" the program and perhaps printed manuals and more program functionality. Other licensing arrangements provide a fully functional replacement program upon payment.

A minor subculture has developed around the desire to not pay for such programs and providing others with the keys (registration numbers) to unlocking shareware programs. This is, of course, software piracy and individuals could most likely be prosecuted for piracy should the program's author desire to do so. Copyright is retained by the author(s) and source code is typically not available.

Proprietary Software

Propriety Software is the type most users are familiar with. Much of this type of software abounds at computer retailers and is characterized by clever marketing, fancy store displays, extremely limited copying permissions (i.e. for individual backups only), and a license that allows installation and use on a single computer. Source code is definitely not available and the license often precludes any changing or reverse compiling (or disassembling) of the program. Changes cannot be made to the program by the user should the program lack support for hardware or not have a special feature the user deems necessary. Such software is often sold on the premise of support, but such support is often only free for the first few calls or a set number of days. In short, proprietary software keeps users in a box to ensure future revenue for the company for forced upgrades even though most "upgrades" implement more features than the user wants or needs or even necessitate wholesale changes in the users operating environment (read Windows) and introduce more bugs while not adding support or features the customer really needs. Copyright retained by the author(s).

Open Source Licenses

Within the past two years a proliferation of "Open Source" licenses have appeared further muddying the Free Software waters. Netscape really started this trend with their Netscape Public License, NPL, upon release of the Navigator source code in March of 1998. The NPL later morphed into the Mozilla Public License, MPL, with fewer restrictions, but laid the groundwork for imitators such as the Qt Public License, QPL. These licenses are characterized as being authored by companies releasing their code to the Free Software community but wishing to retain some ownership over the direction of the program in question. Such licenses are often found to contain clauses adding certain restrictions on modification or distribution of the code thus rendering the code incompatible with code licensed under the GPL. How such licenses will fare in the future is still in question. Some believe the less free nature of these licenses will prevent the community of sharing from developing around these projects. However, the number of these licenses seems to grow by the week as companies dip their toes in the Free Software waters and learn to create business plans in the new paradigm. Hopefully, these efforts will consolidate into something that is compatible with the GPL to allow as much usage of code as possible.


Which is the best?

This is a tough question because the answer depends on which software type best serves your computing needs. Exotic hardware is often first supported by proprietary software due to the current practice of new hardware specifications being released under so-called Non-Disclosure Agreements, NDAs, but as such hardware evolves through its life cycle, specifications are often released enabling Free Software to be written to support it.

It is probably a popular conception that Free Software isn't suitable for the office environment. The truth is quite the opposite. Free Software is a viable office solution because it can be customized to match the needs of the office without the "feature bloat" of proprietary software. Software upgrades can be done at any time the organization needs it not when some software company's marketing department deems it "necessary." Free Software may or not have commercial support behind it, but support, in the case of Linux, is often fast and accurate via the Internet. Such a support mechanism is a radical departure from dialing phone numbers that seem continuously busy and once a person gets through the "support" isn't anything but a horror story.

Given the "bazaar" style of development that many Free Software projects now utilize, security is often better with Free Software. These projects enjoy the concept that "with many eyeballs all bugs are shallow" and security holes are fixed quickly when discovered and patches (program updates) are made available quickly. This method of development allows a continuous improvement in system security, especially with regard to critical servers and other sensitive systems.


Open Source Software

Several years ago a group of prominent Free Software authors suggested and began a campaign to refer to Free Software as Open Source Software. The idea behind this campaign is that the term Open Source Software is easier to sell to information professionals in business. In English the word free has two popular meanings, without cost and without restriction. If you've read this far you've probably concluded (rightly) that free as it refers to Free Software has the second meaning. Unfortunately, American society most often considers the first meaning of no-cost when it hears the word free and equates this to mean shoddy or incomplete. After all, who in their right mind would spend the time required to code any program and then not keep it proprietary and charge a sum of money for it?

To learn more, go to the Open Source Software home page.


Summary

These are my thoughts and I will probably modify and expand them as time goes on. Obviously, I have become a convert in the Free Software revolution and will probably preach its virtues for a long time to come. I also prefer to use the term Free Software rather than Open Source Software. Already the Open Source term has been contrived to mean any software that has its source code available for inspection (refer to discussions regarding the Sun Community Software License for a good example). In some cases changes may not be made, or if changes are allowed they can only be submitted to the original author(s). These restrictions disqualify such software from being Free Software.

I consider the freedom to modify or have software modified for me to be very important as a computer user. I want to be sure that some entity hasn't included some "back door" into a program to gain access to my private data (not that it would do them much good). There is nothing to stop such a mechanism from being written into a program with freely available source code, but it is more likely that if such a "feature" were incorporated someone would discover it and "fix" the problem. In this way Free Software can enhance privacy and security.


Take me back to the Index!

The Linux Webring:
[ Prev | Next | Random | List | Home | Stats ]

Original content Copyright © 1997-2024 Nate Bargmann NØNB n0nb@n0nb.us
any other content copyright by respective author(s).

This page last modified
February 12, 2005
Valid XHTML 1.0! Valid CSS! Built with WSMake!