So when I say just enough programming I mean programming concepts. The sorts of things that exist in almost every programming language, presented with the Rules DSL as the exemplar.
From that perspective it would some never have to change because the concepts never change and for the most part they way they are implemented in the Rules DSL are not something that will change because they are fundamental to how the language works.
Three posts and changes you are referring to are caused by the parse getting a little more strict and providing better error reporting as a result (i.e. some rules with errors used to work but now the errors can’t be ignored) or they’re are changes to how Rules are defined which is not a general programming subject but something very specific to Rules DSL.
And notice I keep saying Rules DSL instead of Xtend. Rules DSL != Xtend. There is some overlap but they are not the same.
All of them. Anything more specific belongs in the Rules docs, not in a separate tutorial or book.
Even if Kotlin were available tomorrow, the Rules DSL would remain the default rules engine for a good long time. No book I wore would become OBE anything soon.
No but it sure saves us a hell of a lot of time to be able to respond with a link to an answer instead of rewriting the same answer over and over.
I’d like to be able to respond with a link to this for some of the parts for help that show a complete lack of knowledge of how programming works (variables, if statements, etc.) The same way I can respond with links to the Beginner’s Tutorial and concepts section of the docs when users misunderstand let OH concepts.
Don’t hold your breath. Even using Scratch isn’t going to help self proclaimed noon technical people understand how to program rules. One of the reasons I actually like the Rules DSL is because it purposefully removed whole features of the Xtend language to provide a simpler programming environment for new users.
Having access to JSR223 languages, Kotlin, Scala et Al it’s not going to do anything to help those users. Experimental Rules Engine and perhaps if Chris resurects the rule builder in Habmin will. All these more robust languages are great for those of us who are already developers but they don’t help the non-technical folks at all. In fact they raise the already high barrior to entry even higher for these types of users.
Helping theses users to “think like a programmer” would be my goal. The rest is just learning syntax and libraries. And the Rules DSL doesn’t have too many of the latter and the former isn’t really all that bad.
Adding Kotlin or any of the other languages (you might consider Processing as well) are great for OH developers and great for those who are already programmers or inclined to learn. There are IMHO a step backwards for supporting the users who have never programers before and who just want to turn on their fan when the temp goes above a threshold.