[untitled]
59 comments
Reminded me of Ken Robinson telling the story of Gillian Lynne [1] in the most popular Ted Talk "Do schools kill creativity?"
[1] https://youtu.be/iG9CE55wbtY?t=909
[1] https://youtu.be/iG9CE55wbtY?t=909
A child isn't born with an interest in computers, an interest in wordplay, or an interest in crime. It is developed.
True. And yet I played and watched just as much football as my brother when we were growing up - and as adults he spends every weekend watching the scores come in and watches every game his team plays. International games aside, football does very little for me. I prefer to spend my time doing other things that give me the same buzz he gets from that.
You can push a kid in any direction. And for some period of time, they might even get behind it. Doesn't mean it will develop to fruition (otherwise I might actually have something to show for those years of piano lessons!).
You can push a kid in any direction. And for some period of time, they might even get behind it. Doesn't mean it will develop to fruition (otherwise I might actually have something to show for those years of piano lessons!).
That is true, but a child is definitely interested/drawn to certain fields than others. I guess that is what your parent comment was referring to.
As a child, I was enrolled in some music classes when all I wanted to do was play Chess. My parents had good intentions, it sucked for me though.
As a child, I was enrolled in some music classes when all I wanted to do was play Chess. My parents had good intentions, it sucked for me though.
Nobody is born with an interest in anything.. If my parents pushed programming on me as a young person I might not have enjoyed it as much as I do since learning it would be for them, not for me.
There is a difference between developing an interest in a child and forcing them to do things.
but given some experience with programming, writing, dancing or whatever they'll either like it, or not (or be ambivalent). At which point you should take that feedback into account.
Coding is as fundamental as learning to spell. Some things you should force your kids to do for their own good.
No, it isn't. It's very useful, but not as useful as basic communication. There's also some evidence that you need a certain aptitude to be able to code at all: https://blog.codinghorror.com/separating-programming-sheep-f...
Forcing someone with no aptitude or desire to do something is just cruel.
Forcing someone with no aptitude or desire to do something is just cruel.
Cruel? Cruel is setting your kids up for a life of struggle because they never learned basic skills.
You can be quite a success as a doctor without learning to code. And many other professions as well.
Not reading, writing, or knowing how to use a computer would be far more detrimental.
Not reading, writing, or knowing how to use a computer would be far more detrimental.
not learning to code is not going to be a handicap through life comparable to being unable to read or write. It just closes off certain professions. Is it cruel to not teach your kids stock portfolio management? Or is it cruel to force your kids to learn portfolio management long after they've expressed complete disinterest in it? I'd say the latter.
Everyone is grooming their kids for something. Most just do it passively.
My kids have complete disinterest in sports, yet they play something 3 days a week and are getting better.
This version of themselves will have a significant leg up on the version of themselves that never learned to be athletic and will struggle with obesity in their 30s.
My kids have complete disinterest in sports, yet they play something 3 days a week and are getting better.
This version of themselves will have a significant leg up on the version of themselves that never learned to be athletic and will struggle with obesity in their 30s.
As someone who mentors a little over a half dozen adults who are transitioning into technology careers (mostly programming, but not exclusively), I disagree on several points:
1. A lack of programming experience does not necessarily imply a life of struggle. Anecdote: Several of my friends work blue collar jobs (AC install/repair, but also an electrician), and avoid many of life's vices (alcohol, drugs, bad relationships with people with different personal values because they're easy to get into bed with, gambling, extreme religious devotion, the vindication of social media mob participation, etc.). I would call them successful despite not knowing the difference between a function and a method. (Successful enough, at least, to be homeowners in their young 20's despite growing up in poor families.)
2. Programming skill does not necessarily a life free of struggle. I know several homeless people with programming skills. Mental health (which is something our industry severely neglects!) brings its own struggles to the table.
3. Adults who take an interest in programming can gain sufficient aptitude to be valuable to organizations in a short time.
Forcing programming down a child's throat does them no favors.
1. A lack of programming experience does not necessarily imply a life of struggle. Anecdote: Several of my friends work blue collar jobs (AC install/repair, but also an electrician), and avoid many of life's vices (alcohol, drugs, bad relationships with people with different personal values because they're easy to get into bed with, gambling, extreme religious devotion, the vindication of social media mob participation, etc.). I would call them successful despite not knowing the difference between a function and a method. (Successful enough, at least, to be homeowners in their young 20's despite growing up in poor families.)
2. Programming skill does not necessarily a life free of struggle. I know several homeless people with programming skills. Mental health (which is something our industry severely neglects!) brings its own struggles to the table.
3. Adults who take an interest in programming can gain sufficient aptitude to be valuable to organizations in a short time.
Forcing programming down a child's throat does them no favors.
No, it's not (and BTW you need to learn how to read in order to program, so you're statement is literally false). There are still plenty of ways to be successful in this economy without learning how to program.
Would you think lesser of people who don't have a software engineering background and chose, instead, to pursue other ambitions in their careers?
Programmer (among other things) here, and I have seen exactly this attitude among a not-so-small minority of those around me.
Sometimes I get the feeling (when often confronted with the whole 'everyone should earn to code' idea) that there is some articulated and unconscious ideological drive that dictates that we have finally invented a language can completely control all alternative, that is, that we're looking for a real version of the ancient memetic constructs from Stephenson's Snow Crash and that somehow the logic and linear bias of computer code makes it impossible for some so-called postmodern programmer to emerge, or something. [I also think about this when I hear computer majors complain that programming language classes should be count in place of foreign language ones.]
Sometimes I get the feeling (when often confronted with the whole 'everyone should earn to code' idea) that there is some articulated and unconscious ideological drive that dictates that we have finally invented a language can completely control all alternative, that is, that we're looking for a real version of the ancient memetic constructs from Stephenson's Snow Crash and that somehow the logic and linear bias of computer code makes it impossible for some so-called postmodern programmer to emerge, or something. [I also think about this when I hear computer majors complain that programming language classes should be count in place of foreign language ones.]
If they’re having a hard time making money I would think lesser of their parents who should have known better.
Abdicating responsibility for your child’s education is not noble.
Abdicating responsibility for your child’s education is not noble.
First, there's more to life than making money. I want my kids to have a good life, but I define that as more than just making lots of money. Good money at a job they hate isn't what I want for them.
Second, software is not the one true path to making money.
> Abdicating responsibility for your child’s education is not noble.
Fortunately, I suspect that few parents will abdicate their responsibility by listening to your advice.
Second, software is not the one true path to making money.
> Abdicating responsibility for your child’s education is not noble.
Fortunately, I suspect that few parents will abdicate their responsibility by listening to your advice.
> A child isn't born with an interest...in crime
You've never observed a child walk over and just take a toy from another child? Good thing we teach them not to do that from a young age.
You've never observed a child walk over and just take a toy from another child? Good thing we teach them not to do that from a young age.
Make programming simple and fun. Scratch is a great gateway for younger kids >10. It'll allow them to see the cause and effects of adding different 'blocks' of code. The Scratch website also offers opportunities to remix previously made games. After 10, possibly introduce 'proper' programming and maybe create a small project together. The older they get the more ideas they may want to pursue on their own. It's best to make programming rewarding but not taxing at an early age, so they don't get frustrated and quit.
I just started my 6 year old on ScratchJr (simplified Scratch for Kindergarteners), using an old Android tablet. I was reluctant to give him more screen time, so we do it after dinner when we'd normally let him wind down and watch a TV show. We give him a choice between TV and ScratchJr every night, and he picks ScratchJr every time ("Scratch is better, I can control it").
We sit down together and do one or two structured activities from the "Offical ScratchJr Book", and then I let him go solo for a little while (he usually tweaks the scripts from the book to do silly things). It's a pretty limited environment compared to full-blown Scratch, but he's got a ways to go before he outgrows it--he's got the motion blocks down pat, but still hasn't absorbed the idea that scripts can send messages to each other to coordinate events.
https://www.amazon.com/Official-ScratchJr-Book-Help-Learn/dp...
We sit down together and do one or two structured activities from the "Offical ScratchJr Book", and then I let him go solo for a little while (he usually tweaks the scripts from the book to do silly things). It's a pretty limited environment compared to full-blown Scratch, but he's got a ways to go before he outgrows it--he's got the motion blocks down pat, but still hasn't absorbed the idea that scripts can send messages to each other to coordinate events.
https://www.amazon.com/Official-ScratchJr-Book-Help-Learn/dp...
> Make programming simple and fun.
Indeed.
And I second that Scratch, which is great on many levels, is especially good as a starting point.
I have three kids (12,11,8) who started at 6+- and still enjoy it extensively.
I made BlockLike.js (https://www.blocklike.org) to make them progress, and it worked pretty good.
> The older they get the more ideas they may want to pursue on their own.
Indeed again.
The older one played with BlockLike, and then went exploring on his own.
He gets ideas from YouTube and just try’s them out. Landed here on the top of the front page with some cellular automata a couple of weeks back.
He is off to trying Python now...
Indeed.
And I second that Scratch, which is great on many levels, is especially good as a starting point.
I have three kids (12,11,8) who started at 6+- and still enjoy it extensively.
I made BlockLike.js (https://www.blocklike.org) to make them progress, and it worked pretty good.
> The older they get the more ideas they may want to pursue on their own.
Indeed again.
The older one played with BlockLike, and then went exploring on his own.
He gets ideas from YouTube and just try’s them out. Landed here on the top of the front page with some cellular automata a couple of weeks back.
He is off to trying Python now...
As an aside, Scratch is also really good for teaching adults how to program.
Scratch is fantastic, and has an amazingly supportive community. My (middle-school) daughter has spent tons of time making Scratch programs with groups of people she's met on Scratch, and it's been a really positive experience.
She and I worked her way through: https://www.amazon.com/dp/1305075196/
She and I worked her way through: https://www.amazon.com/dp/1305075196/
I really liked Lego growing up. Playing with BASIC on my first PC back in the early 90s was like grown up Lego - putting bits (no pun intended) together to create something new was amazing. The first time my named scrolled down the screen in different colours was a similar buzz to completing a really cool model.
I guess what I'm saying - if your kid is the kind of person that enjoys the sort of buzz some of us get from creating with code, find a way to give them that buzz and then let them run with it and explore it themselves.
I guess what I'm saying - if your kid is the kind of person that enjoys the sort of buzz some of us get from creating with code, find a way to give them that buzz and then let them run with it and explore it themselves.
Do them a favor and get them excited about hiking, or bugs, or something that does not involve screens.
Are you asking how you can get your kids interested in something they're not interested in, because you are? I'm often surprised at the industry's determination to be so enthusiastic about programming. I enjoy it, and have done for decades, but I fully expect that on my death bed I'll regret spending so much of my life staring at a piece of consumer electronics.
Ask them if they are excited, and if they say no, punish them by putting them in time out.
That should get them to love programming.
Jokes aside, it depends on their age. If they're toddlers, just get them to eat protein exercise and play.
That should get them to love programming.
Jokes aside, it depends on their age. If they're toddlers, just get them to eat protein exercise and play.
I've taught high school aged kids how to code for four years on behalf of a non-profit [0] and now I run a for-profit coding camp in the bay area [1]. Here's my advice:
* Realize that you need to frontload fun over value here. Fun needs to be the hook in a way. You can't jump straight into the coding, you need a bridge and that bridge needs to be something that is fun, visual, and most critically, provides immediate gratification. I would suggest using Scratch as that bridge. If that doesn't work, research the build-a-game-and-learn-coding solutions.
* Code along with them. Do exercises and challenges with them. Have small hackathons or competitions with them. Make the entire experience feel like a game - it can get really fun if done right.
* Get their buy in. I get it, they might be too young to understand this pitch but if you do it right, it will resonate over time. When I go to pitch my camp to parents and kids, I ask them what coding is and some examples of it. The last part is key; once they realize how omnipresent machines and codes are and that it can be used to make the apps they use and the games they play, they be more eager.
Hope that helps. Drop me a line at [email protected] - happy to share more over a video conference or coffee.
[0] - http://dopeboy.github.io/teaching-code/
[1] - https://www.youthcodecamp.com/
* Realize that you need to frontload fun over value here. Fun needs to be the hook in a way. You can't jump straight into the coding, you need a bridge and that bridge needs to be something that is fun, visual, and most critically, provides immediate gratification. I would suggest using Scratch as that bridge. If that doesn't work, research the build-a-game-and-learn-coding solutions.
* Code along with them. Do exercises and challenges with them. Have small hackathons or competitions with them. Make the entire experience feel like a game - it can get really fun if done right.
* Get their buy in. I get it, they might be too young to understand this pitch but if you do it right, it will resonate over time. When I go to pitch my camp to parents and kids, I ask them what coding is and some examples of it. The last part is key; once they realize how omnipresent machines and codes are and that it can be used to make the apps they use and the games they play, they be more eager.
Hope that helps. Drop me a line at [email protected] - happy to share more over a video conference or coffee.
[0] - http://dopeboy.github.io/teaching-code/
[1] - https://www.youthcodecamp.com/
You shouldn't. Just give them many different opportunities, rather than hoping, that they may follow in your footsteps (which would be much more comfy for you, I know).
I hadn't been really interested in the Fine Arts (apart from literature) till I was 15 and my mother took me, and two of my best friends, to a 200 mile trip to one of the great art museums (in Basel, Switzerland) and a passion was born! Just by seeing the things, the work of the masters.
I hadn't been really interested in the Fine Arts (apart from literature) till I was 15 and my mother took me, and two of my best friends, to a 200 mile trip to one of the great art museums (in Basel, Switzerland) and a passion was born! Just by seeing the things, the work of the masters.
I might be stating the obvious, but I'd focus on what they can build, not the theory of it. Treat code like legos. With code, they could make toys for themselves, or to play with other kids. I haven't messed around with Scratch myself, but I know there are tons of robotics programming kits, and I think Lego allows you to program robots as well. That's how I'd approach it if I had kids.
The beauty of programming is that’s it’s applicabale for almost any field/type of game. Find something the child is super interested and build a program for that field/game.
Example: if the child likes video games either build your own with your rules or HACK the game.
The idea is not to show the child a loop and expect them to be interested. So them how cool programming can be.
Example: if the child likes video games either build your own with your rules or HACK the game.
The idea is not to show the child a loop and expect them to be interested. So them how cool programming can be.
Start them off excited about the analog world before you get into digital.
Get an electronics starter kit from a site like Adafruit or Sparkfun with an Arduino or raspberry pi (I prefer the Pi). Start them out with basic circuits and switches, LEDs and maybe a small 5v fan to show them how they can control the stuff. I highly recommend “fun” gadgets like a thermoelectric/Peltier module because it turns hot and cold, and you can get ones that run on 5V-1A, which most microcontrollers and the Pis can output. Easy peasy.
Then you can start showing them how they can control the physical world through programming, like turning a series of LEDs on and off, or playing a simple melody with a buzzer, or combining a temperature sensor with the Peltier module to turn it on when the room temperature gets hot.
If I had that kind of stuff growing up, I would have started programming at a very young age.
Get an electronics starter kit from a site like Adafruit or Sparkfun with an Arduino or raspberry pi (I prefer the Pi). Start them out with basic circuits and switches, LEDs and maybe a small 5v fan to show them how they can control the stuff. I highly recommend “fun” gadgets like a thermoelectric/Peltier module because it turns hot and cold, and you can get ones that run on 5V-1A, which most microcontrollers and the Pis can output. Easy peasy.
Then you can start showing them how they can control the physical world through programming, like turning a series of LEDs on and off, or playing a simple melody with a buzzer, or combining a temperature sensor with the Peltier module to turn it on when the room temperature gets hot.
If I had that kind of stuff growing up, I would have started programming at a very young age.
The Raspberry Pi is great fun. You can build a night vision camera, a robot, an advertising black hole, a vpn server. A retro gaming system etc.
The Make introduction to Raspberry Pi book is the cleanest introduction to computers I have ever seen.
Sit down with your child, put together an order (let them pick the case and components, buy multiple cards so you can swap projects) come up with a few projects and turn them loose or spend time together working on a project or two.
You can’t force interest, but you can share your interests and spend time together. If any of the projects appeal, the interest will be self-sustaining. But if it’s not fun it’ll fall a bit flat.
The Make introduction to Raspberry Pi book is the cleanest introduction to computers I have ever seen.
Sit down with your child, put together an order (let them pick the case and components, buy multiple cards so you can swap projects) come up with a few projects and turn them loose or spend time together working on a project or two.
You can’t force interest, but you can share your interests and spend time together. If any of the projects appeal, the interest will be self-sustaining. But if it’s not fun it’ll fall a bit flat.
Don't, its a dead end. Encourage them to be social and go into business. Counter to what we've been told over and over again, an ounce of social grace makes up for a pound of intelligence.
You can't really push your children into liking things. They are humans just like everyone else.
The best thing I can suggest is let them observe and watch your work. Setup the computer in a shared space with a large monitor so they can watch. If they see you having a fun time with the computer, they will naturally become curious.
If they come to you with questions, guide them and provide resources. Don't push.
Good luck...
The best thing I can suggest is let them observe and watch your work. Setup the computer in a shared space with a large monitor so they can watch. If they see you having a fun time with the computer, they will naturally become curious.
If they come to you with questions, guide them and provide resources. Don't push.
Good luck...
My advice is don't get them into software before the age of 10. Using the computer too much at that age is not healthy. Get them into hardware and electrical engineering first. That's also something children are more likely to enjoy.
Just because someone can program at the age of 6, doesn't mean they should. It's not a race.
Just because someone can program at the age of 6, doesn't mean they should. It's not a race.
There is only one way.
They need to come up with something that they are interested in which can be solved with a program which is within their reach.
You can demonstrate, you can make resources available, you can involve them in your own work, but in the end only people who want to make things happen with computers will become excited about programming.
They need to come up with something that they are interested in which can be solved with a program which is within their reach.
You can demonstrate, you can make resources available, you can involve them in your own work, but in the end only people who want to make things happen with computers will become excited about programming.
https://code.org/learn is a good website that contains games playable through a visual programming language (blockly / scratch).
If you have a Nintendo Switch, Nintendo Labo is a fun way to introduce to programming and a sort of IOT.
https://code.org/ is a great website. My son programmed a simple flappy bird game and got to share the result. Good times
Well, my employer makes a kit pretty much designed to excite kids about programming - the Harry Potter Wand Coding Kit: https://kano.me/store/us/products/coding-wand
Almost all professions are going to be using coding (at whatever level of coding) skills in the future anyway (if not already). So let them be interested in a field of their choosing, and then let them know that knowing coding can help them in that field.
My son already loved minecraft, and was already familiar with the concept of mods, so CodeKingdoms (https://codekingdoms.com/) was the perfect tool in his case.
Check https://sonic-pi.net I like the concept of using code to represent music and seems more interactive (if you change something, you can hear it immediately)
My oldest is only 3 but based on my experience (and the experience of other parents I've spoken with) your best shot is to find another, slightly older kid who already programs and have them hangout.
LOGO. I don't know why it fell out of favor, but it's the fastest way for a newbie to see visible, fun, graphical results.
my two cents, without knowing anything about the age or interests of your children: creating games.
https://www.amazon.com/Video-Game-Programming-Jonathan-Harbo...
https://www.amazon.com/Video-Game-Programming-Jonathan-Harbo...
There’s a great game called Human Resource Machine that might be a fun way to do that
Get a tynker.com subscription.
During some of their screen time only let them use tynker.
During some of their screen time only let them use tynker.
Show them how many things are powered by programs anyone can change.
First of all, that's a weird goal to have. Children are people. Let them be interested in whatever they want.
Buuuut, if you want them to get into programming, then discourage their computer use, and tell them to go play outside or something. Tell them that Linux is bad. And tell them not to go near the internet, and "whatever you do don't look up SNES emulators on the internet. Don't go to anynowhere.com and get really into Noctis."
Buuuut, if you want them to get into programming, then discourage their computer use, and tell them to go play outside or something. Tell them that Linux is bad. And tell them not to go near the internet, and "whatever you do don't look up SNES emulators on the internet. Don't go to anynowhere.com and get really into Noctis."
As a parent fostering the development of a lucrative skill that appears to be interlocked with the future of our labor market, which the parent themselves find enjoyable, doesn't seem that weird. In fact, I'd go so far as to say it's one of the most normal goals a parent could have.
Now, the execution of that goal can be done very well, or very poorly, but the goal itself is reasonable.
Now, the execution of that goal can be done very well, or very poorly, but the goal itself is reasonable.
Oh, I guess my parents raised me weird, then. They discouraged putting any importance into that kind of thought, especially when I was just a kid. It was always like, "do what you love and money will follow" kinda thing.
This kind of parenting is one of the reasons there are so many disaffected millennials saddled with insurmountable college debt and unmarketable skills.
a lot of people seem to have "advice" on this topic
This depends on a great many factors. As others have jokingly suggested, some kids will be most interested if you forbid them from doing it. Trying to make them program can be the absolute worst possible approach.
I have a son like that. Telling him "no" is the best way to guarantee that he promptly runs off and tries it. He's been that way since he was born, basically. He nearly got run over at age 2 because I told him to not cross the street without a grownup and he had to know why for himself and promptly ran out into the street -- pulling away from me and his father both, as we were standing on either side of him and we were each holding one of his hands -- and nearly got run over by an oncoming car. I don't think the guy ever saw him.
It can also be influenced by gender. I'm a woman and I have two adult sons. They are talented at getting me interested in "male" games, like Master of Magic, by framing it in terms that appeal to me, such as telling me "It's just like your favorite game, Sim City" and then coaching me on how to play it like a civilization building game instead of a strategy and war game and helping to minimize the pain point of actually going to battle.
One thing I complain about with Sim City is that war never happens, though you have a military base and war has a huge impact on economies in the real world. Yet the game has some completely unrealistic disaster scenarios like aliens invading.
The idea that civilization building happens separate from war is just not realistic. That isn't how the world works.
So I don't really like the battle parts of the Master of Magic, but I don't really like how Sim City de-claws things completely, so to speak. It is possible to play Master of Magic as a civilization building game with war as an annoying side detail that happens like in real life. That works pretty well for me.
So girls and boys may take to programming for different reasons. In spite of how not PC it is these days to suggest that girls and boys have some differences, there is some truth to that idea.
I began learning HTML and CSS so I could blog and more effectively talk to people. I like talking to people. A lot of guys learn to code to "do" something and sometimes only grudgingly talk to people to further their goals of "doing" something. Many programmers are very introverted and talking to people is the last thing they want to do.
Some generally useful ideas that may help:
Make sure they have access to computers.
Only restrict their use of computers for safety reasons and in a way that is supportive of them and not punishing or blamey. (My sons were told "No porn and no reading instructions on how to build nuclear weapons." as a tongue in cheek rough guideline and I supplied them with kid-friendly bookmarks to help them get started on things they could look at without worrying too much.)
Follow their interests. If they are interested, take them to the library or the bookstore or whatever and help them find resources that appeal to them, but let it be their thing.
Make it fun. Don't make it another chore they must tick off.
Find ways to connect them with people who program and who enjoy it.
If you have some pigheaded, stubborn kid who hates being told what to do and will do the opposite just because you said "Do x," back way, way, way off on anything that remotely smacks of signaling that "This is something I want you to do." Make sure it is clear in their mind that it is their choice, not yours.
I have a son like that. Telling him "no" is the best way to guarantee that he promptly runs off and tries it. He's been that way since he was born, basically. He nearly got run over at age 2 because I told him to not cross the street without a grownup and he had to know why for himself and promptly ran out into the street -- pulling away from me and his father both, as we were standing on either side of him and we were each holding one of his hands -- and nearly got run over by an oncoming car. I don't think the guy ever saw him.
It can also be influenced by gender. I'm a woman and I have two adult sons. They are talented at getting me interested in "male" games, like Master of Magic, by framing it in terms that appeal to me, such as telling me "It's just like your favorite game, Sim City" and then coaching me on how to play it like a civilization building game instead of a strategy and war game and helping to minimize the pain point of actually going to battle.
One thing I complain about with Sim City is that war never happens, though you have a military base and war has a huge impact on economies in the real world. Yet the game has some completely unrealistic disaster scenarios like aliens invading.
The idea that civilization building happens separate from war is just not realistic. That isn't how the world works.
So I don't really like the battle parts of the Master of Magic, but I don't really like how Sim City de-claws things completely, so to speak. It is possible to play Master of Magic as a civilization building game with war as an annoying side detail that happens like in real life. That works pretty well for me.
So girls and boys may take to programming for different reasons. In spite of how not PC it is these days to suggest that girls and boys have some differences, there is some truth to that idea.
I began learning HTML and CSS so I could blog and more effectively talk to people. I like talking to people. A lot of guys learn to code to "do" something and sometimes only grudgingly talk to people to further their goals of "doing" something. Many programmers are very introverted and talking to people is the last thing they want to do.
Some generally useful ideas that may help:
Make sure they have access to computers.
Only restrict their use of computers for safety reasons and in a way that is supportive of them and not punishing or blamey. (My sons were told "No porn and no reading instructions on how to build nuclear weapons." as a tongue in cheek rough guideline and I supplied them with kid-friendly bookmarks to help them get started on things they could look at without worrying too much.)
Follow their interests. If they are interested, take them to the library or the bookstore or whatever and help them find resources that appeal to them, but let it be their thing.
Make it fun. Don't make it another chore they must tick off.
Find ways to connect them with people who program and who enjoy it.
If you have some pigheaded, stubborn kid who hates being told what to do and will do the opposite just because you said "Do x," back way, way, way off on anything that remotely smacks of signaling that "This is something I want you to do." Make sure it is clear in their mind that it is their choice, not yours.
If they do have a natural aptitude for logic and can stay focused for a long time then I would personally avoid coding (at least early on) and foster more pure math and logic games. This thread on Math Overflow has many good suggestions for math and logic games for children:
https://mathoverflow.net/questions/281447/mathematical-games...