O'Reilly Network Article Explains Tools Philosophy in Linux
Michael Stutz wrote an excellent piece on the small tools philosophy of programming, and how that has been implemented in Linux. He puts the architecture that supports this in the proper context, going all the way back to the initial versions of UNIX written by Dennis Ritchie, Ken Thompson, and Brian Kernighan, among others at Bell Labs.
"Unix-like operating systems do not put so much weight on application programs.
Instead, they come with a lot of small programs called "tools." Each tool is
generally capable of performing a very simple, specific task, and performing it
well -- one tool does nothing but output the file(s) or data passed to it, one tool
spools its input to the print queue, one tool sorts the lines of its input, and so on."