
Ask HN: What’s a good Christmas present for a 13yr old who wants to learn code? - kinnth
Either online resource or a nice physical present or game?
======
ThrowawayR2
For games, my first choice would be "Human Resource Machine" either from GOG
([https://www.gog.com/game/human_resource_machine](https://www.gog.com/game/human_resource_machine))
which has no DRM or from Steam. It conveys the basics of machine language
programming in an offbeat yet fun way.

If he's a bit more advanced, take a look at Screeps
([https://screeps.com/](https://screeps.com/)). It's an online game that lets
you write code in JavaScript to control a robot that battles other player
robots. If the subscription fee or being online is an issue, there are similar
games like RoboCode.

Steam has a category of programming games that you can browse as well:
[https://store.steampowered.com/tags/en/Programming/](https://store.steampowered.com/tags/en/Programming/)

Some people will recommend Zachtronics games (TIS-100, Shenzhen I/O, etc.) but
I do not think they're particularly good for beginner programmers. The games
are puzzles dressed up as coding and, while they are fun, have little to do
with how real coding is done.

~~~
ThrowawayR2
Oh, how could I possibly have forgotten? While it's more of an engineering
game than a programming game, Factorio
([https://www.gog.com/game/factorio](https://www.gog.com/game/factorio)) would
also be an excellent choice. Getting inputs and outputs of construction
materiel to flow to the right place at the right time in the right order has
strong analogies to how data flows through backend services today.

------
idiliv
I remember that I got into coding around the age of 13. For me, the trigger
was a book on C++, written for adolescents. Thinking about it in
retrospective, C++ probably wasn't the best language to get started on, and
yet, I devoured that book. So nowadays, beginners books on e.g. Python are
probably even more appealing. I also feel that book makes a better present
than an equivalent online resource, because it's something physical. Of
course, such a book would still require that the 13yr old has access to a
computer, in order to actually write code.

~~~
kinnth
I always started with books too. I wonder if he will have the attention span
;)

------
tmaly
If the kid is very new to coding, I would consider one of those robots that is
programmable with the visual code stacks.

If the kid is a bit ahead of his age in math, I would consider something more
abstract like a Python book Python Crash Course that gives you 3 projects to
work through.

I have taught my 5 year old daughter the basics of coding with Scratch 3. I am
in the process of building a course of parents. This has been great as it is
visual and much easier for beginners to grasp.

------
zunzun
I bought Kano Complete kits for three of the neighborhood kids, they really
like them.

