33
Rewriting not recommended Dirk Haun www.haun-online.de/accu/

Rewriting not recommended

Embed Size (px)

DESCRIPTION

Why you shouldn't rewrite an existing application from the ground up (English version).

Citation preview

Page 2: Rewriting not recommended

Google Summer of Code

• Google pays students $4500 to work on Open Source projects

• 175 projects involved

• Deadline: April 7

• code.google.com/soc/

Page 3: Rewriting not recommended

Rewriting of Applications

Page 6: Rewriting not recommended

Why do we want to rewrite something?

• Rational:

Problems with the architecture

• Irrational:

Programmer's Ego

Page 17: Rewriting not recommended

Can it really only get better?

• Sometimes there isn't a better solution

• Old mistakes

‣ Environment,Time pressure

• New mistakes

‣ Learning process

Page 20: Rewriting not recommended

Personally I believe that some systems just require some love, and radical refactoring, to breathe new life into them.

-- Tim Penhey

Page 26: Rewriting not recommended

Planning is an important learning exercise, (...)Plans, on the other hand, are overrated.

-- Mary Poppendieck

Page 29: Rewriting not recommended

To summarize ...

Page 30: Rewriting not recommended

• Loss of ...

‣ Customers / Market Share / Money

‣ Functionality

‣ 3rd-party applications

• repeating old mistakes

• new architecture, new mistakes

Risks

Page 31: Rewriting not recommended

Remedies

• Refactoring instead of Rewriting

• Test Driven Development, Agile

• Cause studies:

‣ What went wrong the last time?

• Improve communication

Page 33: Rewriting not recommended

Credits

• Photos via flickr.com, thanks to: Hopkinsii, striatic, paul goyette, Kazze, adrenalin, ikelee, Auntie P., Regorio, frozenchipmunk, Kevin Labianco, fallsroad, photo.bugz, tim_d, lagiuspo, Nathan James, ladyphoenixx_1999, Grim Reaper With A Lawnmower, re-Verse, amuk2006, Pathfinder Linden, Gigglejuice, manuki

Photos and Flickr usernames are links.