UNIX Philosophy
The unix philosophy is a set of guidelines for writing modular, maintainable software that is easy to re-use and extend. Extending the software usually doesn’t happen by modifying the software itself though, but instead by writing new software that uses the other software either under the hood, or works alongside it.
The three guidelines in their simplified forms are:
Software should…
- do one thing, and do it well.
- be written to work with other software.
- accept plain text streams as input, as that is a universal interface.