Channels ▼

Web Development

Linux and the UNIX Philosophy

November, 2003: Linux and the UNIX Philosophy

Jack J. Woehr is an independent consultant and team mentor practicing in Colorado. His website is

Linux and the UNIX Philosophy
Mike Gancarz
Digital Press, 2003
200 pp., $39.99
ISBN 1-55558-273-7

Automating UNIX and Linux Administration
Kirk Bauer
Apress, 2003
592 pp., $49.99
ISBN 1-59059-212-3

In 1995, Digital Press published Mike Gancarz's The UNIX Philosophy. Gancarz has followed up in the new millennium with a greatly revised, essentially new work: Linux and the UNIX Philosophy. As Gancarz explains in the preface:

...[I]t finally dawned on me. [My book] as a description of the UNIX way of thinking was a 'first system.' It was now being drawn into becoming a 'second system,' a...fuller, more developed, more relevant edition of the first.

Sounds deep. Actually, it is.

Linux and the UNIX Philosophy is a book that conceivably could have an impact on the young computer scientist of today comparable to the impact that a book like Thinking Forth (Prentice Hall, 1984, ISBN 0-13-917568-7) had on us then-young computer scientists back in '80s. Gancarz explores the philosophical basis of UNIX and ends up expounding the computer science equivalent of what Huxley, Watts, and Isherwood called in the humanities the "perennial philosophy." Simplicity is a virtue. Directness is a virtue. If you keep it clean enough, even users can be taught to use it. We've all spent hours, days, and man-months struggling with managers and team members who couldn't grasp those simple principles!

On another level, this book is painful to read: The pain is nostalgia. "Yes, yes," I want to shout along with the text, "Tell them how it happened so they don't forget. We were there!" Actually, that's pretty much the gist of the foreword by Jon "maddog" Hall. I found the cascade of memories triggered by Gancarz's insightful recital overwhelming—memories of decisions made, of paths taken, of paths not taken, ideas good and ideas not so good succeeding or failing according to merit or whims of fate, as our craft, our industry, our art and world usage of the [Li|U]nix operating system(s) blossomed and grew to gargantuan proportions.

Yet, it's more than just a nostalgic trip. Linux and the UNIX Philosophy is a useful book because it recounts, with charming brevity, how an immense corpus of business-mission-critical software emerged in conjunction with the then-industry-novel business model of community-shared intellectual property as represented by GNU/Free Software/Berkeley/Open Source. The inference is that there is some sort of platonic ideal that unites the evolution of the design philosophy of UNIX itself with the advent of the social philosophy of open software.

Not that Gancarz idealizes the operating system itself, as this excerpt from section 7.9 ("Worse is Better") shows:

[T]here is the right way, the wrong way, and the military way ...The 'UNIX way' is akin to the military way. If you listen to the purists, UNIX should have withered and died 20 years ago. Yet, here it is in its entire parasitic splendor, feeding off the criticisms leveled at it...and growing stronger every day.

This book is not just a windy newsgroup rant: Linux and the UNIX Philosohpy is a first-class folk-history of UNIX and Linux. Many of us might tell the story differently, or may have already told the story differently, drawing at the same time somewhat different conclusions based on our individual roles. But if you're willing to listen to a lover of software coding and design tell the story concisely and engagingly, you couldn't ask for better than this book.

You can view the typical publisher info about Linux and the UNIX Philosophy at the Digitial Press website, http://www I recommend a search by author for Gancarz.

Automating UNIX and Linux Administration

Descending from the ideal to the workaday, Kirk Bauer has delivered a worthwhile volume in Automating UNIX and Linux Administration. In a literary style resembling a rich series of workshops/lectures, Bauer takes the reader through admin automation starting at the right place—secure shells, of course, to zip and zap your commands around the network—and ending in the realm of automated backups and restores and the user interfaces for them. Sounds very basic, but maybe you've noticed that:

  1. When you suddenly decide you need to automate admin tasks, it can take weeks if not months to get right.
  2. If it's so basic, why do all the packaged toolchains for these purposes give such magnificent headaches?

Uh-huh. Now you're getting it. It's not a question of whether you are interested in what Mr. Bauer is selling. It's a question of whether you need it explained to you how this stuff is done. In my experience, the answer is, "Yes, the majority of Linux and UNIX sysadmins in the industry need this refresher."

Now, this sort of exposition can be done well or done ill. Bauer does it well. His only visible ideological commitment is to the simple, practical, and inexpensive. So in the end, perhaps this book could be said to manifest the same platonic ideal as Linux and the UNIX Philosophy where the rubber meets the road. The book exhibits good writing, good production values, several quick starts (e.g., cvs) for the reader, and a good deal of mostly reusable code.

You can view the typical publisher info (including table of contents, source code, and sample chapter) at book/bookDisplay.html?bID=211.


Related Reading

More Insights

Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.
Dr. Dobb's TV