I mostly stayed hands-off and let him explore where he would. He really only got into programming more seriously the past couple years, so age 13 on, after we got him a gaming PC. He was playing various Roblox games, and decided he could write his own, so that got him started. He has his phone on bus rides to/from school, so he decided to play around in Python to pass the time. He's currently playing Space Engineers with some friends online, and they've all apparently decided the most fun for now is to learn C# for the internal scripting functionality that game provides.