Limitations
There are too many options in home automation. So, I imposed some limitations to allow me to narrow my focus:
Wi-Fi
For DIY projects, use latest Raspberry Pi running latest raspbian
python3
Apache2
bash
html, css
sqlite3
no monthly fees
minimize dependence on servers outside my home
no special purpose protocols and hubs (wink, zigbee, Lutron Caseta)
no closed systems
must work with Alexa
If I can buy a commercial product that is much better than anything I can build or it's just much cheaper, than I will buy instead of make. Examples of buy are: Echo, Nest and Ring.
Also, my preference is to use Apple products, such as, iPhone and MacBook. But, you can use a PC. The primary difference between a Mac and Windows is the use of a terminal window and SSH on a Mac, versus Putty and SSH on Windows. Putty will open a terminal window on Windows. Sometimes I use scp to transfer files between a Mac and a Raspberry Pi. I am not sure of the equivalent command on Windows.