The code we developers write is like a child. It shouldn't be. The problem with being protective about your own code is that there is a barrier to change it. But the code is bad, contains lots of bugs, or worse, does not fulfill any requirement that it should.
That's why we should be very liberal to throw away code if we need to, especially if it is our own code.