agentsclimarketplace

Dec software principles

Skill jpoindexter/design-engineering-canon/skills/dec-software-principles

Core software engineering principles for the engineering half of design engineering — SOLID, DRY/KISS/YAGNI, Conway's Law, Principle of Least Astonishment. Use when structuring code, reviewing architecture, naming/shaping components, resisting over-abstraction, or explaining why a component should behave as its name implies.From its SKILL.md

Install
npx -y skills add jpoindexter/design-engineering-canon --skill dec-software-principles

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

1.8 KB, 331 tokens by cl100k_base, as published. Nobody here has run it

Software Principles

The engineering half of design engineering — how code stays maintainable.

  • SOLID:
    • Single responsibility — one reason to change per unit.
    • Open/closed — open to extension, closed to modification.
    • Liskov substitution — subtypes must be usable wherever the base type is.
    • Interface segregation — many small interfaces over one fat one.
    • Dependency inversion — depend on abstractions, not concretions.
  • DRY / KISS / YAGNI: Don't repeat yourself; keep it simple; you aren't gonna need it. YAGNI is the antidote to speculative abstraction — don't generalize until you have concrete uses.
  • Conway's Law: Systems mirror the communication structure of the org that builds them — team topology is an architecture decision.
  • Principle of Least Astonishment: Components should behave the way their name and appearance imply. Surprise is a defect.

How to apply

  • YAGNI before DRY: don't abstract until you have ~3 concrete uses; premature DRY couples unrelated things.
  • Single-responsibility is the most useful SOLID letter day-to-day — if a unit needs "and" to describe it, split it.
  • Name components for what they do; if behavior surprises a reader of the name, rename or fix the behavior (Least Astonishment).
  • When a system's structure feels wrong, check Conway's Law — it may mirror a team boundary, not a technical one.

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.