"Make each program do one thing well. To do a new job, build
afresh rather than complicate old programs by adding new
"Expect the output of every program to become the input to
another, as yet unknown, program. Don't clutter output with
extraneous information. Avoid stringently columnar or binary input
formats. Don't insist on interactive input.
"Design and build software, even operating systems, to be tried
early, ideally within weeks. Don't hesitate to throw away the
clumsy parts and rebuild them."
Some of the products that appear on this site are from companies from which QuinStreet receives compensation. This compensation may impact how and where products appear on this site including, for example, the order in which they appear. QuinStreet does not include all companies or all types of products available in the marketplace.