That sounds good until you try to do anything sophisticated. For example there are no comparison operations ("when outdoor temperature - indoor temperature >=5 degrees"), the delays that are offered are limited (and don't seem to work in many circumstances), the programming environment is extremely clumsy, there are no debugging tools (eg logging), etc etc. You can make some progress by running HomeBridge (which allows you to control non-HomeKit accessories and, more usefully, provides a variety on synthetic accessories like virtual weather stations, sun position, virtual switches, virtual timers, ...
You can make even more progress by running Home Assistant. Similarly to HomeBridge, it will allow you to forward all non-homekit compatible devices to homekit, but its also it's own standalone Home Automation platform. You can write your own automations in there, you can fully debug them, you can view raw sensor/event data coming in.
These days, I use HomeKit so that I can control my devices through my phone when I want to manually control them - but almost all automations are in HomeAssistant. The only ones still in HomeKit are location based ones.