3 ms·
I've been struggling with getting my ten-year-old across this gap. He's outgrown Scratch/Roblox and I don't think PICO-8 is quite the right set of abstractions
by mikepurvis 3y ago
I've been struggling with getting my ten-year-old across this gap. He's outgrown Scratch/Roblox and I don't think PICO-8 is quite the right set of abstractions (no built in entity system, seriously?); we're working with Godot right now and he's making progress, but it's definitely a lot more of a learning curve figuring out how to do stuff in a tool that has everything.
- xyzelement 3y agoI have a 3 and 1 year olds but starting to think about this. If we really think basic / turbo pascal has this right. Why don’t we just teach our kids those things. We can get the environments running I am sure.
- ecshafer 3y agoI think something like basic or pascal is right. The "hard" part I think that Borland did so well was make it so easy to just get things right. A Neo Turbo Pascal that you could could type draw(x,y,z,r,"red") and see a red circle on the screen is the ideal, without having to mess with a very complicated workflow like in unity or unreal.
- mikepurvis 3y agoI mean, PICO-8 is basically that: https://pico-8.fandom.com/wiki/Circ https://pico-8.fandom.com/wiki/Circ But I'm just not sure if pixel-by-pixel drawing is the right abstraction layer at this point in time.
- xyzelement 3y agothat looks cool to me, thanks for sharing. I think something that works well for kids is instant feedback on their code/tweaks, looks like this has it.
- mikepurvis 3y agoPICO-8 sits in an interesting spot where it's not exactly a "toy" language/environment the way Scratch is, nor is it especially geared at learning, but on the other side of things it is based on a real programming language (lua) and there's an interesting scene for it where people flex pushing it to its limits making demos, demakes, etc, many of which are far beyond the NES-level capabilities it's meant to have.
- fuzztester 3y agoPython's turtle graphics or Logo is good for this. Free Logos are available even today.
- zozbot234 3y agoLOGO is a great take on LISP-like languages overall, unfortunately it uses dynamic scope. Of course this only comes up in larger programs but I do wonder if anyone has made a lexically-scoped LOGO variant and what it might be like to teach coding in it.
- fuzztester 3y agoWhat is the difference between dynamic and lexical scope? And what are they? I googled it, but could not figure it out on a quick look, at least. #lazyweb
- trealira 3y agoDynamic scope means you that whoever last bound the variable at runtime determines its value, not whichever outer scope surrounds it. I guess it would be something like this in pseudo code: var dynamic = 5 function foo() { print(dynamic) } function bar() { var dynamic = 6 // foo() prints 6 due to the binding above foo() // After bar() exits, "dynamic" will go back to being 5 }
- khrbrt 3y agoWould processing[0] be a good fit? It's designed to be easy to use and learn but powerful enough for professional use. Very quick to get cool stuff moving on a screen and the syntax is Java with a streamlined editing environment. [0] https://processing.org/ https://processing.org/
- bombcar 3y agoThrow him off the deep end into Minecraft modding ;) If you search around there are some pretty decent "download InteliJ and go" things.
- philiplu 3y agoI’ve got a 15 yo who decided to start programming in Python using Pythonista on his iPhone. He refuses to take any input from me; just wants to learn on his own. Pythonista comes with some nice game-programming modules. So far he’s shown me a Pong game, 2048 clone, air hockey, and more.