We all know that Linux is about choice.
Everyone has the choice of what they use and how they use it, provided they have access to a tame hacker with suitable programming skills.
A consequence of this is that there's a huge range of software out there. If there's a popular favourite for a given task, you can bet your bottom dollar there'll be at least one alternative. You've only to look at the package selection options in most distro installers to see just how many choices you can make before you even start using your distribution.
Over the next few pages we'll highlight some of the choices available to you for some of the most common desktop tasks. There's no 'best' software here, for the simple reason that it's all the best.
We all spend far too long watching rubbish on YouTube, so we might as well do it in style.
What makes Firefox so popular? Mainly because it 'just works'. There is rarely any need to change your browser identification to fool a site into letting you in. If you do, there is an extension to do this, which leads us into the other reason for Firefox's success: its plugins.
From blocking ads to displaying weather forecasts in the status bar, Firefox can be extended to make the web work for you just as you want.
Judged purely as a web browser, Konqueror falls a little short of the standards set by Firefox; on the other hand, its integration with the KDE desktop makes it a pleasure to use with other KDE applications, and the KIO slaves are marvellous.
KIO slaves enable Konqueror to handle more than the usual HTTP, HTTPS and FTP URL methods.
Konqueror can read man and info pages complete with hyperlinks, connect to Samba shares and printers, browse the contents of various types of archive, connect to CVS and Subversion repositories, access the contents of digital cameras and mobile phones, and it's a good file manager too.
Opera is free as in beer, but not as in speech. However, it caters well for Linux users with several packages to suit various distros. Opera is as good as Firefox in some areas and better in places. It can be fast, especially if you run it with the –nomail option, which disables the internal email client and halves the startup time.
You may object to Opera because even though it is available free of charge, it isn't open source, but it has plenty of features to make web browsing easier, and was the first browser to introduce mouse gestures.
Lynx, and its derivatives Links and Elinks, is a text-mode web browser.
Why, in this world of increasingly graphic content where everything other site uses Flash animations for the most trivial things, would anyone want to use a text-only browser?
The question itself gives one possible answer – a text browser shows just how much the basic information that makes up the web, the text, has become overloaded with bandwidthsapping eye candy. You wouldn't want to use this for YouTube, but for surfing for information in text form, it absolutely flies.
How you read your email makes a big difference – just ask those poor sods using Entourage.
Thunderbird is a good quality graphical email client that uses the GTK toolkit but is not tied to any particular desktop environment.
It has pretty much all the features you would expect to find in such a program: mailing list handling, encryption and digital signatures for outgoing and incoming mails and plenty of filtering options.
Claws Mail started life as a development fork of the Sylpheed mailer, and was for a long time known as Sylpheed-Claws.
Some distros still package it with that name, but it is now a separate program. Claws Mail is a fast, lightweight GTK-based mailer suitable for use with any desktop (it even runs well on the Nokia N800).
Those with several email accounts and subscriptions to a variety of mailing lists will find plenty to help them manage their mail in Claws. Plugins extend the capabilities further, and it is also possible to pass mail through external commands, either manually or as part of the filtering process as mail is downloaded.
While some may dislike the KDE habit of naming everything with a K, it leaves nobody in any doubt as to where KMail comes from and what it does. Yes, it's the default email client of the KDE desktop environment.
KMail runs as a standalone mail program and also as an embedded component of Kontact, the KDE personal information manager. KMail provides most of the features anyone would want from a mail client, with the usual filtering and mailing list options, encryption and digital signing support through GPG and plenty of message layout options.
Evolution is Gnome's mail program, but it's more than that: it's a complete groupware and PIM package.
Evolution is the most feature-rich of the mailers we looked at – at least as they were set up out of the box – largely because of the comprehensive range of plugins provided, although the one to play audio attachments could get a little tiresome, especially if deployed in a large office.
Is work the curse of the Linuxing classes? Not if they're using one of these it isn't…
Like Firefox, OpenOffice.org evolved from a proprietary program (Star Office) and can be considered a drop-in replacement for Microsoft Office most of the time.
As far as features go, OOo, as it is often known, has just about anything you need, with more being provided by extensions. These can be downloaded from http:// extensions.services.openoffice.org and while some of them are platform-specific, many of them are portable to any environment that will run OpenOffice.org.
A release of OOo 3.0 is not too far off, which will add even more possibilities for extensions.
KOffice is a collection of individual programs – word processor, spreadsheet, presenter, flowcharter, image editor, report generator and project management.
It includes the KOffice Workspace, which acts as a common entry point to the various components, or you can run the program you need directly. The KOffice programs are fast to load - if you want to load and print an email attachment, you'll be out the door with the papers in hand while OpenOffice.org is still loading.
The range of programs far exceeds other suites, some with little or no competition and some standing up well against extremely well-established competitors, Krita is gathering abilities to match the Gimp.
Gnome's office suite is a rather loose collection of separate programs, but this lack of integration is compensated for by the quality of the individual components. AbiWord, the word processor, and the Gnumeric spreadsheet are prime examples of efficient programs aimed at a single task.
Saving in Microsoft Word file formats is unreliable, and some documents appear distorted when opened in other programs. Saving in another format worked fine, so this is an issue with the closed MS formats rather than an integral problem with AbiWord.
On the other hand, Gnumeric did better than KSpread when loading and resaving some of the Excel spreadsheets we had lying around. AbiWord is the only one of the current word processors with grammar checking included.
More ways to waste time, from watching movies to playing your favourite jazz tunes – nice.
MPlayer is a command-line Swiss Army knife of multimedia players, handling just about any video or audio source, in virtually any format that you can throw at it, including CD, DVD, analogue TV cards, DVB TV adaptors, radio cards, various internet streaming formats and even video from a Tivo. Oh, and it plays from video and audio files too. Phew!
There are also various GUI frontends, such as GMPlayer and KMPlayer, and even a browser plugin to use MPlayer to play just about any embedded web content, including the BBC's iPlayer.
Totem is another multi-format media player, this time for the Gnome desktop, and plays the usual range of media, from files, DVDs or streamed data from a network source. It is a typical Gnome application in that it just gets on with the job in hand without giving you a zillion config options.
Like Kaffeine, this uses the Xine library for all the back-end work, so the quality of playback is as good as with the other programs. The likes of Totem and Kaffeine should be judged on the interface, and Totem has a solid basic interface that does the job without getting in the way.
The one areas where this falls down is watching DVB TV, where you have to provide it with a channel's file (it won't scan the channels for you). Never mind; if you tried Kaffeine but didn't like it, just copy over the channels.conf file before deleting it.
No prizes for guessing this is another KDE program.
Kaffeine is another play-almost-anything program, though it's far more immediately accessible than MPlayer because it has a full graphical interface, removing the guesswork element of trying to establish which keys do what.
It also auto-detects DVB adaptors and offers to scan for channels, and will also download the EPG (electronic program guide) information so you can see what will be on later. Kaffeine has an option to stream content over the network, which is useful if you have a TV card in your desktop but want to watch on your laptop.
Amarok plays music from local files, a connected portable player or an online stream. It has all the usual eye candy, including album cover art downloaded from the web, visualisations and a lot more.
Amarok keeps track of what you play from your collection and can choose from your most played or recently played tracks, your most recent additions or simply a random choice, and it can upload to portable players, including iPods.
For safety's sake we've left out Emacs and Vi. Just don't send us flames, please!
KDE provides three text editors: Kedit is very basic, KWrite more capable and Kate the most comprehensive. This may seem like overkill, but they use common KDE functions, so there is no duplication of effort.
Kate offers the lot. Automatic indentation makes Python scripting easier and all code more readable (Perl programmers can turn it off). Sessions are collections of files that can be opened and edited together, whether source files within a project or chapters of a book.
Gnome's Gedit text editor appears more basic than Kate, but this impression only lasts until you look at the range of plugins that are included but disabled by default. Text editors are often used for quick fixes to config files, so you don't want startup times extended by opening plugins you don't need.
Once enabled, many of the functions of Kate are available here too, such as indent handling, bracket matching, spell checking, text snippets and even a Python console for testing code. The settings chosen for a particular file, such as highlighting, are remembered and use the next time you load it.
Let us lead you away from the Ks and Gs of the software world and introduce you to Joe.
Joe has syntax highlighting for various languages and is excellent for editing config files and short scripts, whether locally or over a remote connection. It's worth installing for those times when it is not worth loading up a large editor, or not possible to do so.
Your inner Mario Testino will love Linux's photo management applications.
KPhotoAlbum is more like a database than most photo managers. Each image can be tagged with names of people, places and other keywords, and searched for based on combinations of these tags and dates. Tagging each photo can be time consuming, but KPhotoAlbum makes the task easier by allowing you to select a batch of pictures to edit their tags.
KPhotoAlbum offers the usual range of image manipulation and processing functions as well as export to CD/DVD, Flickr, Gallery, Picasa and HTML. Many of these processes are identical to those offered by DigiKam, because they share the same plugin interface and a set of common plugins.
In F-Spot, the default Gnome photo manager, photos can be tagged and rated, and these attributes, plus dates, can be used to locate images.
Tags can be given icons (this defaults to the first image to be assigned that tag), and these icons are displayed below images giving a quick visual indication of the contents of groups of images. The GUI is very clean, and this is the most accessible of the photo management programs here for a new user.
DigiKam is another KDE application, but earns its place in this selection by virtue of its ability to work with your photos, rather than simply indexing them as KPhotoAlbum or many other photo managers do.
It includes tags, but these are less advanced than those of KPhotoAlbum. Where it really shines is in image manipulation, as it has its own editor designed for digital photos. This covers the basic functions needed for digital photos, such as resizing, cropping, altering colour and brightness levels, red-eye reduction and a number of effects. It can also open images in Gimp or Krita if you want to really go to town on it and the in-built tools alone are not enough.
Gallery is an open source image gallery that runs on a standard LAMP (Linux, Apache, MySQL, PHP) system. With a fast enough connection to the internet you could host it yourself, or use any hosting provider that provides PHP.
Gallery gives a great deal of control over the images you show, who can view them, who can download them, it also links to online printing sites so people can order printed copies. The administrator (that's you, that is) controls who can do what and which of the many extension modules are available to registered users and guests.
The best of the rest
You might not think you need these, but you're missing out if you don't give them a go.
Google Earth provides a view of the Earth, using satellite and aerial photographs. You can search for locations, pan around and zoom in and out. The higher-level views use satellite imagery but the more detailed images are from aerial photographs – this is why some areas have more detail than others.
The next time someone complains about having to edit a text file to configure a program, point them at Webmin.
This is the closest thing Linux has to a universal config program, so far. Webmin runs in the background on the computer you want to configure, and you connect to it with a web browser. This means you can use a graphical config tool on a server with no graphical display, and do it remotely if necessary.
GCompris is a collection of educational games for children aged from two to 10 years. The games are split into categories of puzzles, maths, strategy, fun, reading, computer peripherals, physical movement and discovery.
Not enough apps for you? Then check out our follow-up piece, 20 Linux apps you can't live without.