Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
OLD CODE, NEW TRICKSOR, HOW I LEARNED TO LOVE LEGACY CODE AND YOU CAN, TOO.
By M. Scott Ford
Founder, Corgibytes @mscottfo...
@mscottford
WHY WAS THIS MY FAVORITE PROJECT?
@mscottford
DISSATISFIED?
WHY WAS I SO
• Product vs. Services?
• Desktop vs. Web?
• Startup vs. Enterprise?
• Hacker vs. C...
@mscottford
PRODUCT LIFE CYCLE
INTRODUCTION
GROWTH
MATURITY
DEVELOPMENT
@mscottford
PRODUCT LIFE CYCLE
INTRODUCTION
GROWTH
MATURITY
DEVELOPMENT
OBSCURITY
DECLINE
@mscottford
PRODUCT LIFE CYCLE
INTRODUCTION
GROWTH
MATURITY
DEVELOPMENT
OBSCURITY
DECLINE
MAKING
@mscottford
PRODUCT LIFE CYCLE
INTRODUCTION
GROWTH
MATURITY
DEVELOPMENT
OBSCURITY
DECLINE
MAKING
????
@mscottford
PRODUCT LIFE CYCLE
INTRODUCTION
GROWTH
MATURITY
DEVELOPMENT
OBSCURITY
DECLINE
MAKING
MENDING
MAKERS VS MENDERS
@mscottford
@mscottford
MAKERS
• Speed to Market
• Rapid Prototyping
• Minimum Viable Product
• Likes Experimenting
• Energized by Big...
@mscottford
MENDERS
• Repair Technical Debt
• Reduce Entropy
• Bug Fixes & Integrations
• Likes Stable & Steady
• Energize...
@mscottford
DEVELOPER LANDSCAPE
HACKER CRAFTSMAN
@mscottford
DEVELOPER LANDSCAPE
HACKER CRAFTSMAN
MAKING
MENDING
@mscottford
DEVELOPER LANDSCAPE
HACKER CRAFTSMAN
RAPID
PROTOTYPING
MAKING
MENDING
@mscottford
DEVELOPER LANDSCAPE
HACKER CRAFTSMAN
RAPID
PROTOTYPING
SOLID
MAKING
MENDING
@mscottford
DEVELOPER LANDSCAPE
HACKER CRAFTSMAN
RAPID
PROTOTYPING
SOLID
FIRE 

FIGHTING
MAKING
MENDING
@mscottford
DEVELOPER LANDSCAPE
HACKER CRAFTSMAN
RAPID
PROTOTYPING
SOLID
FIRE 

FIGHTING
????
MAKING
MENDING
@mscottford
DEVELOPER LANDSCAPE
HACKER CRAFTSMAN
RAPID
PROTOTYPING
SOLID
FIRE 

FIGHTING
SOFTWARE

REMODELING
MAKING
MENDI...
SOFTWARE REMODELING
@mscottford
SOFTWARE REMODELING
@mscottford
activities that reduce software entropy
@mscottford
SOFTWARE ENTROPY
@mscottford
Modification increases complexity,
unless a conscious effort is made.
Using software means
continuous modifica...
@mscottford
The longer it’s been
since the last time a
program has been
modified, the more
expensive it will be
to make th...
BULLDOZE VS REMODEL
@mscottford
@mscottford
WHEN TO REMODEL?
@mscottford
WHEN TO REMODEL?
FEATURES 

YOU HAVE
@mscottford
WHEN TO REMODEL?
FEATURES 

YOU HAVE
FEATURES 

YOU NEED
@mscottford
WHEN TO REMODEL?
FEATURES 

YOU HAVE
FEATURES 

YOU NEED
REMODELING

JUSTIFICATION
@mscottford
REMODELING PRINCIPLES
@mscottford
REMODELING PRINCIPLES
Language

Matters
project?
How do you describe a
LEGACY
@mscottford
@mscottford
WHAT COLOR IS YOUR FIELD?
• Talking positively about our work helps us feel good about it.
• Consider the following:
@mscottford
LANGUAGE MATTERS
NE...
• Some terms used by the Agile community begin to break down
when talking about existing projects.
• Consider the followin...
@mscottford
Modern 

Techniques
REMODELING PRINCIPLES
Language

Matters
• Would a doctor treat you using only medical knowledge
available in the year you were born?
• When working on an old hous...
@mscottford
Modern 

Techniques
REMODELING PRINCIPLES
Language

Matters
Respect

The Past
• Look at work as a form of software archaeology.
• Practice giving and receiving critiques.
• Retrospective Prime Directi...
• How to give a good critique:
–Critique the code: never the author.
–Call attention to the good things, 

as well as oppo...
@mscottford
Modern 

Techniques
Systems, 

Not Goals
REMODELING PRINCIPLES
Language

Matters
Respect

The Past
• Goals work great for initial launch, not so well for maintenance.
– Ex: Better to establish system where tests are added...
• Some of our favorite tools for creating maintenance systems:
– Style Cops (rubocop, FxCop)
– Linters (jslint, csslint, x...
QUESTIONS?
@mscottford
@mscottford
Contact Info
@mscottford
corgibytes.com
Upcoming SlideShare
Loading in …5
×

of

Old Code, New Tricks Slide 1 Old Code, New Tricks Slide 2 Old Code, New Tricks Slide 3 Old Code, New Tricks Slide 4 Old Code, New Tricks Slide 5 Old Code, New Tricks Slide 6 Old Code, New Tricks Slide 7 Old Code, New Tricks Slide 8 Old Code, New Tricks Slide 9 Old Code, New Tricks Slide 10 Old Code, New Tricks Slide 11 Old Code, New Tricks Slide 12 Old Code, New Tricks Slide 13 Old Code, New Tricks Slide 14 Old Code, New Tricks Slide 15 Old Code, New Tricks Slide 16 Old Code, New Tricks Slide 17 Old Code, New Tricks Slide 18 Old Code, New Tricks Slide 19 Old Code, New Tricks Slide 20 Old Code, New Tricks Slide 21 Old Code, New Tricks Slide 22 Old Code, New Tricks Slide 23 Old Code, New Tricks Slide 24 Old Code, New Tricks Slide 25 Old Code, New Tricks Slide 26 Old Code, New Tricks Slide 27 Old Code, New Tricks Slide 28 Old Code, New Tricks Slide 29 Old Code, New Tricks Slide 30 Old Code, New Tricks Slide 31 Old Code, New Tricks Slide 32 Old Code, New Tricks Slide 33 Old Code, New Tricks Slide 34 Old Code, New Tricks Slide 35 Old Code, New Tricks Slide 36 Old Code, New Tricks Slide 37 Old Code, New Tricks Slide 38 Old Code, New Tricks Slide 39 Old Code, New Tricks Slide 40 Old Code, New Tricks Slide 41 Old Code, New Tricks Slide 42 Old Code, New Tricks Slide 43 Old Code, New Tricks Slide 44
Upcoming SlideShare
Programação simultânea em pares
Next
Download to read offline and view in fullscreen.

35 Likes

Share

Download to read offline

@mscottford DEVELOPER LANDSCAPE HACKER CRAFTSMAN Old Code, New Tricks

Download to read offline

@mscottford
DEVELOPER LANDSCAPE
HACKER CRAFTSMAN
RAPID
PROTOTYPING
SOLID
FIRE 

FIGHTING
SOFTWARE

REMODELING
MAKING
MENDING

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all
  • powerirs

    Sep. 2, 2021
  • 2muni

    May. 16, 2019
  • VikashKumar1344

    Nov. 23, 2018
  • JusticeBajeri

    Nov. 5, 2017
  • MikeHewitson

    May. 10, 2017
  • ChristianArtnerYanni

    Oct. 11, 2016
  • kixkixson

    Sep. 8, 2016
  • jhadfield

    Aug. 1, 2016
  • vershatrivedi

    Apr. 12, 2016
  • JedidjaBourgeois

    Jan. 8, 2016
  • virajs

    Dec. 3, 2015
  • MarcioApF

    Nov. 5, 2015
  • liverpool456

    Sep. 11, 2015
  • LucileClaud

    Sep. 7, 2015
  • AkitoTanikado

    Aug. 27, 2015
  • LunatikFIvesixx

    Aug. 16, 2015
  • unixcoder

    Aug. 13, 2015
  • TimGreene6

    Aug. 12, 2015
  • ssuserd6ca61

    Aug. 11, 2015
  • omaruriel

    Aug. 10, 2015

@mscottford DEVELOPER LANDSCAPE HACKER CRAFTSMAN RAPID PROTOTYPING SOLID FIRE 
 FIGHTING SOFTWARE
 REMODELING MAKING MENDING

Views

Total views

12,087

On Slideshare

0

From embeds

0

Number of embeds

374

Actions

Downloads

59

Shares

0

Comments

0

Likes

35

×