Linux Programmer's Reference, Second Edition
Author: Richard Petersen
Publisher: Osborne McGraw-Hill
Price: $19.99 US
Reviewer: Ibrahim F. Haddad
Every once in a while—and more frequently lately, due to the growing popularity of Linux—a book appears pretending to be a reference, but the material is neither well-organized nor complete enough to truly be called a reference for the subject. Linux Programmer's Reference does not fall into either category.
Linux Programmer's Reference is divided into three parts, with seven chapters and three appendices. The first part, Chapters 1, 2 and 3, involves the BASH, TCSH and Z shells. It covers the configuration, initialization, creation and execution of shell scripts, as well as a description of all programming-related commands for the respective shell. In addition, syntax, usage and short practical examples are given to make sure the reader understands the idea.
The second part, Chapters 4 and 5, concerns the compiling, debugging and packaging of C and C++ programs. Peterson covers everything from binary formats, static vs. shared and dynamic libraries, the gdb debugger, passing by the make utility, the revision control system (rcs), up to the man pages.
The author recognizes GNOME and KDE programming popularity by including a chapter on each (Chapters 6 and 7) describing the essentials of how to create GNOME and KDE interfaces.
Finally, the three appendices serve as a quick reference for Perl, the Tcl/Tk scripting language, and TeX and LaTeX commands.
The Perl appendix covers file commands, array operations, operators, control structures, functions, pattern-matching operations and regular expressions and subroutine components. The Tcl/Tk appendix lists Tcl operators, the most common Tcl and Tk commands, standard Tk widgets and Tk options. The TeX and LaTeX appendix covers the essential commands of TeX and LaTeX.
As a Linux programming reference, the book has much to offer. It presents valuable, precise programming syntax and advice for every Linux programmer, whether you are a novice, intermediate or expert programmer. In addition to syntax, it provides brief explanations and programming examples for each command, as well as advice on how, when and why to use each command, helping you choose the most suitable one for your particular task.
The examples throughout the book are very structured, short enough to type and try yourself, and still contain all the major concepts intended to be present. In general, the use of examples help to clear up questions the readers may have after reading the concept materials, and Peterson's examples serve that purpose well.
Petersen's writing style is clear and concise, making the book easy to read and follow. However, someone on one of the newsgroups complained that Petersen covers ci and co commands for RCS without ever noting that they stand for “check-in” and “check-out”, a concept that surely makes rcs easier to understand. Such small notions may seem not important for professionals, but they are of great significance to newcomers—a matter to which Peterson might have paid more attention.
Linux Programmer's Reference is not a “Learn-X-in-12-hours” type of book. This book is not meant to teach C, C++ or Perl. It is meant to serve as a reference for those moments when you have a programming-related question, such as when you've forgotten the syntax or wonder whether a feature exists or not. This book will give all you need to get a clear and concise answer without having to search countless pages in different books or seek the help of your colleagues.
The book, as a reference, can find its place on the bookshelves of Unix-experienced users and programmers who are migrating to Linux and want specific Linux information, especially on critical gcc compiler and library issues. Linux programmers and newcomers will also find it very useful for its list of shell commands, its programming section and the quick references.
Personally, I found this book to be a useful reference worth the price ($16.99 US at Amazon.com). On the other hand, I felt the author assumed the reader knows his way around Linux and its programming tools. So, if you are a fresh, out-of-the-box newcomer, expect to dirty your hands.
I received a number of comments from some reviewers wishing there was more on scripting languages than the Perl and Tcl/Tk listings in the appendices. I agree with them. If a solid chapter on scripting languages was included instead, it would have been a great book. Nevertheless, it's still a good book, well-written and concise, and it covers the ground. If you need a good reference, Linux Programmer's Reference is the book to buy.
Fast/Flexible Linux OS Recovery
On Demand Now
In this live one-hour webinar, learn how to enhance your existing backup strategies for complete disaster recovery preparedness using Storix System Backup Administrator (SBAdmin), a highly flexible full-system recovery solution for UNIX and Linux systems.
Join Linux Journal's Shawn Powers and David Huffman, President/CEO, Storix, Inc.
Free to Linux Journal readers.Register Now!
- The Italian Army Switches to LibreOffice
- Download "Linux Management with Red Hat Satellite: Measuring Business Impact and ROI"
- Linux Mint 18
- Oracle vs. Google: Round 2
- The FBI and the Mozilla Foundation Lock Horns over Known Security Hole
- Devuan Beta Release
- Varnish Software's Varnish Massive Storage Engine
- Privacy and the New Math
- Ben Rady's Serverless Single Page Apps (The Pragmatic Programmers)
Until recently, IBM’s Power Platform was looked upon as being the system that hosted IBM’s flavor of UNIX and proprietary operating system called IBM i. These servers often are found in medium-size businesses running ERP, CRM and financials for on-premise customers. By enabling the Power platform to run the Linux OS, IBM now has positioned Power to be the platform of choice for those already running Linux that are facing scalability issues, especially customers looking at analytics, big data or cloud computing.
￼Running Linux on IBM’s Power hardware offers some obvious benefits, including improved processing speed and memory bandwidth, inherent security, and simpler deployment and management. But if you look beyond the impressive architecture, you’ll also find an open ecosystem that has given rise to a strong, innovative community, as well as an inventory of system and network management applications that really help leverage the benefits offered by running Linux on Power.Get the Guide