Features
- Cover Type: Paperback with 176 pages
- Published by: Digital Press December 1, 1994
- Written in: English
- ISBN 10 Number: 1555581234
- ISBN 13 Number: 978-1555581237
-
Book Dimensions:
9 x 5.8 x 0.4 inches
- Weighs: 9.1 ounces
Product Review
'It's a pleasant read-it's short and non-technical, focussing on ideology.' - Mactech
Product Review
'It's a pleasant read-it's short and non-technical, focussing on ideology.' - Mactech
Reader ReviewsWhen I first ran across this book, I thought it looked interesting, but I had a bunch of other books, so I put it aside. Weeks later, back in the bookstore, I noticed it was gone, and was mad at myself for not getting it. Weeks after that, I refound it, and while thrilled, once again rationalized myself into not buying it. I repeated this cycle of frustration/elation every few weeks over the next few months, as I lost and then re-found the book when they rearranged the shelves. After about 3 or 4 iterations, I finally bought it out of frustration. :-) To my surprise, it didn't get lost in the piles of "to read" books. It was a fairly quick (and excellent) read. I have recommended it dozens of times to friends and co-workers. From those who are literally just starting out in Unix, to those who have been Unix system administrators for 15-20 years. Gancarz writes on a multitude of levels, and his style translates well no matter where you are on the Unix spectrum of experience. For people who are just beginning, he says "Ok, so you're a newbie... Here's how we all think, and how we all code. If you understand our frame of reference, all of this will make much more sense." For those who are seasoned, he says "Ok, so you're a hot-shot veteran with twenty years of coding and sysadmin under your belt... Here are some reminders and pointers on how we all think, and how we all code. If you make sure to follow the same basic tenets, you can be assured that your code will interoperate with everyone else's, and will withstand the test of time." This is not a book about how to code. This is a book about *how to think* about coding, and operating system design in general. He talks a lot about the portability of data over systems and over time, and how good programs should work well *with each other*, rather than being designed to work with a human. (Compare the user interface of 'grep' to that of Microsoft PowerPoint. One is designed to interface well with thousands of programs, and one is designed to interface well with thousands of humans, but only a few programs. You can't script PowerPoint. You can't include it inside your own programs. You can't call it up from a cron job at 3am to process data for you. It's designed under a different philosophy.) Just Chapter 4, "The Portability Priority", is worth the price of the book, alone. It succinctly explains why you should choose data portability over efficiency and speed, and also why you shouldn't bother going back to rewrite your old scripts in C or Assembly to eke out that last smidge of speed. (The new computers coming out next year/month/week are going to be 10/100/1000x faster, and so will your code!) And he sings the praises of flat ASCII files for data stores that can be edited on any old text editors, read by all sorts of programs and different operating systems, etc. By contrast, MS PowerPoint doesn't even interoperate well with other versions of *itself* from past years, and will almost certainly not be able to read files generated with the version that comes out 3-5 years from now. Two thumbs up. This book is fantastic. And actually, it's been just over 2 years for me, so I think I'm about due for a re-read... :-)