What is working now? The alarm is connected to a raspberry pi so I can hook into it. Now it arms/disarms at a set time each day so I don't have to remember to do it. It can text/email me when states that I care about have changed - like when the power is out, or the alarm goes off.
Z-wave - for a few light switches that really matter to me, mostly outside lights. Most are on a cron job to do what I want, but a web UI lets you take control.
Wi-fi thermostat with an API - no 3rd part website needed. Why can't they all be this way? I can turn the system off when I'm out of town and fire it up before I get home. I also wrote some stuff to log usage each day along with the weather. Adding the alarm system status with the HVAC status and it will text me if the A/C is running and a window is open.
Garage door, custom GPIO hack to the opener. Now with the alarm status it can make sure it is shut each night. I can open/close it from a web page, but that is rarely used.
Alexa skill - this is the latest piece and the only one that needs Internet to keep working (except sending email, of course). It ties into all the other pieces and gives voice control to the parts that make sense for me. I won't let it disarm the alarm, I just don't trust a 3rd party to do that.
I pieced this together so I could learn and have something to play with, but now it is just nice. The best part is if something quits working, I'm not left in the dark like the guy in the article - I just have to get off my butt and hit the light switch or walk out and open the garage door.
I have something against smart home stuff that requires the company to stay in business and keep their servers up and running, but that comes at a cost - I have to roll my own. At least I know who to complain to when it is broken.