Hyper-Ad Computer
Book Recommendations · If the link is blue, then I've put the book recommendations
in. If not, then they will be up soon...
· Oracle · General UNIX ·
Linux · AIX · HP-UX
· Solaris · Unix System Administration
· Unix Networking · Security · Programming ·
Oracle Books
General notes - there is no such thing as a single
"good Oracle book". All of them have their good and bad points. The
hardest thing about learning Oracle is the incredible vastness of the database system - it
takes several years of working with the DB every day to become conversant with the
commonly understood terminology. I've listed the trio of (useful) books I've read so
far here. They should be used along with the online documentation (which you can
buy in book form for many $$), coursework if you have the time, and lots of
patience. I recommend taking careful, detailed notes, and organizing those notes in
a binder. You'd be surprised how much that can help you learn! For more advice
about the most economical way to learn Oracle, see Information Central.
Oracle8i DBA Handbook
I'm not always happy with books written for software
companies, but this one does contain discussions of issues that experienced Oracle DBA's
deal with: design of databases, general "how to handle thisclass of problems"
topics, performance. Not for the beginner, this book is a must have for DBAs since
Oracle (and people who hire DBAs) typically assumes familiarity with the issues discussed.
Covers some of the topics in the online Oracle documentation in much clearer
English, including examples of actual implementations which are helpful. You really
need a (preferably UNIX) computer loaded with Oracle's sample database tables (the
so-called "scott/tiger" demo) and loads of time to carefully go through this
book. Regrettably, even with the computer AND database, it's hard to simulate the
high-volume environment most Oracle databases see. Thus it is difficult to appreciate a
lot of the material presented here, unless you have seen it on the job, where your
opportunities for experimetation are limited!
Special Edition
Using Oracle8/8I
I'm using the previous Using Oracle 8
edition of this book, and I like it, because it explains the various pieces of the vast
Oracle system pretty well. Like a lot of Oracle books (probably all of them),
just reading this book won't help you understand Oracle - you have to use it as a
reference when something comes up during the work day that you don't understand.
It's good for looking up a particular topic and getting a better understanding of that
topic. One thing I particularly like is the explanation (complete with all useful
commands) of the data dictionary - a fundamental element of Oracle and one that is
devilishly hard to understand without a lot of experimentation. This book is very,
very well organized, easy enough to read, has a quick reference in the front, a quick
table of contents, a detailed table of contents, a glossary, and a good index. There
are lots of side notes in the margins of the pages which discuss details or side issues
without interrupting the flow of the main discussion.
Oracle8 How-To :
The Definitive Oracle8...
This book is utterly different from any other Oracle Book - it's
really a set of examples of fairly complex operations, with a URL reference to code you
can download from the Internet. The examples are organized into chapters such as
"Installation", "SQL*PLUS", "Database Users", each with very
well-documented methods of handling common problems. Where the above Oracle8i DBA
Handbook is more of a strategy textbook, this book is much more specific, and really
covers tactics. An excellent addition to the minimum necessary tools needed to learn
Oracle well enough to pass those stupid exams. Going through this book, perhaps
twice or three times, and actually applying the examples to real-life problems, helps
enormously toward getting a grip on the vastness of Oracle.
back to top
General UNIX Books
UNIX Power Tools
Without any doubt, the single best UNIX book ever written.
A giant collection of short articles, all useful to practicing Unix folk of all stripes,
by the original gurus at O'Reilly books (including O'Reilly himself in many cases).
Includes a CDROM with the source code for most of the interesting programs
discussed. I should point out that this book is really a collection of techniques,
rather than a standard reference. I wouldn't use it to look up a vi command (see
next entry), but I have used it to find power vi techniques I need to make some big job
easy. This is an excellent, excellent book - if you don't have it and you are going to
spend a lot of time around UNIX - particularly multiple flavors of UNIX, you should buy it
now. You'll be glad you did.
Unix in a
Nutshell: A Desktop Quick...
If Linux is going to be your main UNIX box, see the Linux in a
Nutshell entry below. This is a fast desktop reference to SVR4 (System Five
Revision Four) style UNIX (Solaris, AIX, HP-UX). I have the Linux version, which
along with online man pages is usually enough to get by (I also use tons of my own
hand-written notes, and I print out often-used man pages and scribble examples all over
them). This is when you need to lookup a command quickly and don't want to burn out
your eyes or brain trying to decipher the man pages (Solaris man pages are especially
dense - almost reads like another language, very hard to get help unless you are an expert
already).
Essential System
Administration : Help...
I have two copies of this book, one for my office at work and one
for home. There are several reasons I really like it. First, there is a quick but
reasonably comprehensive history of UNIX, enough to show how the dizzying array of UNIX
flavors came about. From this, the author concludes that there are two basic ways to
think about UNIX: System V and BSD. She lists the current (as of 1995) list of UNIX
flavors, and rates them as to where they lie on the BSD vs System V spectrum. This
is really useful - it makes everything inside UNIX fit into one of two boxes, a useful
oversimplification. There are chapters which describe the details of files,
permissions, processes, filesystem layout, a detailed descrition of the boot process and
exactly what happens and in what order (the author should get a medal for that particular
part of the book), shutdown, users and accounts, system resources that are likely to be in
short supply at one time or another (like disk space, CPU cycles), performance,
automation, scripts, security, backup and restore, and other advanced topics. This
is a good book for a working professional, since it explains the same operation, say
adding a new hard disk, in each OS (Solaris, AIX, HP-UX, Linux), showing how each is
different and what elements are the same. I'd say this book is NOT for either
hobbyists nor beginners, but can be a good learning tool after something like Running
Linux (below) has been thoroughly digested.
The UNIX and X
Command Compendium: A...
Out of Print. This is such a good book
- basically an alphabetical dictionary of UNIX commands... 600 pages worth. Really
classifies as an example book, but there is something so useful about being able to browse
through all the weird ways you can use "grep". Anyway, Amazon is
willing to search their used book sources for you, beats the hell out of wasting time
visiting the local used book stores ever few days out of fear you might miss a bargain on
a book you don't even need! This is a pretty good book for beginners, they can try
out the commands on a Linux box (if you break it, at worst you just have to re-install it)
and really get a feel for some of the more common UNIX commands and what they can do and
how they fit together (many of the examples show the use of pipes).
back to top
Linux Books
Linux in a
Nutshell, 2nd Edition...
This is the reference book I keep right by my computer every day.
This book is superbly organized, as brief as possible, and extremely useful as a
reference. Covers user commands, bash, csh and tcsh, regular expressions, Emacs, vi,
ex, sed, gawk (Gnu awk), programming commands (as opposed to languages), system and
network administration and commands. So well done it can usually be used as a
reference for the other kinds of UNIX as well...
Running Linux
THE SINGLE BEST LINUX (OR UNIX) BOOK FOR
BEGINNERS! The reason I love Linux so much is that it is so
accessible; a kid (or an adult for that matter - hint, hint) with about $300 can buy a
cheap computer and monitor and ONE BOOK (this one) and build a career
that will feed him and his family for life. Once done exploring everything in this
book, the reader is ready to try getting a job as a computer operator or tester - just ask
for a job - if you can sit at a UNIX terminal and find your way around the OS, they'll
hire you (unless you are dead). Nearly every chapter in this well-written book is
crucial to understanding the way UNIX people think and work
Not Yet in Print but buy it when it is: Linux Bible Year 2000 version. Yggdrasil's giant reference work, a print version of
the how-to's from the Linux
Documentation Project. My copy was used when I got
it, and that was four years ago. It is still one of the most comprehensive,
detailed, thorough, USEFUL books I have. The index is fantastic - I have a problem,
look in the index, find a keyword, solve my problem. Amazing! If you need the
gory internal details of exactly how to talk to your modem in its own language, or how to
add kernel support for some weird device that only you and five other people in the world
care about, this is the place to find it.
back to top
Programming
Books Regrettably, most programming books suck - they try to be all
things to all people and fail. Here's a few books that do not suck.
Practical C
Programming (Nutshell...
This is a pretty good little programming book. Its main
advantages are that it is very readable, has lots of examples and a good glossary in the
back. Its main disadvantage is that it doesn't have enough problems for the reader to work
out - there are usually about a half-dozen problems at the end of each chapter, where I
would have been happier with 60 or 70. Oh, well, there are other books that have lots of
problems, but there aren't too many readable C books.
Practical C++
Programming (Nutshell...
Same author as previous book. I have the same general
comments for this book. It's readable, has lots of examples, well thought out book.
The difference between C and C++ is that C++ is the object-oriented (ABSTRACT)
version of C, and a much more careful presentation of the language is required. I'd
say this book does the basics well, prepares the student for more difficult
professional-level programming problem solving books.
A Book on C :
Programming in C
This is a much more serious book on C programming. Although
it starts out at a pretty low level like the book above, it reaches deeper, talks about
programming details that Practical C Programming avoids. The writing is
adequate to understand what's being said - I would consider this an advanced book on C.
What I like best about it, besides the very in-depth discussions about the arcane
stuff real programmers use all the time (take a look at the Linux kernel source code sometime), is that this book is
loaded with good problems to work. That makes it worth the price of the book -
working all the problems in this book will make you a strong programmer.
Java in a
Nutshell : A Desktop Quick...
Plenty of examples, shows pretty clearly why and how JAVA differs
from C. To make a long story short, you need JAVA to do the windowing and graphics
parts of programs, where the java.awt (ABSTRACT WINDOWING TOOLKIT) takes care of the gory
details of windows regardless of platform. That way, code written for Windows will
work on UNIX, with a recompiling on the new platform the only chore needed. For
procedural (line command) programming, there is no advantage to using JAVA (in fact it is
slow and should be avoided).
Java Examples in
a Nutshell
A companion to the above book, this is the real tutorial, while
the previous book is more of a reference book. Follow this book, work all the
problems (there are not enough of them, in my opinion, so look for more in other books),
and use the other book as a reference and source of additional examples. Except for
learning purposes, you should write all your purely procedural stuff in C or C++, and just
use JAVA for the truly non-platform independent part of programming (windows and
graphics).
back to top
- More to Come - Last Updated: 07/14/03 -
|