Skip to content

Learning Graph Quality Metrics Report

Overview

  • Total Concepts: 485
  • Foundational Concepts (no prerequisites, other concepts depend on them): 1
  • Terminal Nodes (nothing depends on them, but have prerequisites): 225
  • Orphaned Nodes (completely disconnected, no edges): 0
  • Concepts with Dependencies: 484
  • Average Dependencies per Concept: 1.89

Graph Structure Validation

  • Valid DAG Structure: ✅ Yes
  • Self-Dependencies: None detected ✅
  • Cycles Detected: 0

Foundational Concepts

These concepts have no prerequisites:

  • 1: Computer Program

Dependency Chain Analysis

  • Maximum Dependency Chain Length: 15

Longest Learning Path:

  1. Computer Program (ID: 1)
  2. Source Code (ID: 2)
  3. Module Import (ID: 19)
  4. MicroPython (ID: 31)
  5. MicroPython Modules (ID: 46)
  6. machine.Pin Class (ID: 109)
  7. Pin.OUT Mode (ID: 110)
  8. Digital Output (ID: 106)
  9. Pulse-Width Modulation (PWM) (ID: 135)
  10. PWM Frequency (ID: 136)
  11. Passive Buzzer (ID: 341)
  12. Tone Generation (ID: 343)
  13. Musical Note Frequencies (ID: 344)
  14. Play a Melody (ID: 346)
  15. Mario Theme Program (ID: 347)

Terminal Nodes Analysis

Terminal nodes are concepts that nothing else depends on but have prerequisites. They represent natural endpoints of learning paths — culminating or specialized concepts.

  • Total Terminal Nodes: 225 (46.4% of all concepts)
  • Healthy Range: 5-40% of total concepts

Concepts at the end of learning paths:

  • 11: Tuple
  • 13: If-Else Statement
  • 18: Return Value
  • 21: Indentation in Python
  • 22: Comment in Code
  • 24: Input Validation
  • 28: Comparison Operators
  • 29: Logical Operators
  • 30: Assignment Operators
  • 36: VS Code IDE
  • 39: rshell Tool
  • 42: Interactive Mode
  • 44: Boot.py File
  • 45: Main.py File
  • 50: sys Module
  • 56: ESP8266 Microcontroller
  • 60: Raspberry Pi 500 Keyboard
  • 61: Micro:bit
  • 68: USB Power
  • 73: VBUS Pin

...and 205 more

Orphaned Nodes Analysis

Orphaned nodes are completely disconnected concepts with no inbound AND no outbound edges. These indicate a quality problem — every concept should connect to the graph.

  • Total Orphaned Nodes: 0

✅ No orphaned nodes detected. All concepts are connected to the graph.

Connected Components

  • Number of Connected Components: 1

✅ All concepts are connected in a single graph.

Indegree Analysis

Top 10 concepts that are prerequisites for the most other concepts:

Rank Concept ID Concept Label Indegree
1 46 MicroPython Modules 25
2 31 MicroPython 24
3 149 machine.I2C Class 21
4 153 SPI Protocol 21
5 62 GPIO Pin 18
6 79 Voltage 18
7 80 Current 18
8 145 I2C Protocol 15
9 106 Digital Output 14
10 52 Raspberry Pi Pico 13

Outdegree Distribution

Dependencies Number of Concepts
0 1
1 152
2 251
3 68
4 10
5 3

Recommendations

  • ℹ️ High terminal node percentage (46.4%): Consider if some terminal concepts should be prerequisites for advanced concepts
  • DAG structure verified: Graph supports valid learning progressions

Report generated by learning-graph-reports/analyze_graph.py