Skip to content

Instantly share code, notes, and snippets.

@gaycomputers
Last active July 18, 2019 03:20
Show Gist options
  • Save gaycomputers/a17f0915d4b29d410c72e7f8749ff3f7 to your computer and use it in GitHub Desktop.
Save gaycomputers/a17f0915d4b29d410c72e7f8749ff3f7 to your computer and use it in GitHub Desktop.
Detroit style of design
1.
Simplicity-the design must be simple, both in implementation and interface. If it is impossible to achieve both, some combination of the problem, requirements, and tools must be re-thought.
2.
Correctness-the design must be correct in all observable aspects. If correctness is impossible to achieve, correctness, and therefore requirements, must be re-thought.
3.
Consistency-the design must not be inconsistent. Consistency is as important as correctness and simplicity.
4.
Completeness-the design must cover as many important situations as is practical. All reasonably expected cases must be covered. Consistency, simplicity, and correctness take precident over maximum completeness. If achieving a reasonable and usable level of completeness is impossible, again; tools, requirements, interface, implementation, and the problem must be rethought.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment