Finding the apps you want or need used to be challenging. Not anymore!
I have been writing about the benefits of Linux in business for over a decade. Web serving (simple pages and Web services), spam control, email distribution, integration with a Windows network—these are all fairly trivial to implement. UNIX and UNIX-like (e.g., Linux) operating systems have been handling infrastructure tasks since the early '80s, and for many IT managers, this long history has led to the typecasting of UNIX, in the same vein as Leonard Nimoy is typecast as his famous "Spock" character. This isn't to say that UNIX holds the same position in scientific circles, where it has historically been the operating system of choice for servers and workstations. But for the business types who typically use the iSeries in a network with Windows desktops, *nix is just part of the plumbing, much like our i5 is plumbing to the kids coming into IT who think that the world revolves around Microsoft. (Yeah, I'm old enough to call 'em kids).
It's no wonder then that most people don't think "Linux" when they are contemplating applications for their personal use. Sure, by now most tech-savvy computer people are familiar with OpenOffice.org (the office suite), but the general perception still appears to be that to get cool applications one needs to have either an Apple iSomething or a Windows machine. Perhaps one reason people pass over Linux applications is that, historically, obtaining and installing an application could be an exercise in masochism. Linux distributions each have a different focus and thus a different application suite in their software repositories. One could always pull down source files from places such as Sourceforge and compile the programs, but then that pesky problem of dependencies would always rear its head. Many popular distributions have external repositories to fill in the blanks, but those can actually cause new dependency problems. It's not that Microsoft and Apple don't have the same issues (DLL hell anyone?), it's just that it can take so much more effort and expertise for the Linux user to overcome them.
Well, I'm here to tell you that there's a whole world of cool applications that run on Linux, many that may serve you as well as or better than the "name brand" apps and many of which are available for Windows as well. Selecting and installing these applications is no longer the trial it once was, either. Enter Canonical's Ubuntu, the Linux distribution that focuses on catering to the Microsoft escapee. "Huh?" I can hear you say. "I thought that you were an advocate of Red Hat Enterprise Linux and its free respin, CentOS." For business use, I am still a RHEL/CentOS fan, since the priority of those distributions, stability, should be the priority of any enterprise OS. For desktops, where my priority is to have the most up-to-date applications, I've become an Ubuntu aficionado. Of all of the nice things I can say about Ubuntu, the nicest would be that it passes the "Mom" test. I've installed it on her computer, and she's delighted with it.
Let me explain a little about why I think Ubuntu does the desktop right. With most Linux distros, only unencumbered, open-source software is included, thus making it impossible to play MP3 files or watch certain video formats (such as Adobe Flash). To make the desktop functional in the way expected by Joe Average requires some additional work gathering up the pieces and parts and then installing them. Now we're back to the potential for dependency problems. I'm not saying that you can't get along fine using open-source software. Richard Stallman of the Free Software Foundation seems to. I'm just saying that to bring the Linux desktop fully up to par with a Windows or Apple one requires some finagling. Canonical did two things to make Ubuntu into a desktop powerhouse: 1) they signed licensing agreements with the appropriate patent holders so that codecs for listening to MP3s and watching videos are either "in there" or easily obtainable via their software installer and 2) they made management of the desktop seem familiar to a Windows user. My mother keeps her own computer updated!
Having given my sales pitch for Ubuntu, let's turn our attention toward obtaining and optionally installing Ubuntu. I say "optionally" since the installer disk also doubles as a live CD, so you can try it without so much as changing one byte on your computer's hard disk. Point your browser to the Ubuntu Web site and then navigate to the download page. You may need to burn the image to a CD, depending upon the scenario you've chosen for trying or installing the software. I'm not going to describe the burning or installation process as the download page is an excellent resource. Instead, I'm going to continue this article based on the premise that you've booted into Ubuntu and are now logged in.
If you click on the Applications link in the upper left corner of the desktop, you'll notice "Ubuntu Software Center" appearing at the bottom of the list. That is the key to the kingdom. On my freshly installed and updated Ubuntu system (conveniently running in a VMWare instance hosted on my CentOS laptop), I can see that 34,589 items are available. That's not a typo. There are 34,589 packages ready to install with the click of a mouse. (Figure 1 shows the software installer and that number appearing at the bottom of the screen.) Sweet!
Figure 1: Look at all those packages you can install! (Click images to enlarge.)
The software is divided into three categories: that which is provided by Ubuntu, that which is provided by Canonical Partners, and that which is available for purchase. The latter two are Figures 2 and 3, respectively. As you can see, the lion's share of the packages are provided and maintained by Canonical or the Ubuntu community and are available for no charge. The others either are free but not directly distributable due to licensing (such as Adobe Flash or Skype) or come with a cost, such as the Fluendo DVD player.
Figure 2: Download free Canonical software.
Figure 3: Buy software.
The software packages themselves are divided into departments, such as Games or Sound & Video, so clicking on one of those selections will give you a topical list of matching packages. Additionally, the search box in the upper-right corner of the Ubuntu Software Center window will help narrow your options by keyword(s), once you have taken some action to get a subset of the packages that match your interest.
So let's say I am working on my Asterisk phone system and wish to edit some audio files for use in an IVR tree. Using the search box, I enter "+audio +edit" and instantly I'm given a list of 30 packages from which to choose (Figure 4). Any package whose icon has a checkmark encircled in green (such as Pitivi) is already installed on your system. If you select one of those, you'll have the option to either get more information about the package, including where in the menu tree you can find its launcher, or remove the package completely.
Figure 4: Pick the package you want.
Audacity interests me (OK, I've used it before), so I click on it and then click on More Info, which gives me the result shown in Figure 5.
Figure 5: Click on More Info to find the pertinent details about the software.
Included is a brief summary of the package, a link to the project Web site, a list of any add-ons that are available for installation, package sizes, licensing terms, and a screen shot that can be clicked for a better view (Figure 6).
Figure 6: Here's an even better view.
Click Install and enter your password to gain the administrative privileges that you'll need to install a software package. A minute or so later, the package will have been downloaded from the Internet via Canonical's servers and installed on the machine. It just doesn't get any simpler than that!
While I was in the Sound & Video department, I decided to download and install my favorite music player: Amarok. I've been using Amarok for a few years because it does the things you'd expect from a music player, plus it's extensible. There are plug-ins to retrieve the lyrics to the song that's currently playing, it interfaces with the Magnatune site (think open-source music), and it can store your collection information in an external database. I admit it: I like to be able to see how many play counts I've had and when I last played an album or song. Actually, I am currently listening to the Phish concert from December 30, 2010, using Amarok, as I write this article.
Another of my passions is photography, so a quick trip to the Graphics/Photography department shows some interesting applications. My interest right now is toward digiKam, since I'm looking for a way to shoot tethered (showing the photos on a computer screen as I shoot them). Click! It's installed. What the heck? It's easy to do. I've also used gThumb as an image viewer, so I'll get that as well. Photo editing is important, so I'll back up to the Graphics/Painting & Editing department and grab the GIMP Image Editor. This extremely powerful image editor runs on Windows and Linux, so if you do any photo editing at all, you need this one.
All right, those are installed, so next let me head over to the Science & Engineering department and see what's in there. Oh boy! An "electronics" section draws my attention. There, ready for download and installation is the Arduino IDE (the Arduino is a simple-to-use embedded controller board) for Linux and the Eagle circuit-board designer package, used to create circuit-board layouts. Once designed, the output can be sent to a fabrication house where the board will be etched, silk-screened, and mailed back for do-it-yourself assembly. That can be handy for the occasional hardware project I get myself into.
Hmmm.... Not useful in a virtual machine, but if this Ubuntu installation was on real hardware, I'd be pulling down VirtualBox OSE, a simple virtual machine environment that's not quite as sophisticated as VMWare Workstation but extremely useful nonetheless. I've tested it alongside VMWare on my laptop, where it compared quite favorably. And for free, it's an easy choice.
Sorry about that. I started writing in stream-of-consciousness form while drooling over the huge list of software just ripe for the taking. To me, the Ubuntu Software Center is kind of like going to Wikipedia or YouTube. You may be going for something specific, but both sites can end up trapping you for hours. There's always another interesting link to click.
There's a huge list of open-source software I could mention, like Pidgen's The Universal Chat Client, Mozilla's Firefox browser, or the Thunderbird email client. But it would be pointless because what I find interesting may bore you. And vice versa. What's important is that, until recently, finding the packages and installing them could be a major effort. Now the whole process has become trivial. Even if you choose not to use Ubuntu as your desktop environment, you can still leverage it to find and evaluate open-source packages. Having made your choice, you can then figure out how to get it for your distribution or determine if it's available for Windows or Mac. One stop shopping: who'd have thought?