skills/thinking-second-order/SKILL.md
Think beyond immediate consequences to second and third-order effects. Use for strategic decisions, policy changes, and avoiding unintended consequences.
npx skillsauth add tjboudreaux/cc-thinking-skills thinking-second-orderInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Second-order thinking, articulated by Howard Marks, moves beyond immediate effects to consider what happens next, and what that leads to. First-order thinking is simplistic ("This action solves the problem"); second-order thinking asks "And then what?" repeatedly.
Core Principle: The obvious answer to "What should I do?" is often wrong because it ignores downstream effects.
Decision flow:
Decision with consequences beyond immediate? → yes → APPLY SECOND-ORDER THINKING
↘ no → First-order may suffice
| Situation | First-Order | Second-Order | |-----------|-------------|--------------| | Team is slow | Add more engineers | More engineers → more coordination → slower decisions → may get slower | | Users complain | Add the feature they request | Feature → complexity → more support load → less time for core work | | Costs too high | Cut spending | Cuts → reduced quality → customer churn → revenue drop → worse situation | | Bug in prod | Hotfix immediately | Hotfix → skip testing → more bugs → trust erosion → slower deployments |
Decision: Add a feature flag system
First-order: Teams can ship features independently ✓
Chain the consequences:
Feature flags → More flags created → Flag debt accumulates
→ Teams don't clean up → Combinatorial testing complexity
→ Bugs from flag interactions → "Turn it off" becomes risky
→ Flags become permanent → Codebase complexity explodes
Evaluate impact across time horizons:
| Timeframe | Question | Analysis | |-----------|----------|----------| | 10 minutes | How will I feel right after? | Relief—problem solved | | 10 months | How will this affect things in 10 months? | Flag sprawl emerging | | 10 years | What's the long-term trajectory? | Technical debt crisis |
Ask: "What if everyone did this?"
Decision: Skip code review for urgent fixes
If everyone: All urgent fixes skip review
Result: Definition of "urgent" expands → most things skip review
Outcome: Quality collapses, more urgent fixes needed
┌─────────────────┐
│ Decision: X │
└────────┬────────┘
▼
┌─────────────────┐
│ 1st Order: A │ ← Obvious, intended
└────────┬────────┘
▼
┌─────────────────┐
│ 2nd Order: B │ ← Less obvious
└────────┬────────┘
▼
┌─────────────────┐
│ 3rd Order: C │ ← Often counterintuitive
└────────┬────────┘
▼
┌─────────────────┐
│ Feedback Loop │ ← May reinforce or counteract
└─────────────────┘
1st: Optimize critical path → Faster
2nd: Team focuses on optimization → Less feature work
3rd: Premature optimization spreads → Complexity increases
4th: Maintenance burden grows → Slower overall
1st: Hire senior engineers → More capacity
2nd: Salary expectations rise → Budget pressure
3rd: Junior engineers feel stuck → Attrition
4th: Knowledge concentrated in seniors → Bus factor risk
1st: Add approval process → More oversight
2nd: Approvals create bottleneck → Slower delivery
3rd: People route around process → Shadow processes
4th: Formal process becomes theater → Worst of both worlds
1st: Skip tests to ship faster → Feature delivered
2nd: Bugs emerge → Support load increases
3rd: Team fights fires → Less time for features
4th: More shortcuts taken → Quality death spiral
For any significant decision, fill out:
## Second-Order Analysis: [Decision]
### Immediate Effect (1st Order)
[What happens right away]
### Near-Term Consequences (2nd Order)
[What does the immediate effect cause? 1-3 months]
### Medium-Term Consequences (3rd Order)
[What do the near-term effects cause? 3-12 months]
### Long-Term Trajectory
[Where does this path lead? 1+ years]
### Feedback Loops
[Does this create reinforcing or balancing dynamics?]
### If Scaled
[What happens if this becomes standard practice?]
### Revised Decision
[Given analysis, what should we actually do?]
"First-level thinking is simplistic and superficial, and just about everyone can do it. Second-level thinking is deep, complex, and convoluted."
The crowd uses first-order thinking. Competitive advantage comes from thinking one level deeper—seeing what happens after the obvious effect.
tools
Improve by removal rather than addition. Focus on what to stop doing, eliminate the negative, and subtract complexity. Use for system simplification, process improvement, and feature prioritization.
data-ai
Apply TRIZ (Theory of Inventive Problem Solving) methodology to resolve technical contradictions and find innovative solutions. Use for engineering design, breaking through impossible constraints, and systematic innovation.
development
Test ideas through hypothetical scenarios when empirical testing is impractical. Use for architecture evaluation, edge case analysis, ethics considerations, and strategy development.
data-ai
Identify and manage the bottleneck; improvements elsewhere don't matter until the constraint is addressed. Use for performance optimization, process improvement, and resource allocation.