Software Design Philosophy

Software design philosophy guide based on John Ousterhout's "A Philosophy of Software Design." Use this skill during: code reviews, architecture discussions, API design, module decomposition decisions, refactoring guidance, complexity analysis, naming and commenting improvements, error handling strategy design. Trigger when the user mentions "code is too complex", "how to split modules", "interface design", "reduce coupling", "deep/shallow modules", "information leakage", "error handling", "code readability", "design philosophy", "pull complexity down", "define errors out of existence", or similar topics. Also trigger for any code review where design quality feedback is requested.

hotopla5976 ef4d5d8 3 files · 18.8 KB Updated

File contents

hotopla5976/software-design-philosophy-skill/tree/main/ commit ef4d5d87c8

Frequently asked questions

npx skillmds@latest add hotopla5976/software-design-philosophy