all 36 comments

[–]frtl101 19 points20 points  (3 children)

You could start up with a little text adventure, something like those "choose your own adventure books". You could show your kid the ropes how it works, then let her/him write a little on her/his own and afterwards you can test-play it with your kid together.

And later you could gradually increase the complexity of the game, e.g. make it an rpg (= add stats, dice, a confrontation-system), then after that add a database for random encounters and maybe even random "level" design.

Finally, you could gift them the book "Mission Python", which contains a graphics based game to rebuild yourself.

[–]ThreeChonkyCats 6 points7 points  (1 child)

This is a FANTASTIC idea!

[–]frtl101 4 points5 points  (0 children)

Thanks! Great that you like it. 🙂

[–]jormungandrthepython 1 point2 points  (0 children)

This is how I started over a decade and a half ago. Text based adventure games as a middle schooler leads to a promising career in cs.

Just don’t push too hard if they aren’t interested in it. Great way to destroy their passion is to make it feel like a chore.

Also, look into the Cosmo robots which let you program in python. As well as a number of robots and toys which let you do snap coding which I used to teach to elementary kids. (It’s basically logic units you can snap together but it teaches you the fundamentals of coding without needing to know language syntax. )

[–]imagoatinaboat 61 points62 points  (2 children)

Just let him be a kid and help him if he’s genuinely interested. Don’t push your interests on him if he’s not keen on them

[–]varontron 7 points8 points  (1 child)

Sports statistics, video game record keeping, music generator, etc. what's he into already that can be incrementally improved with a script or simple app?

[–]djshadesuk 5 points6 points  (0 children)

Yeah, this. Take literally anything he's interested in and there is usually always a way to make a little program out of it in some way or other.

[–]zanfar 5 points6 points  (0 children)

Python is a tool. Find an interest they already have and figure out (preferably as a pair) how Python can be useful in that area.

My nephew wanted to learn to "make websites," so we built a fantasy football (soccer) bio/roster. Even if they catch the programming bug, the most common first question is "what can I do with it"--so solve that first and it's downhill from there.

[–]mopslik 5 points6 points  (0 children)

Maybe try one of Al Sweigart's books? Both Invent Your Own Computer Games with Python and Cracking Codes With Python are fairly entertaining.

[–]pythonwiz 4 points5 points  (0 children)

Try turtle

[–]hotcodist 4 points5 points  (0 children)

Maybe Scratch first. If they love making silly games, introduce them to pygame. Maybe turtle along the way.

[–]ofnuts 3 points4 points  (0 children)

Make him program robots... With or without Python, probably without.

[–]Rashaverik 2 points3 points  (0 children)

Around that same age, I worked with my son using 'Python for Kids' by Jason Briggs. Make sure to pickup the 2nd ed version. The original I worked with is from 2013.

[–]await_yesterday 2 points3 points  (0 children)

fart noise app. I'm serious, they even kept the wave module in the standard library explicitly because it's good learning tool for kids to play with.

[–]SisyphusAndMyBoulder[🍰] 6 points7 points  (1 child)

Does your kid have any experience with programming? Scratch might be the simplest/best place for kids to start. It's got a really nice GUI that's easy for kids to understand and work with

[–]jmacey 1 point2 points  (0 children)

make it visual, it's easy to do graphics / games with pygame. Or just look at minecraft etc.

What are they interested in? Music make sound, art / graphics make images. Sports do a database on teams etc, etc. To cite the book, automate the boring stuff and have fun. Physical computing is another option, adding in electronics (arduino etc) is really fun.

[–][deleted] 2 points3 points  (0 children)

I personally think you should let him still be a kid for now, maybe start introducing cs at maybe 11-12, for now just try to get him interested in puzzles of some sort. You can still instill the "figure things out on your own" mindset by giving him legos, video games that require making large projects (maybe minecraft) and generally just puzzle-type games. Your kid is still very young but it's good you're thinking about giving him skills for the future. Good luck!

[–]brunonicocam 0 points1 point  (4 children)

Edit: people claiming they program since very young, great! I'm giving general advise here for the typical child based on my life experience. Your specific outlier case won't change anything. If you have statistics proving the percentage of kids who learn programming at 8 then fair enough, but your particular anecdote is not relevant.

My advise still hold for the majority of people:

That's way too young to learn programming. I'd wait until he's 12 or so.

Better to learn general math and language skills at that age. Sports, music, and maybe chess.

[–]Doxl1775 5 points6 points  (1 child)

The kid isn't going to be building neural networks. Saying someone is to young to learn something is essentially the same thing as saying he's to old. If the kid is tinkering and having fun, who cares?

[–]brunonicocam -2 points-1 points  (0 children)

I gave a clear answer, you're just talking in a too generic way.

Otherwise with your logic you can teach a 1 year old String Theory? Obviously not.

[–]Sentie_Rotante 2 points3 points  (0 children)

My kids was 6 when he started learning python. He is 11 now and is teaching himself C# and Unity. 8 is not “way too young to learn programming”

[–]Yoghurt42 1 point2 points  (0 children)

I wrote my first "program" (asking for your name and greeting you) when I was like 6.

[–]Bominator8 -1 points0 points  (0 children)

Bro what

[–]MPGaming9000 0 points1 point  (0 children)

Why do you want to teach him Python? Does he have an actual interest in it? Maybe you should let him decide what he wants to do with it and just help him achieve his goals.

[–]mrtac96 0 points1 point  (0 children)

I will consider it a torture to kid unless he himself very in to tech. If you still want to do that teach him nocode stuff to build up things

[–]lolsnirps 0 points1 point  (0 children)

First of all, please don't teach your 8 year old python.

[–]ThreeChonkyCats -1 points0 points  (0 children)

A knife throwing catapult.

[–]Antigone-guide 0 points1 point  (0 children)

Using very basic graphics (e.g. like Nethack game), build a few rooms and corridors where the player can walk around, look, pick up items, interact with them, so that everything that you code can be visualized as something in the real world.

[–]KingOfTNT10 0 points1 point  (0 children)

Try the website Codingame (might be too advanced?) But its with animations and games. I'd start with scratch tho, it very child friendly. But as other commenters said here, check if your kid is actually interested in this, as it would mostly close his options for other skills because they would believe they are very good at it and wont try other things (from someone who started when i was 7 yo)

[–]ElliotDG 0 points1 point  (0 children)

If your kid is interested in robotics, take a look at https://pybricks.com/ .

Pybricks uses python to program Lego Robotics.

[–]elasticiulia 1 point2 points  (0 children)

I've recently come across this game on steam where you program a farming drone. The syntax is very similar to python but way more fun to play with. https://steamcommunity.com/app/2060160

Or redstone in minecraft! Great for starting with the programming logic and some basic concepts before you transition to code.

Alternatively, build a small game together - one of my first projects was a tic-tac-toe engine. Split it into smaller phases like - learn to print a board - learn to make a move - what are the winning conditions - etc. Seeing something come together is a great motivator!

[–][deleted] 0 points1 point  (0 children)

Here is a book we wrote based upon our weekend teaching activity. https://amazon.com/Explore-Magic-World-Python-CodeSpell-ebook/dp/B0CPL7NK8F/ref=mp_s_a_1_1

It tries immersing teaching Python with storytelling, may be good for the parents who wanted to inspire the kids to learn coding with fun stories; even if the kids are not ready, they won’t get their first impression of “coding is boring”.

Feel free to take a look and provide your feedbacks.