179
submitted 1 year ago* (last edited 1 year ago) by foofiepie@lemmy.world to c/programming@programming.dev

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.

(page 2) 28 comments
sorted by: hot top controversial new old
[-] dansity@lemmy.dbzer0.com 3 points 1 year ago

There was a software developed in Bratislava called the Comenius Logo. It was specifically developed as a programming environment for kids and we did 2 full years learning it in primary school, I'm still thankful for my teacher for making kids learn this. He shouldn't have to do that it was not part of the program. I'm out of the education scene so I'm not sure if there are modern options to this but you may look it up as well. It uses a C-like code to move a turtle around the screen and draw shapes.

[-] krdo@lmmy.net 3 points 1 year ago

I was going to suggest something like Kaboom.js for simple game development, but their site is currently down...

[-] 257m@lemmy.ml 3 points 1 year ago

All the others have great suggestions but I'd just like to add there many open source projects out there and given example code of how something is done and letting him play with it can be tremendously helpful. For example finding some simple 3d programs and lettting him change the source code to do whatever he wants or just giving him a template like https://editor.p5js.org/1alimaze/sketches/IJpxIEME8 which I made when I was first learning and letting him play with the values and add more objects.

[-] fbmac@lemmy.fbmac.net 2 points 1 year ago
[-] MrJay@programming.dev 2 points 1 year ago* (last edited 1 year ago)

minecraft can work really well for learning how tp program, when I was 9 that is how I started, unfortunately its been a long time since I took that course but if you are willing to do the research there should be a some for server programming and java modding at least that is what I took over 11 years ago at this point, and maybe javascript for gametest framework for bedrock edition. there is also minetest which is a little better for learning but isn't minecraft so is a little bit more annoying but lets you modify basically anything you want which is very fun. also a great way to learn boolean algebra/circuit design in minecraft/minetest, redstone can be used to make micro computers like calculators, fun and can be applicable to making games in minecraft which makes it more engaging as well. also the minecraft commands can be put into a mcfunction file as you can imagine this can be generated by outputting text to the file, this is great because you learn file io and a programming language and mostly he would be using math to generate things so teaches math, its limited but that is something he would find fun that is super easy and can be done in basically any language.

redstone/mcfunctions I personally like this approach on top of the course because it gives him something useful so should hopefully encourage him to play and program after he finishes lessons and etc...

[-] Kissaki@feddit.de 2 points 1 year ago

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?

I most certainly wouldn't start out programming with / in 3d worlds.

Drawing 2D shapes seems like a good way to spark interest though, with immediate visual feedback.

[-] planish@sh.itjust.works 2 points 1 year ago

Alice is a pretty good 3D programming environment aimed at kids, with little programming blocks to snap together.

You might want to try going back into the archives and pulling out something like MS-DOS and QBasic, or Logo. You can find a good tutorial in book form, and you can get a system that was designed to be programmed offline, with things like local help in the editor instead of behind a Google search, so it should be 100% safe to leave the kid alone with the machine.

[-] antidote101@lemmy.world 2 points 1 year ago

Try a more advanced node based programming language that aligns more with a specific language. Something like NodeRed for Java...

...or maybe he's ready to try game development on something like Godot, which has a language a lot like python.

Python is apparently a good first language to learn.

[-] TheFogan@programming.dev 0 points 1 year ago

IMO set him up with some of the modern engines and tutorials... Godot 4, Unreal etc...

actually if you are looking for some stuff to have ready for him.

https://www.humblebundle.com/books/game-programming-with-c-unreal-packt-books?hmb_source=&hmb_medium=product_tile&hmb_campaign=mosaic_section_1_layout_index_2_layout_type_threes_tile_index_1_c_gameprogrammingwithcunrealpackt_bookbundle

If he has access to youtube there's also lots of really good tutorials etc... out there. Heartbeast has some awesome ones for godot etc...

[-] TigrisMorte@kbin.social -2 points 1 year ago
[-] swab148@startrek.website -2 points 1 year ago

Ground him into a room until he learns to make a game with only assembly, give him a Tandy to figure it out

load more comments
view more: ‹ prev next ›
this post was submitted on 01 Oct 2023
179 points (98.4% liked)

Programming

17314 readers
163 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 !webdev@programming.dev



founded 1 year ago
MODERATORS