---
title: just scrap it
teaser:
tags: playbook
author: Jared Carroll
published_on: 2007-05-03
---

One problem with most of us developers is that we get too attached to our code.
Whenever someone changes it in any way or criticizes it any way someone gets
upset.

I used to be like this because like most of us, I thought my design was always
the best design.  As developers we need to lose our egos and be able to accept
criticism.  I don't care if I spent 1 hour, 1 day or 1 month on a piece of code;
if someone refactors it, removing pretty much all the work I did, then that's
fine.  I look at situations like those as learning opportunities because I
obviously didn't write the simplest thing that could possibly work.  The other
person can even be you.  Go ahead and reflect on those 5 classes you wrote the
other day, you knew they were wrong when you were writing them but hey, you had
to get it done by friday.  Don't be afraid to get in there and scrap 'em.  I do
this all the time and its never as much work as you think its going to be.

Code reviews are another favorite of most developers, that is for the reviewers.
There's nothing more fun than you and a bunch of your fellow developers grilling
some new hire about how terrible their code is.  But when you're the reviewee
don't take their advice personally.  Remember it, write it down and then go try
it out; you never know, you might actually be wrong.

The same thing can happen with your users.  We all know the situation, the user
says they want 'X', you implement 'X' and then they tell you its all wrong.
Don't get frustrated.  I know its easy to, especially if 'X' took you a lot of
time and effort to develop.  Just scrap 'X' and start over, who cares?  No big
deal.  This is an opportunity to reflect on what you wrote and to discover the
good and the bad.  The beauty of software is that you can always start over.
The only thing it costs you is time.  And this just means more money to charge
the client.
