Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
refactoring
Search
coldclimate
July 16, 2012
Technology
1
130
refactoring
a talk about making code more betterer. Contains invented words and a little swering
coldclimate
July 16, 2012
Tweet
Share
More Decks by coldclimate
See All by coldclimate
You don't scale like servers scale
coldclimate
0
140
Quick and dirty load testing with Vegeta
coldclimate
3
4.2k
Continuously deploying https served statically compiled sites to S3 with canonical domains
coldclimate
0
73
Scripting creating AWS based servers
coldclimate
0
310
Scaling CANDDi
coldclimate
0
290
Other Decks in Technology
See All in Technology
たかが特別な時間の終わり / It's Only the End of Special Time
watany
6
1.7k
Agents IA : la nouvelle frontière des LLMs (Tech.Rocks Summit 2025)
glaforge
0
410
こがヘンだよ!Snowflake?サービス名称へのこだわり
tarotaro0129
0
110
ML PM Talk #1 - ML PMの分類に関する考察
lycorptech_jp
PRO
1
550
一億総業務改善を支える社内AIエージェント基盤の要諦
yukukotani
8
2.8k
Capture Checking / Separation Checking 入門
tanishiking
0
120
直接メモリアクセス
koba789
0
140
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.3k
pmconf2025 - 他社事例を"自社仕様化"する技術_iRAFT法
daichi_yamashita
0
550
生成AI・AIエージェント時代、データサイエンティストは何をする人なのか?そして、今学生であるあなたは何を学ぶべきか?
kuri8ive
2
1.9k
MS Ignite 2025で発表されたFoundry IQをRecap
satodayo
3
240
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
3.3k
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.3k
4 Signs Your Business is Dying
shpigford
186
22k
Facilitating Awesome Meetings
lara
57
6.7k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
36
6.2k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.4k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
380
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
120
20k
Into the Great Unknown - MozCon
thekraken
40
2.2k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.6k
Transcript
Refactoring Oli Wood @coldclimate
What How Tools When
2,300 lines single file no classes 2 years old
"too important to risk breaking it"
"make it do this..."
what
replacing what is there with something new
that does exactly the same thing
same functionality
...faster
...securer
...extendable
...maintainabler
...more better
how
work out what it actually does (you think)
...high level
fits into a couple of paragraphs
...low level
function by function docblock it
find out what it actually does
including the bits everybody forgot
document its API/interface/what ever
unit tests*
Redesign it
high level logical grouping
Class structure
...think design patterns (maybe)
work out where you are going
...and get there step at a time
...nail the bit you're working on
...don't have too many balls in the air
...#TODO this thing you will forget
...#SHOULDDO ace thing you might do later
...keep running the tests
...and stop at 80%
tools
sublime text
redacted
grep -Rin
phpunit
Selenium
ghetto tests (curl > Apache logs > *nix > diff)
code formatters
php codesniffer
php coding standards fixer
when
Refactoring is a good sign you're thinking about the code
...constant refactoring is geek circle jerk
...man up and live with it
...when it stops you doing something more important
...when you know what you're doing
...once the cost of not doing it out weighs that
of doing it
...when can't stand it any more
16 files object orientated does exactly the same thing
2 new modules Several £k income Multi-developer
A confession
FIN