I feel that the vast majority home automation tech got the whole thing backwards.
They start with "we can do this" and then "let's see what we can bolt it on".
Instead, they should've started with small things like being able to toggle every existing switch from your phone. Let lazy people be lazy efficiently. Now that has a mass appeal and would've led to a better adoption. Once this is in place, then you can build on it - dimmers, hues, scheduled and presence lighting/heating, etc. Once this is done, accepted and integrated in everyday life, move to more advanced gadgetry.
"toggle every existing switch from your phone"
Home automation is not intuitive. It turns out that toggling every existing switch from your phone is not an ideal goal. Pulling out your phone to use your home automation gets annoying fast.
The best home automation is a system that works without intervention. A good analogy is a digital thermostat vs a traditional analog one. A digital thermostat has the ability to change temperature targets depending on time of day and day of the week.
The best type of switches are the ones that work without intervention. The most common is the sunset porch lights and the sunrise alarm clocks. Other good ones are humidity sensors that trigger bathroom fans, TV/stereo/console that turns on when you pick up your game controller, floor lights that trigger only at night when it senses movement, lights that change color temperature and lumens depending on time of day, etc.
Speaking of that last thing, what's the best way to implement different brightnesses based on time in HA's yaml? I could do a bunch of ifs in each automation but there might be a better way?