> strongly recommend against building your entire business around a single platform
I see this statement a lot and I never understand it. If you're Zynga, should you build Farmville for OpenSocial and as an independent site too? The cost of doing this seems prohibitive.
Most businesses built on Facebook can be taken elsewhere if the cost of the Facebook platform starts to outweigh the benefits. Even Farmville can be ran independently, but consider how many users they'd lose in the transition and afterwards.
To clarify this point: the Facebook platform is provided gratis, but there are no contractual obligations preventing them from yanking, changing or breaking the service. As a business, you must ask yourself how easily you could adapt if they were to do so. Is that a risk you are willing to take?
tl;dr: Don’t put all your eggs in one basket, especially if said basket has a history of breaking.
Most smaller operations are going to be pretty much writing software for a primary target platform.
It is nice that there are technologies like cross-platform application framework or CSS, that let you create code for your target platform that you might just be able to port to another platform at a later date. But that doesn't take away from the fact that you're likely going to be betting on a given platform at a given time.
Perhaps what you want to say is "don't develop for a platform that will stand in the way of you porting at a later date" - indeed, all the walled-garden stuff seems to have this lock-in quality and would make sense to avoid - if you have a choice.