I agree with this, it's generally a good idea to use services that don't lock you in and provide common interfaces so you can move your data or take in house at any time. Like http://www.mongolab.com for instance uses standard MongoDB and IronMQ (http://www.iron.io/products/mq/features) supports the beanstalkd protocol so at any point, you can take your data and easily switch just by changing endpoints.
How will AWS/RackSpace/SaaS software handle legacy data/ code in, let's say 10 years? I have no answer to that question and I bet few people have it but time is a tough mistress for computer software and data. The good thing when your data is not in the Cloud, especially when you don't control the inner mechanics of a database like SimpleDB is that you can migrate, change it the way you want at the moment you want. When you have no control over your data, well bad things could happen in the future.
Be smart, be patient.