Small is beautiful.
The UNIX OS is relatively small. Small parts (kernal, etc.) make up a big whole, as opposed
to other "operating systems" that combine all the parts of their OS into one big lump, which
makes it slow, huge, and very unwieldly.
Write one program to do one job well.
Think modular.
Build a prototype as soon as possible.
Try to make a functioning model within 30 minutes. Break up the whole task into small
chunks, starting with small piece and building on it. Look at interim steps.
Choose portability over efficiency.
Store numberical data in flat ascii files.
Use software leverage to your advantage.
Especially in prototyping and for proof-of-concepting.
Shell scripting increases portability.
No compiling necessary.
Avoid captive user interfaces.
Keep It Simple, Stupid!
Make every program a filter.
STD IN < job > STD OUT