from Hacker News

Ask HN: My son (9yo) wants to learn to develop games

by cx42net on 1/9/23, 10:07 AM with 30 comments

Hi!

My 9 yo son wants to learn to develop games, and, as I developer myself, I'm more than happy to help him on this road.

I could start with the programming basics, the rendering loop and iterate from this, but it is quite complicated and will take quite some time before having some significant results.

Another approach would be to start by having to resolve gaming puzzle that requires development, starting with very easy levels and increasing in complexity. At some point (and if he follows through), he will have enough knowledge to be able to handle the complexity and the underlying of what a games is made of.

Another issue I'm facing is that we are French. It's a requirement for us to use resources in French for now as he improves his English along the way.

Here's what I thought I could do:

1. I thought about doing the learning myself, implement a course he could follow with increasing complexity. But I know myself. I'm not great on sharing knowledge, and I would dive too deep in complexity. Moreover, it would take time before having visual results (which is what he is looking for, of course), and might probably loose interest before having valuable results. 2. I thought about subscribing to online courses (Udemy, Coursera, etc) about game development. Problem is most of the courses are about Unity and C#. We are not there yet. (and not too many in French). 3. My best scenario for now is to create an account at either [CodingGame](https://www.codingame.com/) or [CodeCombat](https://codecombat.com). They apparently have a French version and hopefully the beginning would be not that hard. And since it's coding, I could help him. 4. Turn to HN and ask for better suggestions on how to do this :)

Thank you for your help!

  • by johncoltrane on 1/9/23, 10:31 AM

    He doesn't care about developing games, he just wants to spend more time with you. Developing games is just the angle he found because you are a developer.

    Source: I have been in that exact same spot (same nationality, even). We toyed with Scratch and similar apps for a while, but we eventually switched to just doing more things together and less computer stuff.

  • by surprisetalk on 1/9/23, 10:35 AM

    I'd highly recommend checking out Elm playgrounds:

    In ~70 lines, you have a Mario-like platformer with live code in the browser! https://elm-lang.org/examples/mario

    You could use the turtle example as the basis for a racing game: https://elm-lang.org/examples/turtle

    And there's even a WebGL implementation for 3D graphics! https://elm-lang.org/examples/first-person

    > Another issue I'm facing is that we are French. It's a requirement for us to use resources in French for now as he improves his English along the way.

    The Elm Europe community seems to be pretty large. I'd try reaching out to them and see if anybody has French resources.

  • by seren on 1/9/23, 10:14 AM

    You could use Scratch https://scratch.mit.edu/

    There is a localization in French, with every blocks being translated "If" become "Si", "When" becomes "Quand" and so on.

    It provides a playground when you can move a sprite, play some sound, basic animation and management of inputs. It manages the event loop, rendering loop, etc. It is doable to some very basic games with a sprite moving/chasing others.

    I think it is at the right level because it is very visual and you get the feedback immediately. This is actually used in some collège course as an introduction to programming.

  • by kevin42 on 1/9/23, 3:27 PM

    I'd take a different approach. Get him into scripting in Roblox. Both of my kids learned lua mostly on their own just because they wanted to make their own gameplay. Both went on to computer science and are doing 'real' software development now. But they learned programming concepts without going to deep in the weeds of low level stuff. The hard part of game development is making fun gameplay, so rather than focus on rendering, etc., help him make gameplay.
  • by beardyw on 1/9/23, 11:48 AM

    Be careful of your own enthusiasm. His interest may wane and you may need to let go. Just keep that in mind before you make too many plans.
  • by gabrielsroka on 1/9/23, 8:42 PM

    See also https://arcade.makecode.com/

    Bonus, you can download it to inexpensive hardware and run it there, such as https://www.adafruit.com/product/4200

  • by shanebellone on 1/9/23, 11:12 AM

    "I'm not great on sharing knowledge, and I would dive too deep in complexity."

    If you learn to explain tech to a child, you should be able to effectively communicate with most stakeholders. It might be an opportunity for you to upskill together.

  • by asicsp on 1/9/23, 2:28 PM

    Check out https://microstudio.dev/fr/

    >microStudio is a free game engine online.

    >Create games, learn programming, play, share, prototype and jam!

  • by gsatic on 1/9/23, 11:35 AM

  • by cpach on 1/9/23, 11:01 AM

    This book might be of interest: https://nostarch.com/realmofracket.htm

    Best of luck!

  • by navjack27 on 1/9/23, 3:26 PM

    Make cool stuff with ue5 and the blueprint system for the logic.