Building something like a Reddit or Twitter dapp (distributed app) on Ethereum is certainly an attractive idea, but the obvious question is "where do the messages get stored?" If an autonomous Git or Wikipedia were built on Ethereum the storage requirements would be even greater.
One of things that can't really be done yet in a decentralized manner is search. In an Ethereum smart contract it is possible to maintain some elementary lookup tables, but more advanced features such as full text search are generally not possible due to excessive processing and storage requirements on-chain.
There are a lot of good reasons to store blobs of text in Ethereum. For example, a decentralized Reddit clone could store all the messages in the blockchain. These messages would be uncensorable and archived for eternity. In theory IPFS could be used, but it does not guarantee the availability of the messages unless someone is actively storing them.
As the Ethereum eco-system is still very immature it can sometimes be very frustrating to develop on this platform. Gradually more tools are being developed that make it much easier, such as Browser Solidity.
Maker have released a new tool called Dapple. It's purpose is to provide a lot of scaffolding around dapp development. It comprises: package management, Solidity preprocessor (cog), Solidity testing, deployment and chain contexts.