I can't speak to Scratch, but have been using a variety of low code tools over the years, both kid and not.
To enunciate my issue more clearly, I'd phrase it more as "Turing efficiency." I.e. "How cleanly and concisely can I implement an arbitrary advanced concept in a language/tool?"
If you have to construct a Rube Goldberg machine from the primitives afforded... that's interesting (in an Incredible Machine kind of way) but probably not ideally educating.
I certainly wouldn't want to have to support similarly architected code in production! ;)
And I think it isn't always clear to kids that "clever hacks" picked up over years of experimenting aren't the same as "good code" in more powerful languages. By that point, some of "well, that's what coding is" has been internalized.
To enunciate my issue more clearly, I'd phrase it more as "Turing efficiency." I.e. "How cleanly and concisely can I implement an arbitrary advanced concept in a language/tool?"
If you have to construct a Rube Goldberg machine from the primitives afforded... that's interesting (in an Incredible Machine kind of way) but probably not ideally educating.
I certainly wouldn't want to have to support similarly architected code in production! ;)
And I think it isn't always clear to kids that "clever hacks" picked up over years of experimenting aren't the same as "good code" in more powerful languages. By that point, some of "well, that's what coding is" has been internalized.