this post was submitted on 01 Oct 2023
180 points (98.4% liked)

Programming

17509 readers
7 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities [email protected]



founded 1 year ago
MODERATORS
 

Hi all,

My 8 year old is asking if he can learn how to program. He has asked specifically if I could set him up with a ‘programming kit with lessons’ for a Christmas present. I’d like to support this, and it seems like it’s not a transient interest as he’s been all over scratch, and using things like minecraft commands for the last year. I have an old (pre 2017) MacBook Air I can set up for this. How do I / what would you advise I set up for him, to a) keep him safe online (he’s 8!) and b) give him the tools he needs in a structured way.

I am not a programmer. I know enough bash/shell and basic unix stuff to be dangerous and I was a front end dev a very long time ago, but I wouldn’t call myself a programmer and don’t know what concepts he needs to learn first.

Hugely appreciate any advice, thanks.

Edit: So I posted this then had a busy family day and came back to so many comments! I will methodically go through these all, thanks so much.

A couple of things on resources: he has expressed interest in 3D worlds and I noticed comments on engines, but wonder if that’s too advanced?

Totally agree with the short feedback loop rather than projects that take days.

He has an iPad 6 and I’m happy to pop a Linux distro on the Air, so certainly open to that.

So many links to research. Hugely grateful.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 70 points 1 year ago (5 children)

Everyone else's suggestions are great.

Get them a copy of Factorio, it's a game, but it's all about computer science fundamentals, architecture, pipelining, busing, data integrity, etc. It's a visual game, but it'll scratch the itch of programming. It'll get them to think.

Buy the hardware projects, the little ones with either a pic, an Arduino, something that does something physical. A little bit of programming. To make a thing happen. So they can experiment.

Look at the software robot competitions, there's a couple on steam, there's couple elsewhere, you can do it as a family project, whiteboard out the logic of what your robot will do, and you can write it together. And see how it acts.

Just make sure anything you get, has a very small feedback loop, so they can iterate very quickly. That'll keep them engaged and exploring. You don't want to get a daunting project that's going to take weeks to see any output. You want things on the order of minutes, or even seconds to see what happens

[–] [email protected] 18 points 1 year ago (2 children)

Ah, haven't thought about factorio. On that matter 7 Billion Humans is a cool game that can teach the basic logic behind programming.

[–] [email protected] 5 points 1 year ago (1 children)

Seconding all of the above. Also tis 100 and exabots. All games by that developer actually.

[–] [email protected] 5 points 1 year ago (1 children)

I love Zachtronics, but I think their games are very ambitious for 8 years old. Maybe teenager with some discreet logic skills under the belt.

[–] [email protected] 2 points 1 year ago

You are absolutely right, I overlooked the age.

[–] [email protected] 1 points 1 year ago

"send me your favorite base" is probably a better programming interview than most

[–] [email protected] 4 points 1 year ago* (last edited 1 year ago)

Get a breadboard. Get a bunch of wire for it. And do small projects with the breadboard in a controller. It's fun to move the wires around. You can even build a tiny 8-bit computer with a breadboard. And have a do things like output of display. It's very tactile and hands-on. Excellent visual. There's excellent YouTube tutorials up there for breadboard projects.

https://www.youtube.com/channel/UCS0N5baNlQWJCUrhCEo8WlA

This guy has some excellent breadboard projects. Find an easy one. And do it together with your child

[–] [email protected] 3 points 1 year ago

Also, remember Human Resources Machine. Its a puzzle game thats actually a progamming language

[–] [email protected] 3 points 1 year ago (2 children)

If you get them factorio then they'll just play that all day instead of learning programming

[–] [email protected] 1 points 1 year ago

factorio is programming