I'm going to chime in here, against my better judgement ;)
There is nothing wrong with "why not both" - provide an escape hatch for the power users, but make the simple things simple, and obvious, and one click.
The Apex "language" is a bit esoteric - you can program interesting trees of behavior, but you're creating a cascade state machine with virtual outlets. But those aren't unlimited. The "neat" part is you can see the state of the logic tree by simply glancing at the dashboard (except for defer statements, or the like). However, you need to organize that view yourself, since nothing will draw the relationship graph for you.
The problem with the Apex is the user interface and paradigm was last refreshed by someone that had heard of PLC programming once over the telephone and really didn't know how to approach the problem of common interactions, so the "nice" parts are buried under a weird task UI which is behind a weird icon button which features often multiple possibly conflicting options on how to accomplish a task. Its somewhat the worst of both worlds - cascade programming like a bad form of relay ladder programming with a bad attempt at glossing over the ugly parts.
Contrast that with a visual programming system like Node Red which can do a lot of different actions cleanly. Easy to see data flow. More general programming support. Its a big lift for the "I just want my controller to turn on and off a heater" crowd, and it shouldn't be the _default_ interface.
I've never tried to drive a Hydros so I have no idea what it looks like.
Thanks for this post. I enjoyed your take on how tasks are implemented on the Apex. I came to a similar conclusion when evaluating the Apex. I didn't have any pre-existing bias or sunk cost, so I did look at both platforms objectively.
Ultimately, I went with Hydros because the task system in the Apex, while appealing to the tech nerd in me, felt like a bit of a dead end.
Hydros isn't perfect, however. While the implementation is superior and makes the most elaborate tasks trivial to set up in minutes, it does not have a visual guide for the user when creating these automations.
For example, let's say you want to set up something simple like a UV, Return pump, Skimmer, and a water level sensor.
You want the UV and skimmer to be off when the return is off, but you also want the skimmer to delay turning on for 5 minutes so that it doesn't flood.
If you think of those 3 devices as dominos and your finger as the sensor, Hydros gives you templates for each device where you set dependencies, min/off times, etc. So when you push the first domino of a return pump with the two behind it (UV and Skimmer), they turn off automatically because they depend on the Return Pump.
This works great, except I can't see these interaction maps visually like you can by looking at the code in the Apex because the automation/orchestration is set explicitly instead of implicitly. You sort of have to visualize it in your head, which isn't a huge deal, but I can see why Apex users would hate it and perceive it as inferior.