Slashdot Mirror


Think Unix

Jon Lasser is the author of ThinkUnix a new learning UNIX/how-to. While Danny Yee of dannyreviews actually wrote the review, I've read the book as well. It's good -- it's different from other learning Unix books because he really wants you to learn the concepts behind Unix -- to grok it. ThinkUnix author Jon Lasser pages 294 publisher Que 2000 rating 8 reviewer Danny Yee ISBN 0-7897-2376-x summary Rather than trying to be a detailed guide to a particular system, a comprehensive reference work, or a source of answers to particular problems, Lasser tries to teach the fundamental concepts of Unix and the Unix way of thinking.

In a world full of volumes like Linux: The Complete Reference, Debian GNU/Linux 2.1 Unleashed, Corel Linux for Dummies and so forth, Lasser's Think Unix is a breath of fresh air. Rather than trying to be a detailed guide to a particular system, a comprehensive reference work, or a source of answers to particular problems, Lasser tries to teach the fundamental concepts of Unix and the Unix way of thinking. He also captures something of the way in which Unix is a way of life and a culture, not just an operating system, with a good leavening of humour, history, and hackish lore. One consequence of this approach is that Think Unix will date far less quickly than most operating system books. I recommend it to computer science students, techies coming from non-Unix backgrounds, or anyone more interested in understanding the underlying ideas of Unix than solving particular problems.

Lasser starts with a chapter on documentation, explaining how to use "man" to read manual entries and touching on other forms of documentation. He then introduces the building blocks of Unix - files and processes and redirection and pipes. A brief look at TCP/IP networking, showing how to interact directly with some common network services using telnet, is followed by an introduction to vi and sed and basic regular expressions. Four chapters then deal with shell scripting in more detail, touching on differences between shells, variables and quoting, control structures, and aliases, functions, and scripts. A quick look at X explains its general design, something of the variety of window managers and desktops available, and basic configuration of startup, resources, and fonts.

Obviously a lot is left out of this (there is nothing about system administration, for example), but it provides solid foundations for further learning. And a number of topics sneak in "in passing": a mention of ssh (and associated legal issues) and a little bit about termcap and terminfo, among other things. Some practice problems are included, simple exercises to test understanding and help learning; answers to these are provided in the appendices, along with a short glossary (which includes pointers to other resources).

Think Unix has an unfortunate number of typos, including a few in code examples. And there are a few things I might have done differently (I'd have ditched most of the grainy greyscale half-page screenshots of different window managers and desktop environments, for example). Overall, however, it's a great book and the biggest problem it poses me is working out which of my "clueful but not Unix-literate" friends to pass my review copy on to.

Purchase this book at ThinkGeek.

A book review by Danny Yee <editor@dannyreviews.com>
Reviews of more than five hundred other books: Subjects | Titles | Authors | Latest

9 of 51 comments (clear)

  1. Two schools of thought by Anonymous Coward · · Score: 3
    There are two ways of looking at how to bridge the gulf between users and a computer system (HW and/or SW). There's the Apple way, which involves doing a lot of work to hide or automate or make palatable system details. This can work very well, but it often has the dreaded "dumbing down" effect that makes a system harder to customize or even understand below the UI level.

    The other approach is the Unix one, which says that it's the user's responsibility to learn the system, warts and all. This is exactly the mentality that created the "Unix wizard" syndrome in the first place (people have to work hard to learn how to use the system effectively, and then they don't want it simplified for others, which would only devalue their accomplishment), and sadly, there seems to be little going on in the Linux world to counteract that.

    In the short run, books like the one reviewed here are probably a good thing, but I would love to see more serious work being done to make them less needed.

    1. Re:Two schools of thought by Vladinator · · Score: 3

      Bravo! I couldn't agree more. BTW: Another good book on the topic is AEleen Frich's "Essential System Administration" from ORA. It's not the MOST user friendly book, but it's the best one I've read yet. It helped me MUCH, but we STLL need something like "Unix in a Nutshell" translated more into english.


      Fawking Trolls!

      --

      "Going to war without France is like going deer hunting without your accordion." - Jed Babbin

  2. Unix is *very* user friendly by Tony · · Score: 3

    It's just particular about its friends.

    - Tony "Yes, it's paraphrased" Taylor

    --
    Microsoft is to software what Budweiser is to beer.
  3. Re:Typos not a minor point by disappear · · Score: 3

    Hey, I'm the author of the book. This is a fair criticism, but...:

    1. There's an errata for the book. It is, as far as I'm aware, entirely complete and up-to-date. It's over here (the address is listed in the book, yes). You can determine how many of these have any impact whatsoever on the content.
    2. There are two typos I know of (one of which Danny Yee reported, and both of which are in the errata) in 'code examples' (that is, anything that looks like a transcript of a session). One of those is in the output of a command (the wrong quotes are displayed as output), and the other is a case where the point is that a certain thing doesn't work. (In talking about $0-$9, I show that $10 doesn't work. Only it was shown as 10 rather than $10 in the example.) This one should be clear from the context, but the point is that it doesn't work anyway.
    3. I am anal-retentive. But things get messed up in the editing phase, as documents are passed back and forth among half a dozen people and file formats change, etc.
    4. It's also a first printing. Some stuff will be fixed in the second printing. Everything will be fixed in the third printing. The second edition of the Llama book's first printing was horrendous. Especially the code examples.
    Correctness is important to me. But I'd have to say that it's pretty darned good. Check the errata and decide for yourself before making a comment like this, please.
  4. Re:This sounds like it's EXACTLY what a newbie nee by Vladinator · · Score: 4

    Sigh. The point in a way is that most things from M$ work about the same - not so in Linux. I've found TAR to be user hostile at times. Now that I understand TAR, it isn't anymore - you lack the perspective of struggling to learn something that is initially difficult. You're "There" You have "Arrived" and you "Grok" it. As a result, you don't understand why others have a hard time with it. It's no different than when I was studying medicine in the service - AFTER I had been to school, I always wondered why people had a hard time "getting it" so to speak. I've had good friends and close realitives give me that "deer in the headlights" stare when I talk computers with them - It's all about the level you're at, and how much the person or people you're trying to learn from are willing to share information in a way that you will understand. Case in point: DOS 5 had an EXCELLENT help system. Unix has MAN. I am JUST NOW starting to get useful information from MAN pages - they were TOTALLY incomprehensible to me at first. This is why sites like Linuxnewbie make NHF's (Newbieized Help Files) for people like me - MAN pages don't cut it if you don't already speak the language.


    Fawking Trolls!

    --

    "Going to war without France is like going deer hunting without your accordion." - Jed Babbin

  5. The UNIX philosophy by pixelbeat · · Score: 3

    I think Mike Gancarz' book:
    The unix philosophy
    is better, from the "Think UNIX" title perspective

  6. Hasn't anyone heard of... by toofani · · Score: 3

    The Unix Programming Environment, by Brian Kernighan and Rob Pike? It was first published in 1983 but is still very relevant.

  7. Underlying Concepts by zpengo · · Score: 3
    I think this would be a great book for many people out there who are somewhat new to the scene. *nix isn't just about memorizing commands; The real power is when you understand what goes on when you type the commands, so that you can put them together in strange and wonderous ways.

    --


    Got Rhinos?
  8. It is nice to get back to "grass roots" by Ron+Harwood · · Score: 4

    When you get right down to it - a core set of UNIX skills would be good for any linux enthusiast... They're portable between distributions - and heck you never know when you are going to be in front of a "linux-like" (that's a "Maddog" quote) operating system like AIX, HP/UX, Solaris or some BSD deriviative...