I recently ran across Juno: New Origins [1] (formerly SimpleRockets 2), which is a game where you build your own rockets / cars / drones / etc. Not only is it a great introduction to basic physics and maths concepts, the game also has a visual programming language that is so similar to Scratch I initially thought it must be some kind of plugin for Scratch.
The beauty of this for novices is that it's a relatively gentle, and not overly open entry into the world of programming. Initially, you may use it to hard-code and automate some repetitive tasks, like setting camera and target settings on your rockets. Soon after, you might create a script to auto-launch a rocket, with various degrees of intelligence or hard-codedness. Later on, you might create auto-hover, auto-land and similar scripts, which also get you into the world of basic physics equations, possibly various coordinate systems, etc.
All the while, you're essentially having fun, and can always leave the programming to the side for a while if you're stumped. I think it's an ideal way for kids to learn a lot of basics.
The beauty of this for novices is that it's a relatively gentle, and not overly open entry into the world of programming. Initially, you may use it to hard-code and automate some repetitive tasks, like setting camera and target settings on your rockets. Soon after, you might create a script to auto-launch a rocket, with various degrees of intelligence or hard-codedness. Later on, you might create auto-hover, auto-land and similar scripts, which also get you into the world of basic physics equations, possibly various coordinate systems, etc.
All the while, you're essentially having fun, and can always leave the programming to the side for a while if you're stumped. I think it's an ideal way for kids to learn a lot of basics.
[1] https://store.steampowered.com/app/870200/Juno_New_Origins/ (the Steam page seems to do a better job of explaining the game