Move on to functions, arrays, ifs/fors, and maps.
Teach them the point of JSON and data objects, and then the world is theirs.
101–110 of 192 posts
Move on to functions, arrays, ifs/fors, and maps.
Teach them the point of JSON and data objects, and then the world is theirs.
Fwiw, I'm only a couple years older than #2, and I would kill to have someone in meatspace who would help me with all of the above.
As far as other options, I would say Pico-8, tic80, UXN, Minetest/Minecraft, Godot, or Unity may all be decent options to start with, depending on how in depth you want to go.
Oh, also I really really really really like the book The Secret life of Programs. In my opinion, it really is worth learning how the layer below where you're working works.
[0]: http://htdp.org/
I'm guilty of this, but it's far to easy to spend too much time jumping between different technologies and programming languages and only learning the basics. So it's nice to have a concrete project in mind, so you can choose an established tool for that kind of project and not get lost with anything else until the project is done.
There's something the "old hackers" know that many CS students don't learn from the start (in the introductory classes), and that is actually how a computer operates. Don't spend a lot of time on this unless he's really interested, but it's a good idea to sit down with him for a few hours and teach him what really goes on inside a computer. I'm talking about the concept of instructions, registers, addressable memory,…
It starts at the hardware level and works up - it definitely massively improved my understanding of everything that goes on in a machine.
Earlier quoted context omitted.
Every CS program of middling quality or above covers that material, but some may shove that coursework into mostly elective courses. Also, students can pass courses without really learning anything so if it's just one or two courses that really dive that deep over their academic career, they can learn enough to pass and then brain dump it.
Can confirm, I studied CS and don't feel like I really understand any of the low-level stuff.
The first three projects introduce the skills. The second two give you some agency in decisions. The last lets you make whatever you want to make
I personally would recommend How to Design Programs[0] as a starting point, then whatever technologies are best-suited for particular interests after that [0]: http://htdp.org/ I'm guilty of this, but it's far to easy to spend too much time jumping between different technologies and programming languages and only learning the basics. So it's nice to have a concrete project in mind, so you can choose an established to…
They make plenty of cool projects that young people might enjoy.
HTDP is explicitly designed to be a good pedagogical tool to drill down foundational concepts.