September 9, 2008 – There’s no need to remain under the thumb of mighty corporations in order to use your computer. There’s a whole alternative universe of high quality, free software out there.
By The Cerebral Aesthetic Vagabond
Any of you having read my posts on this blog are probably aware that “freedom” is my mantra. While it would be nice if someone could give us freedom on a platter without our having to extricate our posterior from its comfortable depression in the couch, real life doesn’t work that way. Finding true freedom in a world that’s controlled by powerful interests who do not want you to be free is quite difficult. For example, I just read yet another article about the U.S. financial crisis, which reinforced my belief that the so-called bailout of Fannie and Freddie will, among other things, result in increasing debt servitude for the people. The people at the top of the political and economic food chain don’t want us to be free; they want us to be blithely spinning our hamster wheels, making them richer.
So one has to seek out freedom whenever and wherever one can find it. One such area is computer software. Although people are accustomed to using a particular product, such as MW (list of abbreviations at bottom), and breathlessly await the next version, there is, in fact, a whole alternative universe of “open source” software out there, software that is often better than its counterparts in the for-profit parallel universe.
Many people will find open source software appealing simply because of its low cost: free. Fifteen to twenty years ago I used to routinely pay $500 or more (that would be like $1,000 today) for each piece of software I used! I would pay $700 for the cheapest version of Unix I could find, which came on 70 5¼" floppy disks that had to be inserted into the computer one by one! Installing the operating system was a several hour long, hands-on affair. I used to pay $500 for desktop publishing software, $500 for a C++ compiler, $500 for an office suite, plus hundreds more for lesser pieces of software, and these expenditures were more or less annual because the software was updated about once a year.
Today I get the equivalent of all that above and much more for free. But there’s more to open source software than just its low cost. I view open source software as a microcosm of the ideal model for society, one based on voluntary, cooperative networks of like-minded people, freedom of choice, egalitarian participation and the free sharing of ideas.
People may assume that “you get what you pay for,” that free software cannot be as good as software that you pay a bundle for. Nothing could be further from the truth! In many cases open source software is every bit as good as for-profit software, and often better. Consider the Firefox web browser. Many of you reading this post are doing so with Firefox running on MW. That’s open source software, which you are using because you evidently feel it’s superior to MI. Over the years I’ve found that computers that are too old and “obsolete” to run MW will run Linux very well, and in general I find that Linux “feels” faster and more robust than MW.
Open source software is often quite good because it’s the product of passionate people who take a personal interest in the project. They are motivated, not by profit, but by an appreciation for good quality software. Open source software does tend to appear somewhat spartan compared to for-profit software, but that’s because the authors of open source software are usually focused on solving a particular problem, not creating a product with marketing appeal. Personally, I much prefer software that works well to software that looks snazzy, especially when such flourishes add little to the functionality of the software. I like my software like my women: lean, robust and spirited.
Open source software also offers better security than for-profit software. Probably 90% of viruses and malware target MW and its applications because they have a bigger market share than Linux and its applications. But in addition, source code is available for almost all open source applications, which permits the open source “community” to freely examine the code and ensure that it’s free of malicious code. By comparison we still don’t know what “NSAKEY,” which lurks within MW, refers to because the source is not available for us to examine (it probably means exactly what we think it means). Sophisticated users can even download the source code and compile applications themselves if that gives them an extra feeling of security.
Open source software offers more frequent upgrades than for-profit software, mainly because no elaborate marketing effort has to be orchestrated for each release. Updates are available nearly as soon as programmers make changes to the code. The frequency of upgrades is a blessing and a curse, although one is not obliged to download every new version.
Now, there are some drawbacks to open source software. Actually, they’re not really drawbacks, just differences. Linux and its applications evolved from the Unix philosophy of multiple, specialized programs. This was feasible in Unix – although not in its contemporary competing operating systems – because Unix was designed from the get-go as a multiuser, multitasking operating system. Thus, things that are often integrated in popular operating systems, such as MW, are separate in Linux. This segregation has advantages and disadvantages, but I think the advantages outweigh the disadvantages. Usually this segregation creates no more of a burden than having to run two programs where you might otherwise have to run one. For instance, a popular music player from AP also rips music CDs. By comparison, I use Grip to rip CDs and Amarok to play the resulting MP3 files. It’s really not a big deal that two programs are involved in the process. Even Grip is not a self-contained application, as it uses another program, Lame, to do the actual encoding to MP3 format. This high degree of modularization is common in Linux, and while it slightly increases complexity, it’s also more flexible. For example, Lame can also be used from the command line or by other applications.
There is, in fact, a “cost” associated with using open source software: having to do your own support for the most part. But that’s often the case even with software you’ve paid for. I’ve heard countless tales of frustration from people who spent hours calling this telephone number and that, wading through phone trees and trying to understand foreign accents, in order to obtain support for some software they purchased. Open source software has problems too, just like its for-profit cousins. With open source software one must take the initiative and track down solutions for oneself, by searching the Internet, leaving pleas for assistance in myriad online forums, and sometimes downloading the source code and compiling it. Personally, I find it less exasperating to take matters into my own hands than to depend on some foreign neophyte for assistance.
Is Linux suitable for everyone? That’s a tough question. It has much to do with how intrepid you are! It also depends on how you use your computer. If you have a lot of specialized software that you depend on, Linux alternatives may not be available. If you have a lot of hardware doodads attached to your computer, Linux device drivers may not be available for them. However, in both these cases assiduously searching the Internet may yield solutions. MW-based computer games will definitely not work on Linux. Personally, I find playing games on the computer a dreadful experience anyway, and only play games on machines designed to play games.
When switching from MW to Linux, one needs to maintain an open mind and accept that Linux is not going to be as uniform a platform as MW. The downside of this lack of uniformity is that there’s a learning curve associated with each new application. Speaking for myself, however, I only use about ten applications on a regular basis and am quite familiar with them all, so the learning curve may not as high a hurdle as it might seem. On the plus side, the non-uniformity of Linux applications challenges one’s adaptability, offers variety and lets one appreciate that everything need not be the same to be worthwhile. (That’s sort of a paradigm for freedom itself.)
These conceptual challenges aside, Linux today is a user-friendly, fully graphical operating system. Were one to glance at the screen of a computer running Linux, one might easily mistake it for MW, as shown below.
Linux graphical user interface
Most people who are capable of installing MW on their computer can successfully install Linux as well. Anyone contemplating such a switch, who is unfamiliar with Linux, should first read an introductory book about Linux to become familiar with the fundamental differences between it and MW. If a book exists that specifically addresses switching from MW to Linux, then by all means, read that!
When you are ready to switch, archive all your personal files (you have them well organized on your hard disk, right?) onto CD or a USB memory device or an external hard disk drive. You can’t have too many copies of your files, so don’t be stingy. Then install Linux and reinstall your personal files from the archive media.
One question you might face is whether to set up a dual-boot computer that can boot either MW or Linux. This is a bit tricky and unless you absolutely need this capability my advice is to cut the cord and make the switch for good. To set up a dual-boot machine you will need to partition the hard disk into at least two partitions. Then install MW on one of the partitions. Then install Linux. Doing the installations in this order will ensure the highest likelihood of success. If I lost you at the word “partition,” then this is definitely too tricky for you.
Other potentially tricky issues involve broadband Internet access and wireless networking. Most cable and DSL modems do not require special software on the computer (such software is always for MW and won’t work on Linux anyway) and can be configured using any web browser. You just need to know the IP address of the modem and then type it into the web browser, as shown below.
Configuring modem with web browser
Once you get into the modem’s configuration page, you have full control over it without any special software on your computer. If you don’t know what the IP address of the modem is, try configuring the computer’s network interface to use the DHCP protocol. Then, hopefully, the modem will assign the computer an IP address. In Linux, the command “/sbin/ifconfig” will tell you what IP address has been assigned to the computer (on my machine this appears as “inet addr:192.168.1.65”). Try changing the rightmost digits after the last decimal point to a “1” or “254” and typing the resultant entire IP address into the web browser. If that fails to get you into the modem’s configuration page, then you will need to research what is its IP address (try the modem’s user manual!). Naturally, it would be a good idea to try and ascertain this information before you make any changes to your computer!
Configuring wireless networking is considerably more tricky on Linux. I’ve been told that some versions of Linux, such as Ubuntu, simplify this task, but on openSUSE at least, it’s a challenge. However, most desktop computers use wired, not wireless, networking, so this challenge is largely confined to laptops.
Linux also has a tool for dialing conventional analog modems.
openSUSE – I’ve been using this version of Linux for years and it has enjoyed steady improvement. When it was acquired a few years ago by NV I feared the worst. But so far the anti-Midas touch of NV has not ruined openSUSE. This version of Linux comes with so many programs there’s almost certainly a tool for everyone’s needs; I’ve barely scratched the surface of what’s available in the complete installation. openSUSE comes with most of the programs listed below already installed and ready to use. In addition, just the Konqueror program that is built into KDE (the graphical user interface) is awesome. The thing can do everything under the sun, from browsing web sites, to displaying PDF files, to displaying image files, to navigating directory trees and within archive files, and probably much more that I’m unaware of.
OpenOffice – I’ve been using this outstanding office suite for about a decade, since it was called StarOffice. It includes a word processor, HTML editor, spreadsheet, diagramming tool, slide presentation editor, and more. I use it to manage my checking account, prepare my income taxes, prepare invoices, write blog posts and design holiday greeting cards, among other things. It’s available for multiple operating systems and the documents it creates are portable across different operating systems. It can also read and write documents created by MO. (Update: LibreOffice is derived from OpenOffice and I use LibreOffice now.)
Java – Java is both an “operating system” and a programming language that supports multiple operating system platforms. Compiled Java programs really do live up to the promise of working identically on multiple platforms. Java has come full circle, starting out as a small language for embedded systems (we used it for embedded system development at Sun back in the year 2000), migrating to web browsers in the form of powerful applets, maturing into a full-blown desktop application development language, and now being used in embedded systems again! This successful migration through different uses demonstrates its versatility. People wishing to do software development in Java may wish to visit this more programmer-oriented site.
jEdit – An outstanding, highly extensible Java-based text editor that runs on any operating system platform that can host Java. I recommend the BufferTabs and TextTools plugins, and for programmers I recommend the JDiff, Code2HTML, Character Map, and Hex Edit plugins, but there are many more plugins than these, and you can even write your own. Interestingly, I started using jEdit because I got fed up with a longstanding bug in VC that occasionally pasted multiple pieces of text into my source code, so I searched for and found this alternative editor.
GIMP – No, it’s not some kind of slur; it stands for GNU Image Manipulation Program. I don’t know how it compares to expensive programs like PS since I’ve never used PS. However GIMP compares most favorably with other for-profit image manipulation tools I’ve paid hundreds of dollars for in the past. It’s available for multiple operating systems.
Firefox – An outgrowth of Netscape Navigator, Firefox is a nice web browser that introduced a feature I love: tabbed browsing. It’s available for multiple operating systems.
Thunderbird – Another outgrowth of Netscape Navigator, Thunderbird is a simple and competent e-mail client. It’s available for multiple operating systems.
VLC – A media player that plays video and audio. Can also convert files from one video format to another. It’s available for multiple operating systems.
MPlayer – A media player that plays video and audio. I’m not very familiar with this program, but I use it often and like it. (Update: mplayer2 is derived from MPlayer and I use mplayer2 now.)
SMPlayer – “A complete front-end for MPlayer.” In keeping with the modular nature of Linux, SMPlayer is merely a graphical user interface for MPlayer, which does the grunt work. While you can use MPlayer in standalone fashion, it’s a lot easier to use with SMPlayer.
Amarok – An audio player. I hate to be critical, but this program has fallen out of favor with me because it’s become somewhat erratic. This morning, for example, I was listening to some music. When the music ended I added some more music to the playlist and tried to play it, and Amarok started telling me something like, “Could not connect to stream,” whatever that means. One minute it was playing just fine, the next it would not play. That recent flakiness is why I’ve started using MPlayer.
Grip – An excellent music CD ripper (also plays music CDs) and MP3 encoder (using Lame or another encoder).
Apache web server – An excellent web server, also useful for testing web sites and CGI programs on a local machine before uploading to the Internet.
I use these abbreviations for well known companies and products, mainly because I feel the urge to gag when uttering their full names.
AP – Greedy, ruthless corporation that hides behind a friendly facade.
MI – Web browser from MS.
MO – Office suite from MS.
MS – Ruthless boss of the software dark side. Ironically, I used to love this company, but then its business practices turned me against it.
MW – Graphical operating system from MS.
NV – Utah-based, erstwhile competitor of MS in network operating systems, possessing a tragic anti-Midas touch.
PS – Popular and expensive program for image manipulation and graphic artistry.
VC – Software development environment from MS.