Software development for kids - where to start?

Software development for kids - where to start?

Author
Discussion

8bit

Original Poster:

5,154 posts

168 months

Our eldest lad (nearly 11) is a keen gamer and has expressed an interest in learning coding, ultimately with a view to developing games. I work in IT but not in software development so am aware of common languages, technologies etc. but don't use them so not sure where to start. I imagine we'd want to start him with something fairly accessible to get his head around the basics and concepts. He has a Chromebook which I cobbled together from an old Thinkpad and ChromeOS Flex so ideally he'd use that but we can work around that if need be.

A quick Google suggests things like Scratch, Tynker, Blockly etc., anyone got experience of these themselves or with their kids?

budgie smuggler

5,650 posts

172 months

Yes Scratch is a very good place to start. smile

phil4

1,427 posts

251 months

Scratch would be a really good way to start, doesn't need anything installing, can handle game elements nicely... and plenty of tutorials and follow alongs and pre-built games too.

eps

6,467 posts

282 months

Tuesday
quotequote all
Scratch is good - but at age 11 - they might start to run out of interest in that. It's quite powerful though and I haven't looked at it for a number of years now.

Python would be worth picking up - most secondary schools start with this.

budgie smuggler

5,650 posts

172 months

Tuesday
quotequote all
eps said:
Scratch is good - but at age 11 - they might start to run out of interest in that. It's quite powerful though and I haven't looked at it for a number of years now.

Python would be worth picking up - most secondary schools start with this.
Yeah Scratch is fairly basic TBF, and Python is great (and genuinely used in industry).
But the benefit of Scratch is that you can pick up the fundamentals without worrying about imports, env etc. It's just a tonne quicker to get started with. My kids don't have the longest attention spans so it really helped.

Scratch also integrates really easily with edu hardware like microbits, rPi and IIRC some lego. We had a Microbit which the kids liked a lot.

Totally agree Python is a great option though. I'll probably get my eldest going on that soon. smile

Edited by budgie smuggler on Tuesday 29th April 16:46

jesusbuiltmycar

4,829 posts

267 months

Wednesday
quotequote all
If your son play Minecraft I have seen a way of combining it with Python as a programming teaching tool - you can write simple Python scripts to build structures.

see: https://education.minecraft.net/en-us/resources/co...

When my son was younger I tried a few different "kibs coding" courses/platforms etc, and although he quickly lost interest at the time he now finds the programming side of GCSE computer science easy.

danb79

11,097 posts

85 months

Wednesday
quotequote all
This being the field I work in (recruiting, not developing) for the small unknown social media giant I work for... biggrin - I'd highly recommend Python, PHP/Laravel, HTML/CSS and the likes of Golang/Rust too etc. React/Node/JavaScript would be great also; they're probably the most sought after tech-stack etc

Solocle

3,753 posts

97 months

Wednesday
quotequote all
jesusbuiltmycar said:
If your son play Minecraft I have seen a way of combining it with Python as a programming teaching tool - you can write simple Python scripts to build structures.

see: https://education.minecraft.net/en-us/resources/co...

When my son was younger I tried a few different "kibs coding" courses/platforms etc, and although he quickly lost interest at the time he now finds the programming side of GCSE computer science easy.
I mean, a good Minecraft specific thing would be writing a mod. I remember doing quite a basic concrete one as a kid rofl

It's Java, but most of the infrastructure is already there, it's a fairly straightforward thing to do and see the results in the game.

ATG

21,932 posts

285 months

Wednesday
quotequote all
Scratch teaches kids event-driven asynchronous parallelism and object models from the very start without making it seem scary or "technical" in the slightest. It is really rather brilliant.

Python is a great language to use to learn more formal programming. It is multi-paradigm so you can use it to learn procedural, object oriented and functional (damn nearly) programming. It's as simple or as sophisticated as you like.

Edited by ATG on Wednesday 30th April 09:59

ATG

21,932 posts

285 months

Wednesday
quotequote all
Solocle said:
jesusbuiltmycar said:
If your son play Minecraft I have seen a way of combining it with Python as a programming teaching tool - you can write simple Python scripts to build structures.

see: https://education.minecraft.net/en-us/resources/co...

When my son was younger I tried a few different "kibs coding" courses/platforms etc, and although he quickly lost interest at the time he now finds the programming side of GCSE computer science easy.
I mean, a good Minecraft specific thing would be writing a mod. I remember doing quite a basic concrete one as a kid rofl

It's Java, but most of the infrastructure is already there, it's a fairly straightforward thing to do and see the results in the game.
My kid and I did this. I think we made a personalised TNT block with my son's name on it. Only took a few minutes. Nice way of demonstrating that the apps you use aren't magic and that you too can screw with them and build stuff for yourself.

jesusbuiltmycar

4,829 posts

267 months

Wednesday
quotequote all
Solocle said:
I mean, a good Minecraft specific thing would be writing a mod. I remember doing quite a basic concrete one as a kid rofl

It's Java, but most of the infrastructure is already there, it's a fairly straightforward thing to do and see the results in the game.
Mods is a different story

Son - Daddy do you know LUA I need a Roblox mod
Me - no but it is something we could probably do it at the weekend

30 Minutes later
Son - I asked ChatGPT - it created the Mod and told me how to in stall it

… at aged 13 he was an early adopter - he had only been released / became mainstream that week.