RM 3 vs RM 4

So hereā€™s my current thought on the two.

Rule machine 4 is way more flexible, but takes a lot more thinking and time to put a rule together.

Rule machine 3 is less flexible and for me, a thousand times faster to toss a rule together.

What are some of your thoughts?

Ok.

Thoughts - some things are easier in RM 3, some are easier in RM 4. Some things aren't even possible (in a single rule) in RM 3 that are possible in RM 4. :man_shrugging:

The only thing I really miss about Rule 3.0 is that a common paradigm in many rules took fewer clicks. Say you have a trigger of "contact sensor changed" in RM 4. Most commonly, you then have to manually build an IF...ELSE...END-IF in your actions, whereas before you could just use something like "contact sensor open" and had the "Actions for True" and "Actions for False" sections already there waiting for you, which were effectively the same. But I understand that this was harder to figure out for new users. Something still seems difficult for some, however, since you'll often see people post questions where they still use "contact sensor open" as a trigger and can't figure out why their ELSE never runs (assuming their IF tests for the previously mentioned condition)--it's because it will never be true.

I do think this is a bit closer to how webCoRE works for people who are used to creating typical conditional-based pistons there. The difference is that webCoRE is basically just a giant "actions" section and guesses what your "triggers" should be for you based on where your conditionals appear. Rule Machine requires you to specify them yourself. So something like if contact sensor opens with an else block in webCoRE is a trigger that will fire every time the sensor changes; you just don't have to think about that part. Maybe that's whats confusing people?

In any case, a lot of rules I see people asking for help with are things that could be easily handled with Motion Lighting, Simple Lighting, or Notifications, and for users who are new to the platform, I'd strongly encourage them to use these or other built-in apps instead. Trying to create a new rule on your first day before you've had a chance to see how Hubitat's event-driven model works in action is quite an undertaking, albeit one that 4.0 probably made a bit easier (no need to decide what type of "rule" to create up-front).

I agree with a lot of this.

I do get confused with triggers myself.

My biggest gripe is the length of time it takes putting together an if statement, where as in rm 3 it does it for you fairly quick. You just need to put ā€œandā€ ā€œorā€ etc....

This used be be a bit difficult for some in WebCore too. Some of the statements were not triggering anything.

  • If myContactSensor is open Then...
  • If myContactSensor Changes to open Then...

You could recognize the trigger with the lightning icon.
I think this has changed in later versions.

I personally like a more programming style flow, like Lua in Domoticz (but hate the yaml in Hass). But as long as i can do what i need i'm ok (except for the yaml that is).