This may sound crazy, but my 7 year old daughter and I had the most fun with TIC-80 (https://tic80.com) and Lua. She is very comfortable with the notion of writing a program that's later run, as well as the concept of variables. The only thing I wish TIC-80 had is an easy way to prompt user to input a string. This feature would be a game-changer for TIC-80 as a programming education platform.