Deleting my unused Google data, accidentally saw one post I wrote in early 2010 on blogger, it still interests me, so, copy and paste here.
Code refactoring is like living in your own house, you need to clean up the garbage.
Porting code is like living in others' house, you know it's messy, but can't decide which are garbage to abandon, which are useful things to keep.
After a period, you have your stuff which are easy for you to decide whether to abandon, and few old legacy stuff are abandoned since no use.
But suddenly, you find out you can't differentiate which are your stuff, which are the legacy stuff.
You may say, well, forget the mess, it's not mine, I'm not sure it's useless or not, but, the truth is, it's yours.
Some day, you can't stand the messy house, you buy a new one.