Have built a demo app with Ethereum in November. The tooling was ok, but not amazing. IMO one of the main problems is that you need trusted inputs for most "interesting" or "valuable" computations.
Developing on the platform right now is akin to writing software to run on a VM that has no operating system. The services that are being written right now can be thought of as the operating system (foundation) that everything that will come next is built on. To do the really interesting stuff you have to first build all of the really low level tooling to support it. There's a lot of talk about replacing Uber/AirBnB/…
At least a few years? LOL. I would give it 20 years.