So, recently, when my kids again asked about "learning to program", we came across the amazing #microstudio IDE¹. You develop your games online, collaboratively, in Microstudio script (or Lua or Python), and it can export to web, desktop or mobile.
They were familiar with #Scratch, but the next step into using actual code - syntax errors on top of the logic errors - is always daunting.
So, after a few experimental projects in different directions, and building on the microstudio jump & run examples, we decided to join this month's #FediJam (#FediJam3) and hoist the sails.. 
We're now one week in. It's been a fun venture into not only programming, but also managing expectations, focusing on a game mechanic and essentially what the player sees. Not too heavy on the programming for them (dealing with syntax errors is tough), but the collaborative IDE allows them to interactively change everything and discover the effects, and to contribute with game assets and see how they magically (cough) pop up in the game. Highly recommended!
So now we spend a good part of the weekends sitting around the family table, each on a laptop, cursing like pirates, tinkering and playtesting. Arrgh!
¹https://microstudio.dev