Hacker News new | past | comments | ask | show | jobs | submit login

I'm talking without any knowledge here, pedagogical or otherwise, but how difficult would it be to teach kids to make simple sprite based 2D games using a set of free, open source tools? For example, say Python and some wrapper over SDL? (Or something like Squeak smalltalk; I'm not hung up on Python, just on free & open source).



I've played around in Pharo which should be similar to Squeak and would not recommend for kids. Scratch or Python should work. Smalltalk's complete focus on objects will likely confuse kids. I find the object inspector and the class browser and the whole class heirarchy thing is only useful after you know all the basics.

I'm also a big fan of open source, but it sounds like the license cost here was negligible and the important part is that the kids learn the concepts. They can always take that knowledge home and program in whatever tools they want.


Note that Squeak was created specifically to implement Etoys which is what is meant for children. It was the inspiration for Scratch (which was initially implemented in Squeak) but they have different goals.

http://www.squeakland.org/


A Python wrapper over SDL such as Pygame Zero[0]? I have used it to teach kids[1].

[0] https://pygame-zero.readthedocs.io/en/stable/

[1] https://github.com/electronstudio/pygame-zero-book


The short answer is way more difficult than environments like PureBasic, SpiderBasic, or similar earlier options (think Blitz BASIC, AMOS, STOS).

The point with these is that everything you need is in the box: no complex toolchain to set up, no fussing with libraries, no fighting to get different bits of technology to work together. Just type in your code, hit run and (assuming you haven't made any errors) it simply works.

Yes, these tools might not be the most robust ever, or suitable for all problems, but they do allow you to get up and running very quickly, with the minimum of boilerplate and ceremony. If what you mainly want to do is get people into computers by making objects fly around the screen and blow up, they're absolutely perfect.


> The point with these is that everything you need is in the box: no complex toolchain to set up, no fussing with libraries, no fighting to get different bits of technology to work together.

You should still be able to do this via a modern 2D engine like Godot. It comes with its built-in scripting solution that's rather Python like, but you don't have to use that; native bindings are available, and easily accessed from, e.g. C++ or Rust.


I don't think kids and C++/Rust should be mentioned in the same sentence :).

I know some kids could maybe make it work, but those are tough languages with a lot of complications and no garbage collector to help out. Manual memory management would just be yet another roadblock.

Again, I think the complex industry solutions are more harmful here. These kids don't need to make Call of Duty 3. They are more at the Pong skill level. A tool that is far simpler and far less featureful is superior here.

When they get older and need to use Unity or Unreal or whatever, they can switch without having lost much.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: