The iPhone Dev Team has been hard at work on unlocking the iPhone 3G and to celebrate the new year they have now released the yellowsn0w 3G unlock application. There are a few things you need to do on your iPhone 3G before you can install this small utility. Also, this is still an early beta so there are some limitations that you will want to note.
Many people may ask why you would want to try to unlock your iPhone 3G and I think the main reason is so that you can use it when you travel outside of the country where you purchased your iPhone. Looking at some of the comments on the Dev Team blog it looks like usage in other countries is the most popular need for this capability.
If you are in the U.S. and you don't travel internationally then I don't see why you would really want to unlock it and use it on the slower T-Mobile network. I have an original iPhone that I use with my AT&T and T-Mobile SIMs, but most people only have one wireless carrier. I am perfectly happy with my original iPhone and won't be upgrading to a 3G to unlock and use it on T-Mobile.