For a couple of years now I've been operating in the Electric Imp ecosystem but finally abandoned it because it doesn't offer enough local support for the device such that an Imp powered gadget could serve its own interactive web page when offline. What it clearly does get right though is having an Agent in the cloud working in tandem with each local device - protecting and nurturing the little bit of WiFi enabled hardware. The fully featured Imp Agent can be extremely useful but it's not always required, really the only functionality I would say was absolutely necessary was the ability to take in external connections so that things like IFTTT can push events to the ESP8266 over a websocket or long-polled HTTP connection.
I'm inevitably repeating myself because it's seems like a binary choice with only half a bit - open a port and use a DNS service to get a URL to my home network.