The philosophy of unix
Mini essays

The philosophy of unix – 9 commandments

The philosophy of unix is a guideline of standards and software design & philosophy approaches :

  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.
The philosophy of unix

Elaboration :

  1. Small is beautiful: Keep programs minimal and focused to enhance simplicity and maintainability.
  2. Make each program do one thing well: Design software to excel at a single task, avoiding feature bloat.
  3. Build a prototype as soon as possible: Rapid prototyping helps identify issues early and accelerates learning.
  4. Choose portability over efficiency: Prioritize compatibility across systems over hardware-specific optimizations.
  5. Store data in flat text files: Use simple, universally readable formats for data storage to maximize flexibility.
  6. Use software leverage to your advantage: Reuse existing tools and code to save time and reduce complexity.
  7. Use shell scripts to increase leverage and portability: Automate tasks with scripts that work across diverse environments.
  8. Avoid captive user interfaces: Design programs that integrate seamlessly with other tools, avoiding rigid interaction flows.
  9. Make every program a filter: Enable programs to process input and produce output that can be piped into other tools.

The philosophy of unix is a universal approach to any development, not only software 😉

Piotr Kowalski