zet

The (Actual) UNIX Philosophy

📺 https://youtu.be/-RqoPoOQd7w

“This is the Unix philosophy: Write programs that do one thing and do it well. Write programs to work together. Write programs to handle text streams, because that is a universal interface. (Doug McIlroy)

Doug invented UNIX pipes, so yeah.

People get this wrong all the time. They stop with the first part “do one thing well” and conveniently forget the rest.

Personally, my favorite list of clarifications is from Mike Gancarz (who helped create X):

  1. Small is beautiful.
  2. Make each program do one thing well.
  3. Build a prototype as soon as possible.
  4. Choose portability over efficiency.
  5. Store data in flat text files.
  6. Use software leverage to your advantage.
  7. Use shell scripts to increase leverage and portability.
  8. Avoid captive user interfaces.
  9. Make every program a filter.

This is why I find myself preferring to script in bash than to do anything else unless absolutely necessary. Developer productivity is far more important than the rest.

#unix #philosophy #linux #composition #filters