Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Python, DOT, and Visualising Legacy Code The La...
Search
John Chandler
June 03, 2011
Programming
23
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
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
17
Snowboarding Saved My Software Career
metaljoe
0
14
Neurodiversity in Tech
metaljoe
0
68
Neurodiversity Lightning Talk
metaljoe
0
18
Tackling a Legacy Codebase with (Micro)Services
metaljoe
0
14
Regular Expressions
metaljoe
0
18
Testing Workshop - Part 1 (PyConUK 2011)
metaljoe
0
25
Testing Workshop - Part 2 (PyConUK 2011)
metaljoe
0
16
Test Driven Development (A Short Introduction)
metaljoe
0
16
Other Decks in Programming
See All in Programming
なぜCTOを降りてFDEを選んだのか?〜なぜプロダクト企業がFDEで顧客の現場に踏み込むのか〜
gonta
1
230
Kotlinの15年とServer-Side Kotlin
n_takehata
1
160
JAWS-UG 東京支部が始める、JAWS-UG支部コラボ / JAWS-UG lunchtime LT Collaboration
y0hgi
0
300
残高管理から台帳サービスへの進化
artoy
1
210
Rでドレミ/Do-Re-Mi_with_R
florets1
0
130
APNsからLive Activityを開始する話
yumnumm
0
170
ActionController meets Protocol Buffers
sorah
0
670
golang-bob.pdf
iwatsukayura
0
130
Kotlinize Is Not Just Converting to Kotlin
chigichan24
1
180
学びを記事・スライド・Xへ高速展開する― AI-assisted Learning Loopで回すコンテンツ生成術
ochtum
0
100
ジョジョの世界をXRで再現する
mofurune
0
180
作れる、でも消せるか?──安全に「枯らして消す」機能削除術 / Drain, Then Delete
chobishiba
2
900
Featured
See All Featured
エンジニアに許された特別な時間の終わり
watany
109
250k
Done Done
chrislema
187
17k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
20k
My Coaching Mixtape
mlcsv
0
360
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
280
sira's awesome portfolio website redesign presentation
elsirapls
0
460
Intergalactic Javascript Robots from Outer Space
tanoku
273
28k
Testing 201, or: Great Expectations
jmmastey
46
8.3k
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
870
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
580
The SEO Collaboration Effect
kristinabergwall1
1
600
Thoughts on Productivity
jonyablonski
76
5.4k
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