I do it because it makes sense for me. I usually buy the 16GB version for $200 and jailbreak/unlock it. I keep it for a year and when the new phone comes out, I sell my unlocked, contract-free phone on Craigslist for around $400. Then I pay $450 for the new iPhone. It costs me $450 instead of $200 because I'm not yet eligible for a free upgrade. The next year, I am eligible for an upgrade, sell my unlocked phone again for $400 and buy the new one for $200.
Keeping your phone unlock-able makes it so easy to get a nice price for it on Craigslist and even after the tax and $18 upgrade fee, I only end up paying around $100 one year to upgrade to the latest phone. Then the next year, I end up coming out $100 ahead (because I now have the free upgrade eligibility). It all balances out but I get the latest iPhone every year.
If that's not a cool story, bro, I don't know what is.
BTW, where do you find a new iPhone for only $450? Don't they start at $699 out of contract?