Can we visualize software complexity?
summary
A static analyzer extracts module-to-module relations from Elixir source and renders them with hierarchical edge bundling in D3 so you can see hot modules, context clusters and cross-context edges. The prototype is on GitHub as iron/graph and runs locally via a provided Docker image or Node/D3 pipeline. Examples include fresh Phoenix, Ecto and Absinthe; a 26-module worst case yields about 26^2 ≈ 676 edges. Limitations: analysis is static, edges are undirected and runtime calls or cycles aren’t captured.
AI-written summary · about
chapters (4)
related talks
01h 07mVisualizing Connections
47mExploring a complex codebase with AI
23mPowerful (but Easy) Data Visualization with the Graph Gem
29mBuilding a Graph User-Interface for Malware-Analysis
32mCode More, Draw Less, and Debug Just a Little!
20mAttack of the Graph: Visual Tools for Cyber Analysis
25mPowerful (but Easy) Data Visualization with the Graph Gem
49mTreat Your Code as a Crime Scene
