graph-thinking
Graph Thinking - Non-Linear Problem Solving
Mental model for visualizing complex relationships and connections between ideas, concepts, or data points. Evolved from Graph-of-Thought (GoT) reasoning that mirrors human cognition.
When to Use This Skill
- Mapping feature dependencies in product development
- Analyzing stakeholder relationships
- Understanding system architectures
- Exploring interconnected concepts
- Designing recommendation systems or knowledge graphs
- Identifying opportunity areas through network analysis
Core Concepts
Graph Elements
| Element | Description |
|---|---|
| Nodes | Individual elements or concepts |
| Edges | Relationships or connections between nodes |
| Clusters | Groups of highly connected nodes |
| Pathways | Routes through the network |
| Centrality | Measures identifying most important nodes |
| Topology | Structural arrangement of connections |
Graph-of-Thought (GoT) Reasoning
Traditional (Chain-of-Thought):
A → B → C → D → Conclusion
Graph-of-Thought:
┌─── B ───┐
│ │
A ──┼─── C ───┼──→ Synthesis → Conclusion
│ │
└─── D ───┘
↑
Feedback Loop
GoT enables:
- Combining arbitrary thoughts into synergistic outcomes
- Distilling networks of thoughts for clarity
- Enhancing ideas using feedback loops
- Non-linear exploration of solution spaces
Fundamental Principles
First Principles Thinking
Break down complex problems into fundamental truths:
Surface Level:
"We need more marketing"
↓
Why?
↓
"Not enough customers"
↓
Why?
↓
Root Truth:
"Value proposition unclear to target audience"
Second-Order Thinking
Demand deeper analysis by asking "And then what?":
Decision: Reduce prices by 20%
First-order: More sales
Second-order: Lower margins → Less R&D budget
Third-order: Competitors catch up → Price war
Fourth-order: Race to bottom → Industry commoditization
Non-Linear Processing
Unlike sequential thinking:
| Sequential | Graph-Based |
|---|---|
| One path at a time | Multiple paths simultaneously |
| Linear information flow | Multi-directional exploration |
| Fixed order | Iterative refinement through loops |
| Single conclusion | Synthesized insights from multiple angles |
Analysis Framework
Double Diamond Model
Apply divergent and convergent thinking cycles:
DISCOVER DEFINE DEVELOP DELIVER
(Diverge) (Converge) (Diverge) (Converge)
/\ \/ /\ \/
/ \ / \ / \ / \
/ \ / \ / \ / \
/ \ / \ / \ / \
/ \ / \ / \ / \
Explore Focus on Generate Focus on
problem specific diverse optimal
space challenges solutions implementation
Step 1: Map the Nodes
Identify all relevant elements:
Product Launch Analysis:
Nodes:
├── Stakeholders
│ ├── Customers
│ ├── Engineering
│ ├── Marketing
│ └── Leadership
├── Features
│ ├── Core functionality
│ ├── Nice-to-haves
│ └── Technical debt
├── Constraints
│ ├── Timeline
│ ├── Budget
│ └── Resources
└── Dependencies
├── External APIs
├── Infrastructure
└── Regulatory
Step 2: Define Relationships (Edges)
Document connections between nodes:
Edge Types:
├── Dependency: A requires B
├── Influence: A affects B
├── Correlation: A and B move together
├── Conflict: A competes with B
└── Synergy: A enhances B
Step 3: Identify Clusters and Patterns
Find highly connected groups:
High Centrality (Critical Nodes):
├── Authentication service → 12 dependencies
├── Database layer → 8 dependencies
└── API gateway → 6 dependencies
Clusters:
├── User-facing features (tightly coupled)
├── Backend services (loosely coupled)
└── Third-party integrations (isolated)
Step 4: Analyze Pathways
Trace routes through the network:
User Journey Graph:
Landing Page
↓
[Sign Up] ←→ [Social Login]
↓
Onboarding
↓ ↓
Quick Start Full Setup
↓ ↓
└─────┬─────┘
↓
First Value
↓
↙ ↓ ↘
Churn Retain Upgrade
Output Template
After completing analysis, document as:
## Graph Thinking Analysis
**Subject:** [What you're analyzing]
**Analysis Date:** [Date]
### Node Map
| Category | Nodes | Centrality |
| -------- | ------- | -------------- |
| [Cat 1] | [Nodes] | [High/Med/Low] |
| [Cat 2] | [Nodes] | [High/Med/Low] |
### Relationship Matrix
| From | To | Relationship | Strength |
| ---- | --- | ------------ | -------- |
| [A] | [B] | [Type] | [1-5] |
### Key Insights
1. **Clusters identified:** [Description]
2. **Critical paths:** [Description]
3. **Bottlenecks:** [Description]
4. **Opportunities:** [Description]
### Recommendations
| Priority | Action | Rationale |
| -------- | -------- | --------- |
| High | [Action] | [Why] |
| Medium | [Action] | [Why] |
Application Examples
Feature Dependency Mapping
Feature: Real-time Collaboration
Dependencies:
├── WebSocket infrastructure
│ ├── Connection management
│ └── Message queuing
├── Conflict resolution
│ ├── Operational transforms
│ └── CRDT implementation
├── Presence indicators
│ └── User state sync
└── Permissions
├── Document access
└── Cursor visibility
Stakeholder Analysis
HIGH INFLUENCE
│
Keep Satisfied │ Manage Closely
┌─────────────────────┼─────────────────────┐
│ │ │
│ Executives │ Product Owner │
│ Compliance │ Key Customers │
│ │ │
LOW ──────────────────────┼────────────────────── HIGH
INTEREST │ INTEREST
│ │ │
│ General Users │ Power Users │
│ IT Support │ Dev Team │
│ │ │
└─────────────────────┼─────────────────────┘
Monitor │ Keep Informed
│
LOW INFLUENCE
System Architecture Analysis
Microservice Graph:
API Gateway [Centrality: 0.95]
│
├── Auth Service [0.82]
│ └── User DB
│
├── Product Service [0.71]
│ ├── Catalog DB
│ └── Search Index
│
├── Order Service [0.68]
│ ├── Order DB
│ └── Payment Gateway (external)
│
└── Notification Service [0.45]
└── Email Provider (external)
Critical Path: Gateway → Auth → Product → Order
Bottleneck: Auth Service (single point of failure)
Best Practices
Do
- Visualize relationships - Draw the graph, don't just describe it
- Iterate continuously - Graphs evolve as understanding deepens
- Measure centrality - Identify the most critical nodes
- Look for clusters - Natural groupings reveal system structure
- Trace pathways - Understand how information/value flows
Avoid
- Over-connecting - Not everything relates to everything
- Ignoring edge types - Different relationships have different meanings
- Static thinking - Graphs change over time
- Missing feedback loops - Circular dependencies are significant
- Forgetting weights - Some relationships are stronger than others
Integration with Other Methods
| Method | Combined Use |
|---|---|
| Five Whys | Trace causal chains through the graph |
| Business Canvas | Map relationships between canvas elements |
| Jobs-to-be-Done | Connect user needs to feature nodes |
| Hypothesis Tree | Structure experiments as branching graphs |
| Stakeholder Map | Visualize influence and interest relationships |
Tools
Visualization
- Mermaid - Code-based diagrams in markdown
- Graphviz - Programmatic graph generation
- Excalidraw - Hand-drawn style diagrams
- Miro/FigJam - Collaborative whiteboarding
Analysis
- Gephi - Network analysis and visualization
- Neo4j - Graph database for complex queries
- NetworkX - Python library for graph algorithms
Resources
More from flpbalada/fb-skills
progressive-disclosure
Reduce complexity by revealing information progressively. Use when designing
7discuss-task
Clarify ambiguous tasks before action. Use when goal, scope, success criteria, constraints, or risks are unclear.
4cognitive-fluency-psychology
Apply cognitive fluency principles to improve clarity, trust, and conversion.
4react-useeffect-avoid
Guides when NOT to use useEffect and suggests better alternatives. Use when reviewing React code, troubleshooting performance, or considering useEffect for derived state or form resets.
4discuss-code
Critically discuss code issues with compact findings. Use when code needs review for logic, simplicity, structure, naming, or maintainability.
4learn
Extract reusable patterns from the current session. Use when errors, debugging techniques, workarounds, or project conventions should become skills.
3