If you are a Samsung Galaxy S, either the Vibrant (T-Mobile) or Captivate (AT&T) model, then you will be interested to know that unlock codes are now available, allowing you to switch between both carriers if you like.
The folks on xda-developers discovered much to their surprise that unlock codes for the Android handset are stored covertly on handset. Rather than on some remote server under lock and key, the unlock code is stored in a .BAK file on the internal SD card.
These codes are a snap to find, that all you require would be a hex editor and key the code right in whenever you insert a new SIM card. Those who have tried it claimed that both the Captivate and Vibrant were unlocked in under five minutes.
The unlock code opens up the door to the possibility of running a T-Mobile Vibrant on AT&T’s 3G network and an AT&T Captivate on T-Mobile’s network, though the Captivate reportedly only connected via EDGE. Good news! If you have to return a handset for warranty purposes, you are fortunate as the process does not require you to root your phone and the handset can be re-locked with minimal effort.
A full tutorial for how to unlock the Samsung Galaxy S is here.