Much of the power of the UNIX operating system comes from a style of program design that makes
programs easy to use and, more important, easy to combine with other programs. This style has been
called the use of software tools, and depends more on how the programs fit into the programming
environment and how they can be used with other programs than on how they are designed internally.
This style was based on the use of tools: using programs separately or in combination to get a
job done, rather than doing it by hand, by monolithic self-sufficient subsystems, or by
special-purpose, one-time programs.