P.s. one thing that I would suggest would be to take things apart - telephones (if they still exist) audio equipment, whatever you can find to take apart and put back together again, although again this idea was easier in the past when things had stuff in them other than just an smd microchip.
Buy an RPi or an Arduino, and make cool stuff with it. Let your kid watch and help.
Then teach them basic Python and let them write parts of functions/scripts with MicroPython. That's how they get started.
I saw a boring, trivial
Hello world
Press any key to continue...
It did not spark any interest in me. Programming was a mundane experience until math and programming were linked later.I was much more excited when I learned HTML at the age of 13/14. The fact that I could change text in a real web page on a browser was mind-blowing.
That's why I do microcontrollers and suggest them always.
The fact that you can change stuff in the physical, real world by editing a text file - is so tremendously powerfull for a beginner!
Get some LEDs, a display, a servo motor, and so on, and let them watch and help.
Then let him alter the sourve file to change light blinking patterns and such.
There are some basics around something in the game called "redstone" that let's you build simulated electrical circuits. But with mods you can branch out into nearly any concept.
For missing mods you can branch out into programming. It's also multiplayer so you can play it with him or he can play with his friends. Setting up a server to play with friends can also be a fun learning experience.
kids imho shouldn't be allowed much screen time.
Also, limiting games and social media is just going to make them want it more. Also, as others have mentioned, Minecraft is a great way to get them in to computers. Perhaps be a bit more open minded?
The Pygamer device is a handheld keyboard-less computer and there are other programmable devices, too, like the Circuit Playground that I think would interest a 5 year old in pair-programming.
Because the project uses the Blockly editor, kids can understand and follow the code flow visually before they are able to understand the script.
Perhaps best of all, it's free, runs in an emulator in the browser, creates fully open code, and has no ads.
All other age levels can be found there as well. I like it because it breaks it down to the correct level and language for different age groups, and has a progression of skills and terms to help build them up to the vocabulary that we all use and take for granted.
FWIW, it is not the only curriculum out there. A decent keyword to search to find more is "K-5 Computer Science". Read a few, take your pick.
I'm also getting into ODROID. A curriculum around open handhelds, consoles, and peripherals is what's needed here...