The Linux Cookbook: A Book Review
GNU/Linux desktop users already largely outnumber developers and system administrators of the same software. Often, such users do not know the root password or what a compiler is, and they have no need, possibility or wish to learn it.
This doesn't mean desktop users are clueless or lazy; they do read man pages, learn to use the proper options of each command and know that the command line can be extremely powerful. They remain, however, typical SOHO users who don't administer networks or write programs.
The first, big merit of The Linux Cookbook is acknowledging that such a class of users exists and limiting its content to their daily needs. With the exception of a seven-page appendix (Debian specific), installation and system administration are tasks left to other books. The typical Cookbook reader already has a working Linux system and wants to know how to use it more efficiently.
The book uses Debian as a reference, but its content is in no way restricted to it. Almost all the recipes presented will work without any changes on other GNU/Linux systems, and many even will work on a default installation of BSD or proprietary UNIX systems. The very few Debian-specific solutions are explicitly mentioned. In any case, the home pages of each program are listed, so it is easy to download sources or binary packages.
The second big merit is the type of solutions proposed; the use of heavy, monolithic programs or desktop environments is not encouraged, but it's not demonized either. Almost always, however, command-line tools, scripts and pipes are preferred and explained clearly, showing readers how to achieve maximum efficiency even on older computers.
This effort to teach the best way to do things, which may not always be the easiest or more visually appealing, is also correctly motivated and without any fanaticism. For example, introducing the text processing section, the author says:
It's my opinion that word processing is not a forward-thinking direction for the handling of text, especially...now that text is not always destined for printed output...."Word processing" itself may be an obsolete idea of the 1980s...no longer a necessity in the age of the Web and email.
The book is divided into seven parts. After an introduction, the topics covered are file management, text, images, sound, productivity and networking. All chapters contain simple but detailed recipes, each solving a single problem.
The whole range of desktop activities is covered. You'll find recipes to extract PhotoCD images, print booklets, select X and print fonts, make MP3 files, spellcheck a letter, find your largest or oldest files and much more. Section 2.8, Help Facilities, explains how to use the man and info documentation systems and how to find the right program for each job.
Even experienced users will find something they didn't know. I have been using UNIX and Linux since 1993, but I learned tricks like changing to the last directory you visited, renaming multiple files with the same extension, taking console screenshots and browsing images in a console only reviewing this book.
From this point of view, the chapters I found most interesting and advanced (not surprisingly, since the author is a journalist) are the Chapter 11, "Grammar and Reference", and Chapter 12, "Analyzing Text". They teach, for example, how to use on-line dictionaries, check your text for readability or automatically find files similar to the one you are writing.
Is something missing? Very little, with the exception of databases (only bbdb is presented, to manage personal contacts). Section 8.5, Compressed Files, doesn't mention the bzip2 program, and Section A2, Installing Software, should include how to handle .rpm and .tgz packages or, at least, links to proper documentation.
These are minor issues, however. The Linux Cookbook definitely is a useful and stimulating tool, which also infuses in the reader the wish to learn, without feeling intimidated.