The year of being open minded turned out to be the perfect year to switch to open source software. In this article, I’ll discuss why I decided to make the switch, how I am doing it, and why lawyers should consider open source software.
By Erik J. Heels
First published 11/1/2003; Law Practice Management magazine; American Bar Association
Every other year, I make a new year’s resolution to be open minded. The standard joke in my family is that by June, it’s hard to tell which year it is. I admit to having strong opinions about many topics, but this year I challenged my own assumptions about computers, software, and data. The year of being open minded turned out to be the perfect year to switch to open source software. In this article, I’ll discuss why I decided to make the switch, how I am doing it, and why lawyers should consider open source software.
What Is Open Source Software?
To understand what open source software is, it is helpful to understand some computer terminology. “Source code” refers to computer programs written by people in programing languages such as C, C++, Pascal, and Java. When programmers wish to test their programs, they process them with a special-purpose application called a compiler, which translates the human-readable text files into computer-readable binary files called “object code.” In short, the applications that run on your computer are object code. For example, in Windows, the file “iexplore.exe” is the object code file for Internet Explorer, but if you open that file with a text editor, you will not see anything remotely resembling the source code. You would have to decompile that file to produce some form of source code (and even then you would not have the benefit of the comments inside the source code that explain its operation), and most software End-User Licensing Agreements (EULA) specifically prohibit decompiling or any other so-called reverse-engineering. Languages such as Perl and JavaScript are interpreted languages, so the source code is the object code, but open source relates more to legal rights than it does to whether software is compiled or interpreted. So if a programmer wanted to decompile Internet Explorer, modify it, and distribute the modified version, he/she would be prohibited from doing so under the terms of Microsoft’s EULA. “Proprietary software,” then, is software such as Internet Explorer that is distributed as object code and whose EULA prohibits reverse engineering.
“Open source” software, on the other hand, is software that is distributed with source code and whose EULA typically allows users to modify and distribute the software. So if a programmer wanted to improve an open source program, he or she would be allowed to do so under the terms of a typical open source EULA.
Notice that I have said nothing about price. Users can download Internet Explorer for free from Microsoft’s website. And even though many open source programs are distributed at no cost, open source programs can be sold by their developers or by those who make improvements to them. The key difference between proprietary software and open source software is the rights granted to end-users by the creators of the software, not the price charged for the software. Complicating matters is that fact that there are many flavors of open source software licenses (http://www.opensource.org/licenses/).
Arguably the most popular open source software license is the GNU General Public License (GPL). The GPL allows users to run, study, redistribute, and improve software licensed under its terms (http://www.gnu.org/licenses/). The catch of the GPL is that if you modify GPL-ed software, then you have agreed to license the modified software under terms no less restrictive than the GPL. In other words, you have to grant others the right to run, study, redistribute, and improve your improvements. In this way, GPL-ed software begets GPL-ed software. For example, Linux, the UNIX-like operating system for PCs, is developed (and therefore distributed) under the GPL.
Other open source software licenses, such as the original Berkeley Software Distribution (BSD) license, do not include restrictions on how modifications must be licensed. As a result, many flavors of UNIX have been developed based on the original BSD license, including NetBSD (http://www.netbsd.org/), OpenBSD (http://www.openbsd.org/), and FreeBSD (http://www.freebsd.org/). For example, Apple’s OS X operating system is based primarily on FreeBSD (http://developer.apple.com/…).
Why Use Open Source Software?
One reason to use (more) open source software is that you are probably already using (some of) it. You can use Netcraft’s Web Server Query Form (http://uptime.netcraft.com/up/graph/) to figure out what operating system and web server software your website is using. For example, my own website uses lots of open source software (http://www.lawlawlaw/powered-by-everything.html) including the FreeBSD operating system and the Apache HTTP (web) server. In fact, according to Netcraft (http://news.netcraft.com/… ), Apache has about 65% of the web server market (and rising) and Microsoft has about 24% of the web server market (and falling).
An Alternative To Proprietary Software
Another reason to use open source software is that it is becoming a viable option for client (desktop and laptop) computers. Three things occurred this year that prompted me to seek alternatives to proprietary software on my client computers.
First, Dell sold me limited rights Microsoft software. Late last year, I purchased a Dell Inspiron 8200. I purchased a pre-installed copy of WindowsXP and a copy of OfficeXP. To my dismay, OfficeXP also came pre-installed. Nothing on Dell’s website or my order indicated that OfficeXP was pre-installed. The bootwrap license that appeared when I turned my computer on said to “strike any key” to accept the license agreement or call Dell if I disagreed. I called Dell to complain, and they told me (after four hours on hold) to “just accept the license.” It seems there was no alternative. Bundling hardware with software is like bundling furniture with a house. Real estate agent to home buyer: “Here’s your 70s-era house with your 70s-era furniture. We know, the shag rugs are hideous, but you don’t have to use this furniture. You can put it in storage or burn it. But you can’t give it away, and if you sell the furniture, you have to sell the house.” So I did have another choice. I could have sent the computer back to Dell for a refund. Great choice.
Microsoft is not the only software manufacturer with EULAs that give limited rights to users. Earlier this year, Intuit angered its own customers by adding an activation “feature” to its TurboTax software (http://www.pcworld.com/…). And FileMaker quietly modified its EULA to prevent ALL transfers of copies of its software without getting the written consent of the company (http://www.filemaker.com/legal/licensing_faq_us.html ).
Second, after standardizing on MS Office for years, I discovered that MS Word data created in 1997 and earlier was no longer readable by OfficeXP – even with various translators in stalled. So anyone who thinks that they have “standardized” on MS Office is in for a nasty surprise. Eventually. I value my data, even data that is only six years old, and I’d like to be able to access it without having to open those files with an older version of MS Word.
Third, in March 2003, a “routine” Windows XP auto-update corrupted my registry so that QuickBooks (which I use for billing) no longer recognizes that Internet Explorer (IE) is installed. The failure mode is that QuickBooks, which uses IE for its GUI, will not launch. By searching on the Internet, I found that there was a work-around that enables QuickBooks to launch without the GUI, but that problem remains unsolved to this day.
A Road Map To Open Source
So after being frustrated by proprietary software with restrictive EULAs, lack of compatibility with older data, and irreparable problems, I decided to convert to open source software. My three-step plan involves converting my data, applications, and operating systems to open source:
- Stop using MS Office, start using OpenOffice.org (http://www.openoffice.org/), and convert existing MS Office data formats (e.g. “.doc,” “.xls,” and “.ppt”) into something more portable (e.g. “.txt,” “.csv”, and XML).
- Determine replacements for office applications (e.g. QuickBooks, Eudora, FileMaker).
- Keep my PCs and install Linux or sell the PCs and switch (back to) Macintosh OS X.
Step 1 – Converting from MS Office to OpenOffice.org
I started by replacing MS Office with OpenOffice.org. OpenOffice.org is the open source version of Sun’s StarOffice office suite (just like Mozilla is the open source version of Netscape). Like MS Office, OpenOffice.org includes word processing, spreadsheet, and presentation applications. The current version is 1.1, but don’t let the version number fool you. OpenOffice.org is a nearly 20-year old software project and the product is VERY mature (http://www.openoffice.org/about.html#history). OpenOffice can read and write MS Office file formats (e.g. “.doc,” “.xls,” and “.ppt”), but I suggest using the native file formats for storing your data. OpenOffice writes in XML format, so your data will ALWAYS be available, even after Microsoft goes out of business.
I have been using OpenOffice.org since January and am now totally comfortable with it. I used the Document Converter feature (select Autopilot from the File menu) to automatically convert MS Office files to OpenOffice format. I then DELETED the MS Office files to make sure that I would not get trapped into switching back. If clients ask me to send them word processing documents, I offer to send PDF files or native OpenOffice.org files. Several of my clients have since converted to OpenOffice.org.
By the way, OpenOffice is free. If you want to pay for support, you can purchase it from Sun (http://www.staroffice.com/) for about $35/year.
Step 2 – Open Source Applications
Other proprietary software can be replaced with viable open source alternatives including applications for billing, email, web browsing, and multimedia.
I rely pretty heavily on QuickBooks for accounting and billing. Open source alternatives to QuickBooks include using accounting software such as GNU Cash (http://www.gnucash.org/), SQL-Ledger (http://sql-ledger.com/), or NOLA (http://nola.noguska.com/).
I don’t use Outlook, but if I did, I’d consider replacing it with Ximian Evolution (http://www.ximian.com/products/evolution/), which integrates e-mail, calendaring, meeting scheduling, contact management, and task lists in one application.
The Open Source Directory (http://www.osdir.com/), the Living Without Microsoft website (http://www.livingwithoutmicrosoft.org/), and the FSF/UNESCO Free Software Directory (http://www.gnu.org/directory/) are good sources of information about open source applications available for numerous operating systems.
Step 3 – Linux or Mac OS X
The final step will be replacing my operating system software. And I have not yet decided whether I will choose Linux or Apple’s Mac OS X. If I keep my PCs, I can preserve my “investment” in existing hardware. If I sell my existing hardware, I could recover some of the money that I paid to Microsoft (for WindowsXP and OfficeXP). If I choose Mac OS X, some will argue that Microsoft still wins, since Microsoft owns Apple stock (http://www.apple.com/…).
Whatever I choose, it will take time to tinker with my new operating system (whether Linux or Mac OS X) to get it to work like I want it to. But it took the better part of a week to get OfficeXP to do what I wanted it to do (at least for a while).
Summary – The Two-Week Challenge
I believe that open source software and proprietary software can coexist, but I also believe that proprietary software manufactures need to think differently about how to make money from their software. Many open source software manufacturers give away their products and make money by changing for support, a model that proprietary software manufacturers should adopt. If I could have paid Microsoft or Intuit to fix my WindowsXP/QuickBooks issue, I would have. Indeed, I arguably already paid for that support, support that either didn’t exist or didn’t fix my problem. The good news is that open source software, which is already very popular in the server market, is now a viable option for the client market as well, whether your preferred operating system is Windows, Linux, Mac OS X, or something else. And support for open source software is readily available on the Internet, usually for free. Try OpenOffice.org for two weeks, then decide. It will free your data from proprietary formats and then free you to choose any operating system you like. Where do you want to go today? It is, and should be, your choice.