Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Laws of Software Engineering — Claude Code Skill

56 laws, principles, and rules of thumb of software engineering, packaged as an installable Claude Code skill. Covers Conway, Brooks, Hyrum, Gall, Postel, CAP, YAGNI, DRY, SOLID, Pareto, Amdahl, Murphy, and ~45 more.

Paraphrased from lawsofsoftwareengineering.com — the original catalog. Full credit to the source site; content here is a derivative work for use with LLM coding assistants.

Structure inspired by forrestchang/andrej-karpathy-skills.

What's included

56 laws organized into 7 categories:

Category Count Examples
Teams 9 Conway's, Brooks's, Dunbar, Ringelmann, Bus Factor
Planning 6 Premature Optimization, Parkinson, Goodhart, Hofstadter
Architecture 9 Hyrum, Gall, CAP, Leaky Abstractions, Fallacies of Distributed Computing
Quality 11 Boy Scout, Murphy, Postel, Technical Debt, Testing Pyramid
Scale 3 Amdahl, Gustafson, Metcalfe
Design 6 YAGNI, DRY, KISS, SOLID, Demeter, Least Astonishment
Decisions 12 Dunning-Kruger, Occam, Pareto, Lindy, Inversion, First Principles

Each law has a deep-dive file with definition, takeaways, real-world examples, and "when to apply" triggers. Claude loads the main index, then reads individual law files on demand (progressive disclosure).

Install

Option 1 — Claude Code plugin marketplace (recommended)

/plugin marketplace add Y0lan/laws-of-software-engineering
/plugin install laws-of-software-engineering@laws-of-software-engineering

After install, the skill appears as laws-of-software-engineering in the Skill tool. Claude invokes it automatically when architecture, planning, code-review, or decision-making cues match the skill description.

Option 2 — Standalone CLAUDE.md (any project, any LLM tool)

Append the condensed single-file version to your project's CLAUDE.md:

curl -fsSL https://raw.githubusercontent.com/Y0lan/laws-of-software-engineering/main/CLAUDE.md >> CLAUDE.md

This adds all 56 laws with one-line definitions and apply-when cues. Good for any tool that reads project-level markdown instructions.

Option 3 — Cursor project rule

Copy the .mdc file into your project:

mkdir -p .cursor/rules
curl -fsSL https://raw.githubusercontent.com/Y0lan/laws-of-software-engineering/main/.cursor/rules/laws-of-software-engineering.mdc \
  -o .cursor/rules/laws-of-software-engineering.mdc

Uses alwaysApply: false so Cursor surfaces the laws contextually rather than in every prompt.

How the skill works

The skill uses progressive disclosure:

  • skills/laws-of-software-engineering/SKILL.md — main index: all 56 laws with one-line definitions, organized by category, with pointers to deep-dive files.
  • skills/laws-of-software-engineering/laws/<slug>.md — one file per law with takeaways, why it matters, examples, when-to-apply triggers, and related-law links.

When a situation triggers the skill, Claude loads the index and Reads whichever specific law files are relevant. This keeps context usage proportional to the actual question.

How to cite a law well

Laws are tendencies, not theorems. They're useful when they sharpen a concrete decision — and noise when they're name-dropped. Good uses:

  • "Adding three more engineers to this slipping project risks Brooks's Law; the new-joiner ramp-up cost may outweigh their output for months."
  • "This API change looks safe on paper, but per Hyrum's Law some clients likely depend on the current error-message text."
  • "The 'we might need X later' argument is a YAGNI flag — let's defer until a real caller shows up."

Bad uses: dropping a name without applying it, or using a law to short-circuit actual analysis.

Attribution

  • Source catalog: lawsofsoftwareengineering.com — all laws selected and categorized there.
  • Content in this repo is paraphrased; each deep-dive file links back to the original source page.

License

MIT. See LICENSE.

About

56 laws of software engineering as an installable Claude Code skill, paraphrased from lawsofsoftwareengineering.com. Inspired by andrej-karpathy-skills.

Resources

Stars

10 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors