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
Refactor Legacy Code
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
David Tanzer
January 30, 2017
Technology
96
0
Share
Refactor Legacy Code
A refactoring Kata I facilitated at the Coding Dojo Vienna
David Tanzer
January 30, 2017
More Decks by David Tanzer
See All by David Tanzer
Reversible Decisions for Better Software Design (VoxxedDays Zürich)
dtanzer
0
93
Grown Organically - Develop Software and Bonsai
dtanzer
0
47
Wachsen und Gedeihen: Bonsai und Software
dtanzer
0
73
Contract Testing with Pact
dtanzer
0
130
to-mock-or-not-to-mock.pdf
dtanzer
0
180
Slow Down to Move Faster (German)
dtanzer
0
160
Electron - How and Why
dtanzer
0
200
Agilität ist Unintuitiv
dtanzer
0
130
Agilität und Innovation
dtanzer
0
180
Other Decks in Technology
See All in Technology
ブラウザの投機的読み込みと投機ルールAPIを理解し、Webサービスのパフォーマンスを最適化する
shuta13
3
300
(きっとたぶん)人材育成や教育のような何かの話
sejima
0
680
全社統制を維持しながら現場負担をどう減らすか〜プラットフォームチームとセキュリティチームで進めたSecurity Hub活用によるAWS統制の見直し〜/secjaws-security-hub-custom-insights
mhrtech
1
270
AI飲み会幹事エージェントを作っただけなのに
ykimi
0
120
古今東西SRE
okaru
2
180
Building Production-Ready Agents Microsoft Agent Framework
_mertmetin
0
160
freeeで運用しているAIQAについて
qatonchan
0
480
色を視る
yuzneri
0
330
新卒エンジニア研修、ハンズオンの設計における課題と実践知/ #tachikawaany
nishiuma
2
140
世界の中心でApp Runnerを叫ぶ FINAL
tsukuboshi
0
260
SLI/SLO、「完全に理解した」から「チョットデキル」へ
maruloop
2
180
ボトムアップの改善の火を灯し続けろ!〜支援現場で学んだ、消えないための3つの打ち手〜 / 20260509 Kazuki Mori
shift_evolve
PRO
2
620
Featured
See All Featured
Are puppies a ranking factor?
jonoalderson
1
3.4k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
210
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
560
Skip the Path - Find Your Career Trail
mkilby
1
120
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
340
The Limits of Empathy - UXLibs8
cassininazir
1
320
Ethics towards AI in product and experience design
skipperchong
2
270
Automating Front-end Workflow
addyosmani
1370
200k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Docker and Python
trallard
47
3.8k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
130
Transcript
http://www.davidtanzer.net Let’s Refactor s o m e l e g
a c y c o d e !
http://www.davidtanzer.net http://socrates-conference.at
http://www.davidtanzer.net F o r k m e o n G
i t H u b : https://github.com/dtanzer/babystepstimer
http://www.davidtanzer.net Beware: v e r y b a d c
o d e !
http://www.davidtanzer.net Legacy Code ?
http://www.davidtanzer.net Legacy Code Code Without Tests Mike Feathers
http://www.davidtanzer.net Legacy Code Code that… • Is valuable • We
are afraid to change J.B. Rainsberger
http://www.davidtanzer.net Exercise...
http://www.davidtanzer.net g i t r e s e t -
- h a r d
http://www.davidtanzer.net Want more 2-Day React / Redux Training TDD /
Clean Code Training → Ask Me ;) ?
http://www.davidtanzer.net David Tanzer • Craftsperson • Player Coach • Team
Coach • Quality Obsessed @dtanzer
[email protected]
http://www.davidtanzer.net private String getCurrentHtml() throws ... { BabystepsTimer.timerPane.getText(); } Private
void clickOn(String link) { BabystepsTimer.timerPane .getHyperlinkListeners()[0] .hyperlinkUpdate(...); }