A Philosophy Of Software Design

Apply John Ousterhout-inspired software design rules when reducing complexity, designing module boundaries, or reviewing APIs and abstractions.

ciembor Updated

File contents

A Philosophy of Software Design Skill

Use this skill when a task involves module design, API design, information hiding, abstraction depth, cognitive load, or refactoring shallow interfaces.

Before making design or code decisions, read and apply a-philosophy-of-software-design.mini.md. Use a-philosophy-of-software-design.md only as a deeper reference when the mini rules are not enough for the current design tradeoff.

ciembor/agent-rules-books/tree/main/a-philosophy-of-software-design commit 29632dc2fe

Frequently asked questions

npx skillmds@latest add ciembor/a-philosophy-of-software-design