What strategy do you recommend to engage kids into coding/steam?

This question came from: Gerardo Guerrero.

Great question I think this is a question a lot of parents have on their mind. I'll be speaking primarily to the coding portion and not so much the streaming side because I’m not a streamer,  I don't really follow stermers. I think a lot of the same principles would apply and I would say the first thing is it depends on the child's age. I think things always have to be age appropriate. Also I think something as the adult trying to encourage a child, it's really important to be mindful of the framing and how you talk about these skills that you want to encourage the child to learn. Because when we're framing things as a “hey this is a way to earn money or this is way when you get famous” has that extrinsic, outside of themselves, motivation. Which doesn't always encourage the passion side of learning. I usually recommend supposed to be mindful and how they're framing what they want to encourage children to do. And really focus on the learning part of it, of trying things out and it's okay to stumble not to get in. Asking the questions is the fun part. Really the journey is the most important; not necessarily the destination. In 20 years from now, careers and work are going to be so different. I think detaching those two things will help any child no matter what their age is. 


Some skill sets that are important when it comes to coding/programming/development is; I would say there are three big ones: 

  1. Problem solving: figuring out how to take a bigger thing and chunking it down to smaller pieces and solving those smaller pieces and it solves of the bigger picture 

  2. Logic: being able to follow a sequence of items 

    • for the example of that bigger problem, making smaller, being able to follow that thread through it so that it makes logical sense 

  3. Communication: being able to communicate what the problem is or being able to articulate that, whether it be something that they speak or something they can write it out. 

I think those are the big three ones: problem solving, logic and communication. Those three are applicable to a lot of different careers, I think those are good skill sets to encourage.


Strategies

Encouraging things that are immediately visible or the effects can be seen by the child on whatever they're doing.  I recommend that you don't encourage kids to go read computer science theory, that's not fun or it's not something that's tangible to kids - their brain might not be able to understand and so it might turn them off.

Let's go through resources that I would recommend. If you're working with somebody who is younger, there is a really great program called Scratch that was invented by MIT and they actually have Scratch Jr for younger kids. Those two websites are fantastic and they explore the learning through chunks of logic that you could piece together and make something happen. Which is really exciting, gives you that immediate feedback of “cool if I grab this little thing and put this block under this block and I click on it, to start it, something happens” which is really exciting. It gives you those fundamentals of programming without actually having to type code. 

For kids who are a little older, that want to do something more on the coding side of it, there are two different types of coding I would recommend:

  1. Robotics: I think robotics is a great way for kids to get into it because it's physical. They can see the robot moving, I think that is very exciting for kids be able see that they can write a little bit of code then the robot moves.

  2. Web development: teaching kids how to make their own website. Something simple, just using HTML CSS and then and then potential teaching them javascript after. I can be something as “simple” as creating their first website. 

I don't think you need anything bigger than HTML and CSS when it comes to web development for kids who are just learning. Then sprinkle in some JavaScript. When you start seeing content that's like “oh learn this framework” or “Nodejs” or something bigger, I would say that that is for kids who are familiar with that part about developments.  If you have a child who wants to do or try out actual coding, Javascript is a great language to learn because it does what we call front-end and back-end development. So you can learn one language and be able to work in lots of different places with it. When it comes to a learning language, my preference is Python. I seen a lot of success with python when it comes to learning because it's more “Englishy.” It’s easier to read and understand what's happening.

Previous
Previous

Do you have any suggestions on getting one’s first technical role?

Next
Next

Of the talks you have given at various events, which one would you say was most impactful for you as the speaker?