Mark Willis wrote about a couple of things Apple should do to improve their products. The first has been a constant frustration for me since the first release iPhone.
[There are] really two issues; first that the iPhone doesn’t keep data flowing gracefully and imperceptibly between sources – it needs to flatline before it tries an alternative, which is clunky – and second, that app developers don’t consistently code for the interruption and resumption of data in a graceful way. Third-party code will always vary in quality, but if Apple could make data access smoother, it wouldn’t matter so much.
Switching from wi-fi to 3G has rarely been seemless. I am not sure if Willis’ solution is the best or if some smarter one-size-fits-all automation is best. Regardless, this is a real problem that I hope is addressed soon.