Episode 14

Teaching Kids to Code

00:00:00
/
00:39:15
Your Host

About this Episode

We talk about a fun topic–teaching kids to code!

Transcript:

MIKE: Welcome to another episode of the Acima Development Podcast. I'm Mike. I'll be your host again this week. And we've got with us Eddy, Ramses, and Tad. Today is a fun topic. We're going to be talking about teaching kids to code. I thought that I might start the session [laughs] with a personal story, a couple of them actually that I think are relevant and will help inform our discussion.

I remember my first experience coding as a kid. This is way back in the ye olden days of yore [laughs] when computing was different. When I was in about third grade, we got to use the school computer because the school had a computer, and classes would take turns playing with it. We had Logo, which is software that allows you to move a little turtle around the screen. You code it to walk around the screen. That was cool. It was real-time feedback.

You tell it to move; it moves. And you tell it to move again; it moves. But we learned that there was a way you could go into a back screen where you could type in loops. And I remember playing with that and thinking it was the coolest thing ever. [chuckles] I wanted to do that all the time. But I had to use my 10 minutes of computer time on the shared school computer, and that was it. [laughs]

And I didn't really get to use a computer again for some time, except that I did have a couple of friends who had coded in BASIC and taught me some things, which I also thought was cool. I remember that in sixth grade, the teacher tried to show us how to code. They had the BASIC environment there. And I thought, oh, I remember how to do this. And I wrote line 10, and I had it print out my name, and line 20 GOTO 10. And I ran it because I remembered how to do that. And it just started printing my name endlessly.

And the teacher, who was really unfamiliar and was just following a set of instructions and had no idea how to undo that couldn't stop it, had to restart the computer. And by the time the computer got restarted, our computer time was done, and we had to go back to class. [laughs] So I ruined the coding session for everybody. It wasn't a high point, [laughs] and the teacher was not at all happy with me.

I can tell some other stories of learning to code later. But there's some commonality there. [laughs] Coding was fun when I had a chance to have fun. And it didn't work out very well, and there weren't resources for me to play. But also, there wasn't somebody around who could give me some guidance. The teacher wasn't able to find any help. It meant I did something fun and then got lost and frustrated, and that was kind of the end of it for everybody. And unfortunately, I ruined the day for not just myself but a bunch of other kids.

The kids love to explore. Kids explore by nature and want to go out exploring, and given the chance to do that in the right environment, will tend to latch on to it if they get the support that they need. With that context, let's go on and talk about some ideas for helping kids to code. We were talking a little bit before we started today about some experiences other people have had teaching kids to code. I've myself had a decent amount of experience.

I've taught several kids to some degree how to code, including my own and those of friends and relatives. So I've got some background doing this, have some ideas but certainly don't have all the ideas. There's so much out there, and there's so much science of teaching that I'm sure there are all kinds of things that I'm missing. And I'd love to hear what other people have to say. First of all, any thoughts based on my story or thoughts to begin our podcast?

TAD: Yeah, as I was thinking about this, there are maybe three things that really interest me when people talk about this kind of stuff because I'm curious how they got started. And those three things are, how did you first get access? What was your hook? What was the thing that got you interested and got you started? And the third thing is, who was your mentor, or who was the person who came along and gave you the nudge that got you in?

Because as I was listening to your stories, I'm like, these are some common elements that I've noticed in a lot of people's experiences. And so I'd be curious to hear from Eddy and Ramses because Mike, you, and I are both in our 40s. And so that first one, how did you first get access to a computer? Is [laughs] because they weren't ubiquitous when I was a kid, right?

MIKE: No, they weren't.

TAD: I remember when every teacher in my elementary school...I think I was in fourth grade. Every teacher got their own computer for their own classroom, and that was big. And you'd hear about computers, but they weren't really common and really accessible. So I'd like to hear other people's experiences; just how did you get access? What was the hook that got you interested? And who was the person who gave you the nudge? Maybe you don't have those three, but I've found those to be very common elements when talking to people about how they first learned or what got them into it.

EDDY: Actually, it's kind of funny; you kind of struck a chord with me there because I'm like, dang, when did I get interested in that? To give some context, I'm hitting 30. And back in elementary school, there wasn't high-speed internet, so the only way we had access to the internet was connecting to the phone cord. And you had to switch back and forth between taking a phone call [laughs] and connecting to the internet. So it was like dial-up.

And the problem was that cell phones weren't very prominent at the time. My mom would always go and scream at us, and she's like, "Hey, disconnect from the internet. I need to make a phone call." When she wasn't on a call, we had no access to the internet. And so we dabbled around, my older brother and I, on how to change elements in HTML. And seeing little buttons and text being changed and rendered was my first exposure because that's the one thing I could do without internet access.

MIKE: So the computer [laughs] was dial-up internet. The hook was being able to make changes in HTML so you could make a webpage. And is it your older brother who got you interested?

EDDY: Yeah. Initially, it was him. And he kind of just flew with it for a while. I kind of just sat back and watched him modify some tags. But it was something that we could do while not having access to the internet. [laughs]

MIKE: What about you, Ramses?

RAMSES: I'm in my late 20s as well. I've always just been around computers. I think I was first exposed to computers when I was like five, probably. We got a home computer for Christmas one year. But yeah, it was a lot of fun. I don't really remember being super interested in coding when I was really young. But I think I was just always intrigued by technology and building things. Mid-20s, I got more interested in learning coding and taking it a lot more seriously. So I really enjoy it because you get that feedback like you mentioned. And it's great being able to build things and to build something and know that you're helping someone.

MIKE: I'm with you on that feedback, that moment you realize you don't just have to be a consumer of what the computer gives you. You can make that a two-way conversation and ask this tool to do things for you and have it do that, and it's just magical.

EDDY: Was there anybody who kind of nudged you into it, or are you kind of self-taught, self-discovered?

RAMSES: Kind of a combo, like, self-motivated. I don't want to take all the credit myself. [laughs] I mean, I'm self-motivated, but I think I learn a lot from other people. There have been a lot of mentors that I've had. Mike was a prominent one early on and still is, you know, Afton, Tad, a lot of other people.

TAD: My curiosity is, were you thinking about taking this track when you first started working for Acima, or was it you found a niche in QA, and then from QA, people kind of nudged you over into development?

RAMSES: Yeah, it was exactly that. When I was in application support, I found kind of an opening that expanded my interest in learning software development. And I don't know if there was any single person that kind of pushed me. There were probably multiple. One of our old product managers, Jeff Madsen, was a pretty big proponent of that. Mike Challis was a proponent of that as well. I think he nudged me a little bit.

MIKE: Something interesting to me about that is we all have different paths here, those who picked it up more as adults, and I'm going to talk about you, particularly Ramses. A lot of people potentially listening to this who may be coming from a background where like, well, yeah, I don't have a traditional computer science background. I've never really done coding, but I've started doing a little bit of work.

But there is this...not really the back door or the front door, like, the side door [laughs] where you're at someplace that's...it could be a business. It could be something that's not even specifically a business but any organization where you have an opportunity, maybe unexpectedly, you just start doing this work. A lot of times, people think, well, this is just kind of this side thing that maybe I'll pick up a little bit. But that can be a real gateway into a career.

And I've known a lot of people now who've gotten into the career not by saying, "Oh, I'm going to go to school. I'm going to get a four-year degree, and then I'm going to go do an internship, get a job," like have this really clear linear path. A lot of people don't come in that way. They are in application support, and they get an opportunity to expand their roles, start doing some coding, and eventually, they become a full-time developer. And this applies in actually kind of diverse fields.

There are biologists who have found that to understand their data better, they needed to learn how to do some coding and machine learning. And so they became coders and started building up the tools to do better analysis of their data. Now they're developers and biologists. And the same thing applies to doctors or...those are just some that come to the top of my head that I read about. And these are kind of high-prestige professions. But there are some things that are less prominent that are also important.

But there are many professions that don't necessarily have a lot of visibility but have need for some sort of software. And if you can get in that a little bit, it's surprising just how much that need is there. And you can step into it, again, through that side door and find yourself with a fairly different career because you latched on to that and just kept on working on it.

TAD: Right. Yeah, I've met a lot of developers who came to it from one of these side doors, like you're talking about. Because it's really interesting to me, software is everywhere and really touches everything in our lives now: it's in your phone, it's in your car, it's in your...whatever appliance you're using to make your breakfast. [laughs] It's in your fridge, like, it's really surprising all the places that you find software now.

And it's interesting because I worked with a guy who was a physics major, but he's like, "Oh yeah, I had to model some things. And so I had to code some things, and I found out, oh, I really enjoy this more than I enjoy physics." I worked with a guy who was into accounting and uses Excel all the time. "Oh, I've got to write macros for Excel. Oh, I'm going to learn some more Visual Basic so that I can write better macros for Excel. Oh, I actually prefer writing macros over my regular accounting job." Suddenly, they became a developer.

Or I had a friend who was a journalism major in college, and he really liked to investigate and figure things out, and that led him to documentation and stuff, which led him into software development. So it really is everywhere. And it really is possible to transition from pretty much anything over into software development because it's so ubiquitous, I think.

MIKE: I agree wholeheartedly.

EDDY: I kind of want to touch a little bit, like, you mentioned before on this call that you were successful in teaching your kids how to code, and one of them is actually going to school for that. How did you engage or propose the idea to your kid? Because I'm sure you proposing that idea had some sort of influence.

MIKE: Yeah, that's a great question. It's a perfect segue into talking about what you can do specifically for kids. We've talked some about adults here more than kids and then a little bit with kids. There's the same idea of that hook and how people get started. My oldest, my son, he is now 18. He's going to...he's in college, University of Illinois.

When he was fairly young, I think the first coding that I exposed him to is that he would sometimes be working on math and want to have a better calculator than what he had. So he's working on his math homework, and he wanted to add some numbers together or do something like exponents, where it's a little more sophisticated, and you want to do a bunch of steps.

One thing about the way simple calculators work (I guess there are more sophisticated ones now and maybe even on your computer.) they usually perform the operations as you type them. So rather than being able to write out the entire program, you know, I say program but kind of the problem that you're working on and then execute it; instead, you do one step at a time. And it's very easy to lose context, and you kind of lose track of where you are. And you don't have a history of work that you can go back and check, which is frustrating. [laughs]

So I started showing him, "Hey, you can come up to this console and do some live coding and interact with the computer that way." I made sure to teach him several languages at once so he can see there's more than one way to do it. And they are pretty similar. I remember showing him Haskell, which is [laughs] a more obscure language but very mathy. And I said, "Hey, look, you can open this interactive console and just type in some Haskell, and you can get the results back." He's like, "Oh, cool." And I think I showed him Python and Ruby. All of them have the read–eval–print loop where you do interactive coding, or REPL, people will call it.

And I started showing him that, and he's like, "Hey, this is really useful." So he'd be using this. He'd pull this up on a laptop for his math class. So he could write out the problem, check that he had written down the problem correctly before he executed it. So unlike a calculator where you don't get to check your work, you can go back and say, oh, which steps did I do wrong here? And that was really helpful to him.

And once I had that hooked, well, now he knew that it was useful. Now he knew that there was a tool that he could use to make his life easier. And really, it wasn't super hardcore coding. It was just typing some simple arithmetic expressions. But that gave him the hook he needed to be able to start doing more. Beyond that, I started introducing him, when I had the opportunity, to some additional kind of sandboxes to play in.

And there are several tools I'd like to call out here. There's a popular one that we never really did use called Scratch, which is not too far from the Logo I used when I was a kid, where you can give instructions to tell an animated character or some sort of avatar or icon to move around the screen. And Scratch is popular. It's widely used in education. Probably a good option if you can find somebody who's interested in it. It just never really spoke to kids I've worked with. But there have been some other things.

One thing that most kids seem to love is Minecraft. And Minecraft has a huge modding community. Huge. [laughs] I know that there's a similar game, Roblox. There are a lot of sub-games in Roblox that people have created by coding them up. Roblox is kind of designed around having this, hey, you build your own mini-games community, and a lot of people have done that as well. So I think that's also another great option. If you've got a kid who's into Roblox, well, great, they can build their own games. I would strongly recommend something like that.

So my son really was into the idea of Minecraft. I showed him how to mod a little bit, and it was kind of daunting. There was a company who provided several classes on how to do the modding. He went through their program and really enjoyed it. And he built his skills by learning how to mod Minecraft. And once he had that, then he was able to...I showed him some Python, so he was able to start doing some Python.

Again, I signed him up for some other classes that he had some interest in, and he just grew and grew. He writes scripts now to solve problems that he has. Like, he wrote a little Python program to give himself flashcards so he can study for a Spanish class which goes back to right where we first started. It was useful for him. He was able to use the computer to do something cool. He was going to come back to it because it helped him out. All of those tools have been really useful.

There's another one that I've used I'd maybe like to revisit in a little bit. When I've talked to a group of people, that tool...and there are probably others like it. This one that I've used is called Sonic Pi. I believe it's open source. Honestly, I haven't really looked into it. But it's a tool that was designed to run on a Raspberry Pi to be really accessible for educators because you can run it on minimal hardware. And it allows you to do fun stuff with audio. You can code audio and so be your own DJ with writing code and write your own music, which is fun.

EDDY: That's interesting. You just found a way to engage them. And I think that's really important. In order for a kid to learn something, you make a game out of it and create activities around it to stimulate the brain. And that's really interesting, truly. And not only that, but sharing enthusiasm for their progress, I think it's important. That attributed to some of my little sister's advancements, too, the little she had. It was like, "Oh, you got your character to move like one pixel to the right? Oh, that's awesome." [laughter]

MIKE: Which sounds trivial, but it really is kind of awesome, isn't it? It really is this sort of magic that you can take this amazing device and have it animate things for you, automate tasks that historically was the domain of things that humans could do. And it may seem trivial to move it one pixel to the right, but can you imagine having to draw that by hand, trying to hand-animate anything [laughs] for that matter? The massive amount of tooling and experience that would be required to accomplish something like that would be prohibitive in almost all cases. Having a tool that can do that is amazing. And there really is a magic to having that character move a pixel to the right.

EDDY: You're like the puppeteer.

MIKE: Tad, I think you'd mentioned earlier that you've had some experience getting kids hooked on coding or giving them some experience. Do you have any tools or advice that you'd recommend?

TAD: It's hard because there are so many things out there. You almost need to find...well, I keep talking about the hook. What are their interests? There's probably some hook you can find that will get them interested. To be fair, coding isn't for everybody. There are people that... [laughs] my oldest daughter just started college, and she's going into natural resources and wildlife management. And she very directly told me that she wants to be outdoors, and she doesn't want to sit in front of a computer, and she wants to do certain things. And I'm like, okay, yeah, you're probably never going to be a programmer. You'll definitely be using computers for things, but coding is not your thing, and that's fine.

But I used to help kids just tweak mods for Minecraft. They were really interested in Minecraft, and they're like, oh, regular Minecraft is interesting, but, man, I found this really cool mod for Minecraft that I really like. And then they start using mods and installing mods, and then they're like, oh, maybe I can make my own mod. And so they want to make their own mod, but they have to find a book or a person or somebody that can help them with something like that. Just for a kid to make a mod, they're just like, errr [laughs]

I think it's just finding the right hook. It's interesting to me–a lot of kids come through video games where they're like, "Oh yeah, when I was a kid, my uncle gave me a bunch of games, and I was playing a bunch of games." And my uncle was also a developer, and so I asked him, like, "Can you make games?" And he's like, "Yeah, sure. You can make games." And he helped me make a simple game, and that's how I got hooked.

EDDY: Tad, was there an attempt to get your older daughter into coding?

TAD: A little bit. She had a lot of exposure to it just because her dad is a professional software developer. They did a few things in school, but for her, nothing really clicked. And so I'm like, you know what? Do your own thing. Follow your own interests. But for a lot of kids, it would click if you just find the right thing.

I think there's a common misconception that people have and kids have. It's like, oh, I couldn't program because I'm not really good at math. Well, it's true that math is really important for certain parts of software development. Like, if you're coding a really complex physics simulation, or you're doing protein folding, [laughs] or one of these things, you absolutely have to have a dual major in computer science and math or something like that.

But if you want to make just a website...I was talking to this girl, and she got into programming because she really got into The Sims. And she really enjoyed making custom objects and custom outfits and things for different people. And she's like; I would love to share this with the world. I would love for people to download all my objects and all my Sims clothing. And she got into WordPress because she needed to make a website to do this.

And from there, she got into PHP so that she could learn how to work her WordPress stuff a little bit more. And from there, she just became a regular general web developer [laughs] because she really enjoyed making objects for The Sims. That would be my advice is just figure out what the kid is interested in because there's probably something that is related that you can use to hook them. Because things like Scratch aren't maybe interesting for every kid. But being able to make a website and have your friend visit it and it does some animation might be what you're interested in, right?

MIKE: Absolutely. Or music. There's that Sonic Pi that I keep mentioning, or like you said, the Minecraft mod. [laughs] There's a wide range of things that are out there if somebody has some inclination that you can get them hooked with.

TAD: Well, one of the other things is some people come to it on their own. I think a lot of people need somebody they can model after or someone that will nudge them. Because I've talked to a few girls who are like, "I always thought computer science, programming, whatever, wasn't for me until I got talked into it by this other woman. And she's like, 'No, women can code too.'" [laughs] And they're like, "Oh yeah, well, cool. You're showing me that you can do it, so I could probably do that."

Or I've talked to a bunch of people who are just like, "Oh yeah, my uncle was a programmer, so I saw that he had a lot of fun with his job. So I thought maybe I can be a programmer too." I think role models are sometimes an important part too.

EDDY: Your kid, when you proposed the idea to start learning to code, how was the mom's perspective on that? Like, was she hesitant at first? Was she reluctant? Was she fully on board or committed? Because proposing coding to a kid can be daunting from like --

MIKE: It's an interesting question. So were my wife and I unified on this or was I proposing, and mom was like, "Ah, I don't know?" Is that the question?

EDDY: Yeah, exactly. Was she like, "Do you think this is the right idea?" [laughs]

MIKE: My wife has always been very encouraging of my career. My dad and his brothers worked in construction. My mom was a nurse. But I wasn't interested in nursing. But her dad was a handyman, so most of my role models were in the construction industry. And that affects the way you see your career path. [laughs] I did some school. I kind of ran out of money and went to make some more money and ended up doing construction-type work. I did a few different jobs in that field to make money.

And it took me a while to go back to school because it was hard to save enough. [laughs] But also, I didn't necessarily see myself as a coder. And my wife was always very supportive in that aspect, saying, "This is what you need to do." So when my son showed some interest, I think my wife was very much on board because she saw that it gave him so much potential. There's so much potential in pursuing that.

She was actually the one who went out and found the class for Minecraft modding and said, "Hey, let's go get this. This looks like a good option." And then, of course, being a professional here, [laughs] I was able to help him out with it. But I think she if anything, was more supportive than I was because she saw the opportunities that were available there and tried to encourage us to do that. And I think that that was really helpful and important.

She also encouraged also with my other kids. My second oldest...there's a big gap between my oldest and the next. My second oldest just turned 10. My daughter is seven going on eight, and she has shown some interest. So I've shown her some coding. She's done some stuff on Khan Academy. She played around with it a little bit. It was a little bit beyond her reach. And so we're giving it a little bit of space, but she's had a taste. Not everybody is interested. So my second oldest, I don't think he is really ever going to be that interested, but my daughter, I think, is. So I'm going to try to give her all the opportunities that I can.

EDDY: What I told my mom, like, even if they ultimately decide not to proceed with coding, I think it's a valuable asset to have in your arsenal.

MIKE: Absolutely. Well, let me ask this in a different way: how often do you write essays in your career? Or how often do you solve algebra problems or use your calculus if you took calculus? I'm guessing the answer to all of those is never. They teach it in school anyway because learning to write an essay and learning to do algebra teach you a way of thinking, of decomposing a problem into smaller parts and taking the time to craft a quality solution and to understand how to break up that problem into small parts.

And sometimes we forget that we learned that lesson, and we say, "Oh yeah, I'm just going to do it all at once," and we get frustrated and lost. But those skills are very much useful, maybe not in and of themselves but in teaching broader skills. And I think coding is very much that way as well. It teaches you problem-solving skills.

TAD: Even beyond that, it teaches you problem-solving vocabulary because I love to talk to other developers because I already have a shorthand for explaining the problem. Like, I could say it's X type of problem, or it's Y type of problem, or this is a certain type of approach to this problem. I've got all these words, and there's a very rich vocabulary that comes with understanding all these different problems and how to solve these problems that I wish more people had.

So I could say, "Oh yeah, this is a problem of this type." And they'd be like, "Oh, okay, now I see what you're talking about. If it's that type of problem, then maybe here are some of the solutions for that problem." I'm like, "Yes." [laughs] Like, it would be so nice if I could use my rich problem-solving vocabulary in everyday life, and people would just kind of pick it up and understand it. And I wouldn't have to stop and say, "Okay, here's a story. Here's an analogy. Here's a thing that explains why I'm about to tell you this."

EDDY: I do have a question for Ramses. Do you have any kids?

RAMSES: No. No kids.

EDDY: Okay. So I'm currently married, and my wife and I are in talks of maybe making our family bigger. My question for you is like, I'm sure you've thought...or if you do have kids, are you going to also approach them with the idea of coding?

RAMSES: Yeah, I probably would. I don't know if I'll have kids. [laughs] I think if I did, I'd want them to be curious and explore what they're interested in.

EDDY: Awesome, yeah. Because my wife and I have talked about that too, and I'm like, "Yeah, I think I'm going to expose our kid to coding, to the idea." She's like, "Are you sure?" Because she's super reluctant and she can't stare at a computer for longer than 10 minutes. And she's like, "Are you sure?" I'm like, "Yeah, totally." [laughs] I'm like, "I'm not going to shove it down his throat or anything, but have that as an option."

MIKE: Well, I think, like you say, it's an option. Giving people opportunities is different from cramming it down their throat, taking that cramming-down-the-throat idea, giving somebody this smorgasbord. [laughs] They've got, look at all of this feast that you can draw from. It is very different from holding somebody's mouth open and trying to shove something down there. If you try to shove something down somebody's throat, they're not going to want to eat. But if you present that feast in front of them, they're probably not going to think twice, [laughs] like, yeah, I'll have some of that. And providing that presentation and opportunity so they can say, "Hey, this looks appealing," is the key.

And Tad has been talking a lot about the hook, getting people involved in something they're interested in. Children very much...and I think this is maybe universal to people that children hone this skill. They can tell when somebody's trying to make them do something. And they know like, oh yeah, you think this is going to be good for me, so you're going to make me do it.

They realize that they have independent ideas, and they want to exercise their agency to do what they want. And so they're not going to respond to making them do something. But if you say, "Hey, do you want me to help you build a Minecraft mod?" Well, that's an entirely different scenario. That's like, oh, wow, really? I can make my own? You're giving them that feast.

EDDY: Or how about just saying, "Hey, you're not allowed to create mods."

[laughter]

TAD: A little reverse psychology. [laughs] Yeah, I briefly taught some kids really basic HTML. And I'd teach them a little bit, and then I'd see their eyes kind of glaze over. I was like, "Okay, well, here's how you can add an image to your page that you're working on. Here's how you can make the background color red," and then just let them go.

And suddenly, they're like, "Oh, man, I really want to add this funny picture from the internet to my personal webpage that I'm doing." I'm like, "Okay, cool. We'll download it, and let's see if we can add it to your page." "Oh, I really like the color pink. I want to make my background pink for my webpage." "Oh yeah? How do you think..." So you give them a little teaser, and then they're like, wait a second, I want to do this for myself.

And suddenly, they're learning the hex code for pink [laughter] where before you're like, here's hex codes and dah, dah, dah, and they're like, er. But you give them a little taste and a little freedom, and suddenly they're eager, and they're teaching themselves. And you're like, oh yeah, here's a little online color wheel or whatever, and see how you can pick a color and see that there's a code next to it. You could choose that color and copy that code, and then you can make something on your web page that color.

EDDY: You see, Tad, I initially started with that curiosity too. I was like, oh yeah, I want to add a link to another site. But there's a huge gap between learning how to do an inline href tag to doing some CSS styling [laughs] to adding some logic, one jump into another. And there are super huge gaps in between. And that's what initially turned me off the first time, which was like, well, it's like, what are variables? This is too hard. [chuckles]

TAD: Yeah, I think that's why you need someone to come in and help kids over those gaps. I was talking to a guy, and he's like, "I really wanted to make a game when I was a kid. And so I just opened up Notepad, and I started typing text into a thing, and I just saved it as .bat," or something. I forget how Windows works. But I think that's a batch file or something. And then he tried to run it. And he had just typed in, like, open a window, do a thing. [laughs] He just did it in English because he knew that you could tell computers things. And he knew that these certain types of files could make a computer do things. But he had no concept of programming.

And as a little kid, he tried it, and then nothing worked, and he just got discouraged. And it wasn't until years later that he's like, "Oh, [laughs] let's figure this out." But how cool would it have been if someone came along and was like, "Oh, I see what you're trying to do. Let's start with something real simple and work up from there." Somewhere there's a point where they show the interest, and they take the initiative to act on the interest. And you need to be there to catch them when they can't figure something out, or they get discouraged and be like, "Okay, let's fix it. And let's take you up barely to the next level."

MIKE: You hit on a couple of things that I've been thinking about through this whole thing. You need to have somebody there. Presumably, most people who are listening here and all of us here have done some coding professionally, or maybe you've just dabbled in it a little bit, but you have some knowledge. I'm thinking about what Ramses said. Well, he doesn't have any kids. He might not ever have kids. That's true of a lot of people. [laughs]

But that doesn't mean you're not around people, around children, or maybe an adult who is wanting to grow their skills that needs that person to provide some scaffolding for them to help them get over that gap. And we can do that. We can be there and provide that bridge so they can get over those big hurdles and get to where it's fun again. And I think that we should be looking for those opportunities because, well, it's important, but it's also rewarding. It's rewarding for the person who's helping.

One other thing I thought about that you reminded me of earlier, Tad, is there's a nationwide organization, I think is what it is, called Girls Who Code. They provide get-togethers and resources and mentors for girls in particular, who are often underrepresented in this field, to see those heroes, those role models that they can see themselves in. And if there's a girl in your life who has some interest, there are some really good resources out there to help them see themselves in that role.

TAD: Yeah. I've got two daughters. And that, I think, really opened my eyes to a blind spot that I had, meaning the first time I was going to play some games with my daughter, she's like, "Why can't I play as a girl?" I'm like, "Oh, wait, what?" [laughs] She's like, "I want to play as a girl," and I think we were playing Minecraft. And I'm like, "Oh, I guess Steve is the only option right now."

They added skins, and we helped her design a female skin for her Minecraft character. And she was just thrilled her character could have long hair and run around and whatever. Yeah, I think some real holes where girls don't want to play the game...I go back to this because a lot of guys that I know who became developers started out doing games stuff. But the girls didn't want to kill a bunch of things and save the princess, like, eh, [laughs] that has no appeal to me at all.

There's this game that my daughter loved called Aquaria, where you're this mermaid creature, and you sing different songs to create different magical effects. And you swim around in this underwater world, and I'm like, oh yeah. And this kind of goes back to the right hook. My daughter got interested in games. She got interested in computers because I found some games that appealed to her interests. And sadly, I think that's still tricky to find for girls.

MIKE: I think it is, but there are things out there. We got to kind of make that extra effort, right?

TAD: Yeah.

MIKE: Making some extra effort to make sure she gets those opportunities to see herself.

EDDY: I've always just been curious on the psychology behind child prodigies who have this nature, like, this knack of being able to pick up coding. And I saw a video on YouTube about this eight-year-old [chuckles] who was developing iOS apps and brought their family out of poverty. So I've always just been curious on the psychology behind what makes that kid different. That may be a topic for another time.

MIKE: Yeah, that is a topic for another time. But I will point out that if you've got a prodigy, you've got somebody behind them who's been helping them get there.

TAD: Yeah, even a prodigy needs access to computers and access to learning materials and probably someone who's there to guide them.

MIKE: Absolutely. I think that everything we've talked about today is equally applicable for a kid who's got some strong natural inclination. Everything I've read about prodigies suggests that it's mostly they were just interested in it, so they practiced a lot. You don't learn things just without work. So if you find somebody who's deeply interested in something and you just give them as many resources as you can to pursue that, they can run with it.

Everything we've talked about today, providing that hook, giving people the opportunities, giving them support when they get stuck, is applicable whether somebody is mildly interested and might not really run with it very far or is full on prodigy and is going to be building the next disruptive thing before they hit 20. The same rules apply, I believe. It's an interesting thought.

It's been an interesting session. We've talked about several tools that you can use. I'd invite anybody listening to go and find some child or adult in their life who could use some help and help them out. Give them a chance to grow and find the magic that's available in programming. See you next time.