Agent skill
97-dev
Apply timeless programming wisdom from "97 Things Every Programmer Should Know" when writing, reviewing, or refactoring code. Use for design decisions, code quality checks, professional development guidance, testing strategies, and workflow optimization.
Install this agent skill to your Project
npx add-skill https://github.com/DeevsDeevs/agent-system/tree/main/97-dev
SKILL.md
97-dev: Programmer's Wisdom
Distilled principles from 97 Things Every Programmer Should Know. Apply when writing, reviewing, or making design decisions.
Core Philosophy
Code is design. Software development is a creative discipline requiring craftsmanship, not mechanical construction.
The code tells the truth. Documentation lies, comments decay - only executable code reveals actual behavior. Make code self-explanatory.
Care about your code. Excellence stems from attitude, not just knowledge. Craft elegant code that is clearly correct.
Quick Principles
| Principle | One-liner |
|---|---|
| Simplicity | Remove everything unnecessary; less is more |
| Boy Scout | Leave code cleaner than you found it |
| DRY | Single authoritative representation for each piece of knowledge |
| SRP | One reason to change per class/module/function |
| Comments | Comment only what code cannot say - explain why, not what |
| Tech debt | Pay immediately or track the compounding interest |
| Testing | Non-negotiable professional obligation |
| Errors | Always check, always handle, every time |
| Next commit | Know exactly what you're committing before you start |
| Users | You are not the user - observe, don't assume |
Detailed References
Load these when you need deeper guidance on specific topics:
references/simplicity.md
When: Refactoring bloated code, making architectural decisions, deciding what to remove, questioning if features are needed. Covers: Beauty in simplicity, reduction over addition, improving by removing, code as design.
references/quality.md
When: Code review, enforcing standards, improving maintainability, designing APIs and interfaces. Covers: Boy Scout Rule, DRY principle, Single Responsibility, interface design, code as truth.
references/professionalism.md
When: Career decisions, team dynamics, handling pressure, technical debt discussions, attitude check. Covers: Professional responsibility, caring about code, long-term thinking, prudent debt management.
references/testing.md
When: Writing tests, handling errors, debugging issues, arguing for test coverage, writing comments. Covers: Testing as engineering rigor, error handling discipline, debugging strategy, comment guidelines.
references/learning.md
When: Professional development, skill building, code reading sessions, understanding complexity limits. Covers: Continuous learning strategies, deliberate practice, reading code, knowing your limits.
references/workflow.md
When: Planning work, commit strategy, user research, daily development practices. Covers: Know your next commit, you are not the user, version control practices, breaking things safely.
Checklist
Writing code:
- Single responsibility per function/class?
- Any duplication to extract?
- Anything removable without losing functionality?
- Names descriptive enough to skip comments?
- Would I maintain this for years?
Reviewing code:
- Leaves codebase cleaner?
- Error cases handled?
- Interface easy to use correctly?
- Matches existing patterns?
Debugging:
- Ruled out my own code first?
- Isolated problem systematically?
- Testing assumptions, not seeking confirmation?
Source
97 Things Every Programmer Should Know - O'Reilly, Creative Commons.
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
arxiv-search
Search arXiv preprint repository for research papers in physics, mathematics, computer science, quantitative biology, finance, and statistics. Use when finding academic papers, preprints, ML research, scientific publications. Triggers: arxiv, preprint, research paper, academic paper, scientific literature.
mft-research-experts
Run research orchestration for data quality, factor geometry, hypothesis validation, and incident forensics. Use when you need SHIP/KILL/ITERATE decisions with strict validation. Triggers: mft-strategist, data-sentinel, factor-geometer, skeptic, forensic-auditor, research pipeline, hypothesis validation, post-mortem.
datetime
Get current date and time in various formats. Use whenever you need the current date, time, timestamps, or formatted datetime values for any purpose (logging, file naming, scheduling, comparisons, etc.)
dev-experts
Apply opinionated developer personas for architecture decisions, production debugging, language-specific code review, comprehensive reviewer passes, and test strategy. Use when you need an architect plan, devops investigation, Rust/Python/C++ review, grumpy reviewer audit, or tester-driven test plan. Triggers: architect, devops, rust-dev, python-dev, cpp-dev, reviewer, tester, pre-merge review, refactor for maintainability.
polars-expertise
This skill should be used when the user asks about Polars DataFrame library (Apache Arrow) for Python or Rust. Triggers: "polars expressions", "lazy vs eager", "scan_parquet streaming", "convert pandas to polars", "pyspark to polars", "kdb to polars", "group_by_dynamic", "rolling_mean", "polars window functions", "asof join", "polars GPU", "polars parquet", "LazyFrame". Time series: OHLCV resampling, rolling windows, financial data patterns. Performance: native expressions over map_elements, early projection, categorical types, streaming.
venue-expert
This skill should be used when the user asks about "market microstructure", "exchange mechanics", "order book", "auction", "NBBO", "Reg NMS", "trading venue", "halt", "LULD", "tick size", "maker-taker", "price-time priority", "SIP", "direct feed", "TRF", "wholesaler", "PFOF", "best execution", "trade-through", "ISO", "opening cross", "closing cross", "NOII", "ITCH", "OUCH", or mentions specific exchanges (Nasdaq, NYSE, CME, Binance, SHFE, DCE, CZCE, CFFEX, INE, etc.). For Chinese futures: "CTP", "综合交易平台", "夜盘", "night session", "看穿式监管", "position limits", "持仓限额", queue position in Chinese markets, or Chinese product codes (rb, cu, sc, if, ic, i, j, ta, ma, etc.). Provides hierarchical venue expertise for research and debugging trading systems.
Didn't find tool you were looking for?