Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Python, DOT, and Visualising Legacy Code The La...
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
John Chandler
June 03, 2011
Programming
21
0
Share
Python, DOT, and Visualising Legacy Code The Lazy Way
Presentation to the London Python Code dojo in 2011.
John Chandler
June 03, 2011
More Decks by John Chandler
See All by John Chandler
Everything I've Learnt from Russel Winder's Talks, in 5 Minutes (A Tribute)
metaljoe
0
16
Snowboarding Saved My Software Career
metaljoe
0
13
Neurodiversity in Tech
metaljoe
0
60
Neurodiversity Lightning Talk
metaljoe
0
15
Tackling a Legacy Codebase with (Micro)Services
metaljoe
0
13
Regular Expressions
metaljoe
0
17
Testing Workshop - Part 1 (PyConUK 2011)
metaljoe
0
22
Testing Workshop - Part 2 (PyConUK 2011)
metaljoe
0
14
Test Driven Development (A Short Introduction)
metaljoe
0
14
Other Decks in Programming
See All in Programming
AWSはOSSをどのように 考えているのか?
akihisaikeda
0
120
Back to the roots of date
jinroq
0
870
書籍「ユーザーストーリーマッピング」が私のバイブル
asumikam
4
490
ローカルLLMでどこまでコードが書けるか / How much code can be written on a local LLM
kishida
2
360
UaaL×Androidアプリのメモリ計測 — Memory Profilerの先へ
rio432
0
160
Liberating Ruby's Parser from Lexer Hacks
ydah
2
2.7k
GoogleCloudとterraform完全に理解した
terisuke
1
200
TypeScriptだけでAIエージェントを作る フロント・エージェント・インフラのフルスタック実践
har1101
1
470
Kubernetesを使わない環境にもCloud Nativeなデプロイを実現する / Enabling Cloud Native deployments without the complexity of Kubernetes
linyows
3
410
プラグインで拡張される Context をtype-safe にする難しさと設計判断
kazupon
0
160
サーバーレスで作る、動画データ管理基盤
oyasumipants
0
210
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
380
Featured
See All Featured
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
120
sira's awesome portfolio website redesign presentation
elsirapls
0
240
Unsuck your backbone
ammeep
672
58k
Side Projects
sachag
455
43k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.6k
Statistics for Hackers
jakevdp
799
230k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
910
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
Reality Check: Gamification 10 Years Later
codingconduct
0
2.1k
Transcript
Python, DOT and Visualising Legacy Code The Lazy Way (C)
John Chandler 2011
Legacy PHP Code! Noooooooooooooo!!!!
Deep Breaths. Visualise the Code.
Laziness Part 1: Use Python to Analyse Dependencies
Write a PHP Parser in Python? Or use a regular
expression... (include|require)(?:_once)?[ (]["']([^"']+)["']
Laziness Part 2: Use Graphviz to Draw The Diagram
Graphviz supports DOT. DOT is a graphing mini-language
digraph foo { node1 [label=“Node 1”]; node2 [label=”Node 2”]; node1
-> node2; }
$ dot -Tpng -O foo.dot
WTF. Looks like some refactoring to do
Source is available under GPL v3 from: http://www.bitbucket.org/metaljoe/qadpid