ūü߆ Second Brain


Search IconIcon to open search

Unix Design Philosophy

Last updated Oct 27, 2023

Here are some examples:

The Unix Design Philosophy emphasizes simplicity, modularity, and efficiency. Major tenets include the value of small, focused programs that perform one task well, the importance of prototyping early, and the preference for portability over immediate efficiency. Data should be stored in flat ASCII files for longevity, and software should be leveraged for reusability. Shell scripts amplify this leverage, and programs should avoid monopolizing user attention. Every program is fundamentally a data modifier and should act as a filter.

Minor tenets stress user customization, maintaining a compact operating system kernel, and the tradition of using lowercase for readability. It discourages excessive printing, promotes parallel processing, and values the collective power of smaller programs over monolithic ones. It’s often more practical to aim for solutions that address the majority of needs (90%) rather than striving for perfection. Cost-effective solutions tend to be more widespread than expensive high-quality ones. Lastly, hierarchical thinking is encouraged for uniform task application, though its limitations are acknowledged.

# The major tenets

# The minor tenets

# And some, equally important ones, not normally voiced.

More on wiki.c2.com/?UnixDesignPhilosophy.

Origin: X
References: UnixDesignPhilosophy
Created 2023-10-27