Understand that you're not going to finish what you start. Do things that are fun. Keep a notebook of ideas. Talk about plans and what you want do. Spend time with him. Even if almost none if it ever makes it into code, the imagination part will be going wild.
Look at what he's really doing. He doesn't want to CODE. He wants to make a game. Like every kid. Emphasize the creative part just like he wants. Do things on paper, just like he is doing.
Let me get this one point across: YOUR SON DOES NOT WANT TO LEARN TO CODE (right now). HE WANTS TO SPEND TIME WITH YOU and explore ideas at the speed of his imagination.
Enjoy it.
Talk about the game while you go for evening walks or drive to/from school.
He will enjoy every minute of it even if nothing is ever produced.
Maybe he does, but he doesn't know it yet. Do not force him, but you can show him. That's actually how I got into coding. Like every kid, I wanted to make a game, but progressively, I found that I had more fun coding than actually making the game. In the end, I went in so many tangents I didn't complete my game, but who cares?
Everyone is different. Maybe he just wants to imagine stuff, maybe he really wants to produce something, or maybe he wants to code, or write, or draw, whatever. Maybe that's an opportunity to see what he is really into. For me, it turned out to be code. People, kids and adults alike don't just want to "learn to code", they have a motivation and code is what gets them there. You need a starting point. For adults, it is often making money, but for kids, making a game is probably the most common.
For a lot of kids (myself included), the deepest and strongest desire was not to code, though that's how the effort can manifest. The desire is to then show the end result to someone (often a parent/authority figure) for recognition. It comes right back to the relationship dynamic, and this can be an intensely strong motivator.
As I matured, coding eventually became my own thing, and I started to enjoy it as something I could escape to that nobody around me really had to understand. But when I first started dabbling in it, you bet my Dad heard just... hours, and hours, and hours of my rambling. Mad props to him for listening, even if in hindsight I realize he barely had any interest in the subject and found it hard to keep up. You did good, Dad.
Makes me realize I never wanted to learn to code. I never set out for it. I want to learn to code things now, but back then? I wanted to make an executable that did something. Sometimes it was a game. Sometimes it was some weird graphical screen saver like thing. Coding was just to make it happen. That became something interesting too, eventually.
It is something we as programmers forget. Why we did it in the first place. It usually shows up when those analyst show up and want some program. Cant they see how amazing our code is? /s When what they want is a program that does something.
I started coding pretty young (Perl probably ruined me at 12), and what I realized as a teenager was that I didn't really enjoy programming, it was just the means to an end. I wanted to make the computers do something.
I'm a system administrator now. Turns out that most of the problems I wanted to solved had capable people already working on them.
Those years of coding give me such an advantage when things go wrong, though. I've never regretted it for a second.
He might. When I was around that age, I had an Atari that had a feature where you could write your own code. I think it was sort of a version of basic.
I made primitive games. They weren’t much more than shapes and colors and sounds, but I was able to make it do things. And that was before there was an internet where I could find help. I didn’t know anyone who had ever written a line of code.
I think one might be surprised what a 9 yr old boy could do these days programming.
Absolutely this. As a middle school teacher of many years I feel like I have some knowledge on this subject.
Almost all children want to spend time with an adult. In my classroom the activity we do together doesn’t matter to my students, besides the attention I give them during the activity. For kids, adults are treasure troves of attention, and they want that attention. Give it to them in positive ways and you will see the relationship grow. Don’t worry about whether or not you produce something in the end, it was the relationship that mattered to the child from the get go.
Really only adults, through social conditioning, are worried about producing something. Kids just want to feel important and feel part of a healthy, positive relationship.
Just checking, you also do pay attention to what kids are actually learning and if their skills are improving? Some of the kids want to learn, not just engage in an attention seeking game, feeling important and healthy relationships with adults.
What a great response. To follow, this doesn't preclude anyone's child from jumping head first into programming, just that "producing" a game isn't really the goal but "making" it is. My 9 year old son makes mini RPGs on paper. Like he draws hit points and a monster and does attacks and marks damage as he plays. It's awesome. Sometimes "making a game" doesn't need to be programming at all.
I’ve made Super Mario levels on paper with my 7 year old son for the last couple of years that he LOVES. we make a small Mario character and long landscape oriented map… cardboard or butchers paper roll work well.
He rarely actually plays the level even. We spend time drawing obstacles and baddies. Then he comes up with tons of new baddies with new powers from his imagination.
When I was ten years old, I played a lot of web games built on Flash technology and asked my parents how I could build my own. My parents sat me down and taught me the very basics of how to code. I didn't learn very well from them, but they also bought me a textbook and I learned great from that. By age 12, I had recreated a lot of the games I was fond of, pacman, snake, space invaders, etc.
Maybe the bar was lower for my interests at the time (flash mini games vs AAA 3D games as described here), but just offering a different take: Maybe your son _would_ very much be interested in learning to code. Though starting with 2d retro games might be easier.
Yeah, when I 10 or 12 years old, I found a book with simple games in Basic. I had fun copying from it and learned a bit of programming.
My daughter is currently more interested in playing existing games instead of creating her own. I would probably look into how to create something in Roblox if this would fit for the game.
I remember in grade... 3? a kid at school was showing me books from the library about how to make a game in Basic. Then one day he finally had it going. It was amazing to see. I can't remember what it was, but it would have been the simplest thing. But it was still amazing.
That reminds me: When I was about 9 or 10 I created the sequel to Zelda a link to the past. With colored pencils. On paper. Dozens and dozens of sheets of paper.
That game was amazing. I can’t believe Nintendo didn’t call me up, but instead decided to make a 3D game
buried in a hard drive somewhere, I still have hand drawings of a game we were gonna make on RPGMaker that was about dark vs light. crazy to think back on.
I wish I had read your comment 5 years ago when my son wanted to build a utterly complex game in Scratch. I ended “coding” the game, almost on my own, because it was boring for him, and the result did not resemble what my toddler wanted/imagined. Of course he was imagining an AAA game built in Scratch… If anything good, the learning for him was building games is hard, and lost interest trying further. Great advise!
I learned programming as a child using basic because I wanted to make games like super mario. My first game was a pick your own adventure novel. Just text. My second game was an RPG, all ascii. I eventually build a 3D engine in basic (yeah, i know). If the kid finds programming fun, then starting with scratch won't deter them. If they don't like programming but want to make a game, then yeah, I can see how finding out how hard it is will deter them!
Not sure that's good. Yeah it's hard to build a AAA game, but you can still have a lot of fun building a smaller game, and people put out really impressive stuff in Ludum Dare (a 72-hour build-a-game-from-scratch event).
> He doesn't want to CODE. He wants to make a game. Like every kid. [emphasis mine]
Well, I as a child (say: 6-8 old) was really rather thinking deeply how a suitable way (what programmers would call "data structures" and "programming abstractions", "design of a programming languages" - but of course on a child's level) might look like so that the computer can "understand" and precisely execute my game ideas; my games as executable files would rather be the central side product of this.
I also (I am really not lying or boasting!) was thinking as a child (just to be clear: this was my child's imagination; from my present knowledge I know of no suitable way to make this actually work) how if the abstractions are there, one could easily "combine" existing games to make new games - perhaps even partly automatically by a computer:
Imagine this: using some photo editor, you can use the magic wand or lasso tool to select some part of a photo, and copy-paste this part into another photo. Why isn't it possible, if you, say, wrote both a space shooter game and an economic simulation game to select and copy-paste some part of the latter into a former to turn the space shooter into a space shooter that also contains economic simulation aspects?
The "best actually existing" (really bad) approximation of this that I have seen in life is how the GURPS tabletop role-playing game system (https://en.wikipedia.org/wiki/GURPS) enables (in principle) to "copy-paste" elements from one role-playing setting into a whole different "incompatible" one (but it is not that you would want to do this for your typical role-playing session :-) ).
Yes, this is how a 6 to 8 years old child (the former me) thinks about game development. :-)
Yeah I was about 9 or 10 and an techy relative was trying to teach me binary while I was playing command and conquer red alert on a windows 98 machine.
And I was thinking how does code translate into something like red alert. I didn't have anyone to guide me to fill in the dots at the point though and it was just before internet was common everywhere and before google was a household name in England at least to me.
When I was ~9 (maybe 8, maybe 10) I picked the GW-Basic book from shelf (my dad had that for some reason) and started reading. I was fist thick and mostly a summation of commands, so it did not made a whole lot of sense, but hey, I had a day off from school (or was on sick leave) and had already finished the (much thinner) MS-DOS book. And I just loved computers.
Luckily when my dad came home he explained that we actually had GW-Basic on the computer (an IBM XT my dad had bought second hand from a friend's dad who was IN computers). That's where it all started. My dad could keep up for a bit but soon I had to rely on whatever the local library offered, and later a floppy disk that somehow made its way to me (copy by copy) full of useful TXT files and examples. Oh internet where were you.
So I feel a bit reserved towards the 'YOUR SON DOES NOT WANT TO LEARN TO CODE' screams that seem only based on very, very little context. But I do agree with the general advise, best to not jump to conclusions and go by their (the kids) pace.
> I picked the GW-Basic book from shelf (my dad had that for some reason) and started reading.
My Dad was a software developer. But for various reasons, he never initiated and practically never taught us anything about software development: but made sure that books were available, so that if it interested us, we could figure it out ourselves.
Well, I and my two elder brothers were each copying things from that BASIC book by the age of six or seven, and making up our own stuff within a couple of years, and we all ended up software developers. (None of my other siblings were at all interested.)
Most children around these ages probably don’t want to learn to code. But, as my dad puts it, there are some that, when they see what is possible, find the notion of making computers do what they want irresistible. We three all definitely wanted to learn to code.
This ! Learning to code will come after, spending time with your son writing down ideas might be more fun at first and it's a good time to teach him that games are thoughts first and then coded after.
I would have recommended Scratch [1] for a first introduction instead of hoping into code right away, but since he is 9yo he will most likely want to hop on big game engine like he sees his favorite youtubers doing.
so while you guys are thinking about ideas, you should look up and compare engine in this thread and learn one, then teach him and make the game/prototype together later.
There is also Snap! (https://snap.berkeley.edu/) which starts very much like Scratch but has higher ceiling.
The deepest pedagogical benefit is you can easily build for him custom blocks — even custom control structures — to give the scaffolding that will let him focus on the programming style/aspects you want him to learn at that point.
Yes. My then 10 y.o. son also wanted to build a game. At least that's what he told me. So we went out together to learn how to do it in Roblox. We eventually learned we needed to be coding in the Lua programming language, which is by itself cool as we are Brazilians. We took some classes together but then I saw my son suffering as he tried to get along with abstractions and the development process itself. He quickly found out it had nothing to do with playing games! So the lesson we learned was, as the parent commented, my son and I just wanted to do something fun together. That's basically it.
Kids can build games pretty easily now with Scratch. I’ve several friends whose kids are doing this at that age and a couple are writing scratch in school. It’s pretty easy these days.
When I was as 8, I definitely wanted to learn to code.
Five years after that I was on equal footing with a few adult software engineers around me (my parents and their friends).
Playing/hacking/working with professional-grade code (leaked Quake code in particular) really helped me to form a good style. Wish I’ve received more code review hours even on kiddies projects.
Funnily enough some of the code I’ve written at 8-9 (a menu system for a primitive graphics editor) I’ve reused five years later in a project that had users and significant money returns.
This. When I was a kid my best friend and I made our own Pokemon game by drawing our own Pokemon cards and assigning various nuts (still in shells) to each one. My Charizard was an almond and her Mewtwo was something like a pecan, for example. We created our own arena on cardboard and would "battle" by knocking our nut-Pokemon against each other - the Pokemon that got knocked out of (or overshot) the borders of the arena lost, and eventually the loser of the set would get to pick an opponent's Pokemon (nut and handmade card) to confiscate.
I love video games and went on to work in game dev for more than a decade, but that was still one of the most fun things I've ever played.
kids need to spend fun time doing creative stuff with their family members for their healthy development. They are somehow aware of it and they ask for it.
Moving their hands for precise ability and their whole bodies, or sitting down to draw or read, might be more urgent than sitting in front of a computer, though
IMHO this can be used more generally - look at pet-projects that people are making in their free time. There is no such thing (in most cases) as deadline or "finish", because there is always something that can be added, improved or taken care in any way. Keeping all ideas in a notebook allows you to review them with other contributors, and even when project would be abandoned, this would allow to refresh memory when someone decides to come back later.
In this case however, having some quality time with son is the most important thing, and putting a deadline would affect the fun for the worst.
Me and my son created a choose your own adventure console game using Repl.It and Python.
It gave us time to go over programming fundamentals but for the most part we just had fun and came up with wacky content for players to progress through. Later, we went back and added static images.
One of the most satisfying things for him was being able to spin up his retro game at school for his friends to play.
> YOUR SON DOES NOT WANT TO LEARN TO CODE (right now)
This. 100% this.
He wants a game, that he can tell himself and everyone that it is His and he wants you to do it for him. He does not want coding to show up in the way!
Take this as a chance to show him that he can build things, the way he wants it. Make an effort and let him see it. Give him a taste for it. There's wisdom in that quote about longing for the vastness of the sea to make good sailors.
There will be joys in small wins. It will surely never complete. But he and you both will cherish the wild imagination that comes with something like this.
I wanted to learn coding at 8 to make games, not necessarily with my father. It was begin 80s so bit different; I went to halls were they sold inventory from burnt out stores where I got books and mags for pennies and so I learned basic (and basicode), asm and pascal. After that my parents brought me to meet-ups. I wanted to spend time with wizards who could teach me software/hardware, not my parents per-se (although my father did work at a IT firm, programming was not what he did).
Thankyou. And thankyou to OP. I have exactly the same situation as them, and spend a lot of time beating myself up that I can’t help him realise his never-ending torrent of creative flow. But you’re right: I need to immerse myself in it with him. Thankyou.
All of good video game devs must doing CODE along with doing ART parts to them to make the actual video games. I recommend learning CODE like c++ and lua to be these more serious video game devs at all. >=)
Angry Birds actually use Box2D engine and coded the game in C++/Objective C but likely with a Java wrapper for Android, but you can try those lua game engine for 2d games only. =/
Stick to c++ mostly or lua and not waste time in other less powerful programming languages. Keep it simple and make the minimum viable product (MVP). >=)
I can apply this to some situations I have with my daughter. I have a tendency to get over-excited when she shows interest in my interests, and try and push her to do the things with me.
I was going to post about game engines worth exploring to get this project off the ground (bevy, Godot), but then I read this post. OP, this guy gets it!
Look at what he's really doing. He doesn't want to CODE. He wants to make a game. Like every kid. Emphasize the creative part just like he wants. Do things on paper, just like he is doing.
Let me get this one point across: YOUR SON DOES NOT WANT TO LEARN TO CODE (right now). HE WANTS TO SPEND TIME WITH YOU and explore ideas at the speed of his imagination.
Enjoy it.
Talk about the game while you go for evening walks or drive to/from school.
He will enjoy every minute of it even if nothing is ever produced.