Smart contracts are being suggested as the building block of "autonomous corporations" (implying "do anything!") yet nearly anything meaningful basically has to interact with the real world through agents external to the contract for most business cases. Given this severe limitation, could someone clarify what the whole shebang is supposed to be about? I actually saw Vitalik speak last week or so here in Shenzhen cam…
Think of a blockchain a OSS Visa like payment network where you and anyone else can build their own apps, be it something as trivial as a multi-sig or a token exchange, for instance. From this angle, I think it makes more sense to investigate Ethereum and smart contracts in general.
Regarding accessing external data, that is done via oracles and is a well researched topic with some notable implementations (Oraclize, Town Crier, etc), but I'd venture that the most common way to integrate a web3 with web2 is and will be at a middleware level, not directly on a smart contract.