On most systems, you need to learn consciously how to program. You
must take up the study of one or more programming languages and
expend a fair amount of concentrated effort before you can do
anything productive. Unix, on the other hand, teaches programming
imperceptibly -- it is a slow but steady extension of the work you
do simply by interacting with the computer.
No single program, however well thought out, will solve every
problem. There is always a special case, a special need, a situation
that runs counter to the expected. But Unix is not a single program.
It is a collection of hundreds of them, and with these basic tools, a
clever or dedicated person can meet just about any computing problem.
Like the fruits of any advanced system, these capabilities
don't fall unbidden into the hands of new users. But
they are there for the reaching. And over time, even those users who
want a system they don't have to think about will
gradually reach out for these capabilities. Faced with a choice
between an hour spent on a boring, repetitive task and an hour
putting together a tool that will do the task in a flash, most of us
will choose the latter.
-- TOR
 |  |  |
1. Introduction |  | 1.3. The Core of Unix |