Advice needed, son wants to learn how to program

https://lemmy.world/post/6087801

Advice needed, son wants to learn how to program - Lemmy.world

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.

I can recommend PICO-8, if you have access to any windows/osx/linux computer.

It’s a “fantasy console”, a self contained gamedev environment that emulates an 8bit retro console (while using Lua, a popular and modern language), is super user friendly, and allows you to get a satisfying and fast feedback loop when learning to code.

There are many resources to learn it and a lively community

PICO-8 Fantasy Console

PICO-8 is a fantasy console for making, sharing and playing tiny games and other computer programs.

This! But I also suggest Tic80 as a really nice free and open source alternative of Pico-8.

tic80.com

TIC-80 tiny computer

fantasy computer for making, playing and sharing tiny games

TIC-80 tiny computer
Actually I prefer to develop in TIC-80, but the community is way smaller, and TIC-80 games can’t be played on phones without a keyboard. It’s not a 1:1 alternative, tho I’m glad it exists.
Pico 8 is super frustrating at times. I wish they’d make a program to be a “Pico 8 dev kit” that has a larger resolution so the IDE is more readable. The IDE being so hard to work with makes me want to use a proper text editor but there are downsides with that too. It could keep the game’s resolution the same and only have a larger resolution for the IDE so the specs don’t change.

I agree with the resolution, and I (almost) never use the built-in code editor.

Most of the time I have a folder per game, with a somegame.p8 whose only code is #include main.p8.lua (+ other includes if needed), and the code itself is inside main.p8.lua. Since the code is cleanly separated from the other assets, I don’t risk overwriting one with the other while juggling between my IDE and pico8