Why can't things be built to just use local TCP/IP connections? Those work just fine on my local network, and they work just fine if I flip my VPN on when I'm not on my local network. Anything that actually needs some kind of server piece should have a server that can run locally.
[0] https://productforums.google.com/forum/#!topic/calendar/Uhfp...
Simplicity, possibly. Vendor lock-in, probably.
I'm in the same boat. I wanted a weather station that didn't cost several hundred units of currency but also let me query it directly instead of having to hit Weather Underground or (FSM help us) a vendor's web site with no API. Only a handful of them do this so I wound up rigging up what I wanted using a Raspberry Pi, a USB-connected weather station, some extra sensors, and several lines of PHP.
Why I'd want to subject my light bulbs or coffee pot to that is beyond me.
How can the smart-fridge company sell your eating habits if your fridge only tells you (and not them) how you're using it?
https://nest.com/support/article/Do-I-need-Wi-Fi-to-use-Nest...
There is nothing that the Nest cam does, apart from offsite backup, that requires it to contact the company's servers. Everything else can be local only with VPN for remote access.
I just wish there was an open standard, secure, home device discovery and management protocol.