Teaching Children Python-What Works?

This video features Mykalin Jones at DjangoCon Europe 2023 in Edinburgh, Scotland.

Teaching Children Python-What Works?
0:30:44
Published June 7, 2023
248 views

Teaching Children Python-What Works?
by Mykalin Jones
https://pretalx.com/djangocon-europe-2023/talk/NXZBPX/

We will explore how children gain programming knowledge, how to keep them interested and excited, and how this might inform the way we support adult newcomers to programming.

Have you ever tried to teach your kids programming? Do you have friends trying to learn as an adult? Have you ever wondered if you would have been better off learning to code earlier in life? The push for more people to learn to code has caused an explosion in the educational industry. Boot camps and certification programs of dramatically varying quality have emerged in nearly every corner of the world. These programs are often accompanied by lofty claims and promises. Children have been no exception to this, as more and more companies attempt to capitalize on the claim that children should start learning early because it's "like learning a language". However, research suggests that this might not be the most solid argument. We will be exploring:
-What benefits are there in teaching them early?
-How do children acquire programming knowledge?
-How does our language around the concepts affect their understanding?
-How do we keep their interest?
-Can the answer to these questions inform how we teach adults coming in from non-STEM fields?

This talk will focus on these questions by presenting the current data we have, in conjunction with anecdotal evidence from sessions with children and adults who code in python.

Summary

Children do not need to start Python as early as possible, and forcing coding or assigning projects beyond their readiness can create frustration and resistance. Before formal programming, they benefit from literacy, mathematics, typing, curiosity, collaboration, and the confidence to say “I don’t understand.” Mykalin Jones recommends a playful, spiral approach built around demonstrations, mimicry, open-ended projects, repeated practice, and visual tools such as Turtle, with teaching paced to each child’s interests and development. Programming resembles language learning in some respects, but it relies primarily on general-purpose cognitive processes rather than a dedicated language center, so there is no special early-childhood window comparable to learning speech sounds.

Key takeaways

  • Do not force children into coding or assume that following a tutorial means they understood it.
  • Build literacy, mathematical understanding, typing ability, curiosity, and collaboration alongside programming skills.
  • Use a trusting environment where children can admit confusion, make mistakes, and treat debugging as a solvable challenge.
  • Start with simple demonstrations and what-if questions, then move through guided mini-projects and increasingly independent work.
  • Open-ended projects such as Mad Libs, choose-your-own-adventure stories, and Turtle games make Python concepts concrete and enjoyable.
  • Children are often ready around age nine or later, but genuine interest and readiness matter more than a fixed age.

Summarised automatically from the transcript.

Chapters

  1. 0:00 Teaching Children Python The speaker introduces her work and outlines concerns about pushing children into programming too early.
  2. 2:28 What Doesn't Work The talk examines forced classes, overly difficult projects, linear curricula, and removing play from learning.
  3. 4:03 Foundational Skills The speaker discusses literacy, mathematics, typing, curiosity, collaboration, and other skills that support programming.
  4. 5:35 How Children Learn Observation, mimicry, exploration, frustration tolerance, neurodiversity, and playful tools such as Turtle shape the learning process.
  5. 8:44 Adult Learners The speaker compares teaching children and adults and explains how gentle, assumption-free introductions help both.
  6. 9:32 Programming and Language Learning The talk considers similarities between programming and natural languages, along with differences in how the brain processes code.
  7. 13:30 Bilingualism and Programming The speaker explores bilingual learning, teaching programming in different languages, and how language affects concepts such as mutability.
  8. 17:22 At-Home Learning Parents can use everyday activities, puzzles, and children’s interests to introduce computational thinking without forcing programming.
  9. 19:02 The Spiral Method The speaker describes a gradual, repetitive curriculum that begins with demonstrations and develops through guided projects and puzzles.
  10. 20:36 Learning Goals and Projects The curriculum emphasizes logic, problem solving, confidence, creativity, readable code, and open-ended projects such as stories and games.
  11. 23:17 Questions The speaker answers questions about the curriculum, Scratch, screen time, typing, visual programming, and building confidence.

Transcript

5,725 words · auto-generated Show

Automatically transcribed, so expect mistakes in names and technical terms.

0:06

Speaker 1: So, hi, my name is Michaelin Jones. I'm the founder of Ask Astrotutors, which is misleading, there's just one of me. Um if you want my curriculum after this talk, totally free. Send me an email, go to astrotutors. com and send Send me a message, um, and it's fine. I don't get too much into the specific things that we do. I I do explain some of the projects that I do with the kids. But if you really just want to go through it and see exactly how I structure things, then that's great. Send me a message. No cost, but if you do want to hire me to teach your kids, I love being able to eat. I'm working on the clicker. All right, so I want to start with some things that actually concern me about how we're approaching teaching kids. Uh I get a lot of parents that come to me or I even see websites saying these things.

0:55

Speaker 1: So we should start teaching children coding as early as possible because it's like learning a language. And I'm gonna talk a bit about this. I'll try not to use all my time on it, but I think it's a very interesting topic. Other marketing aimed at convincing parents to put their kids in coding classes, ASAP, and I mean Python programming for like six years. years old. I don't really agree with that. And then there's something I like to coin as like the parentally induced Dunning Kruger effect. So I get a lot of kids who think that they're more proficient than they really are. They don't know what they don't know. And then they're just harder to teach because they think, oh, I already know this. And then the parents come in and they think that their kid is more competent than they really are, so they get annoyed with me for spending the time I need to spend on the basics.

1:42

Speaker 1: And it's so essential that you really take your time And then what is the most upsetting is children who are literally afraid to admit when they don't understand. So as a teacher, I find it really important to um form a re a trusting relationship with the kid where they are so comfortable telling me, Miss MJ, I don't get it. And sometimes it will take weeks and then the parents will leave the room and they'll be like I don't understand and they didn't want to admit in front of the parent. Um and the other thing is, you know, kids need to get outside today. Like what do you do? Don't kick kids by the way, but you know, I mean they're just in front of the screen the whole time. It's like there are other things you can do with your life. So So I don't want parents to be like, oh my god, I need to make my kids code right now.

2:28

Speaker 1: And I think that that pressure is being put on them. So let's start with what doesn't work, because I'm a very positive person. person. So forcing kids into coding classes that they aren't interested in, they're just going to have a bad time, get a bad taste in their mouth for programming. The teacher is gonna feel like they're pulling out teeth. It ain't no fun for nobody. Um but yeah, pushing kids to do projects they simply aren't ready for. So I get parents who go through these online tutorials that the kids aren't ready to understand. They're far too complicated, but these tutorials go step by step. It's very easy for everyone involved to think, yeah, they understood that. Nope. Um and then a linear path. Um you can't assume that kids understand anything ever

3:13

Speaker 1: Uh until you can ask them a simple question and they can sort of teach you. So you want to flip the classroom a bit and I think that really helps Because, you know, it doesn't mean you're a bad teacher if they didn't get it the first 50 times. Some they sometimes they just weren't ready to learn that thing, um, or they didn't have the background yet. And then removing the play from learning. So I get a lot of parents, usually they're software engineers, who are like, why aren't my kids doing this super complicated project yet? And it just makes it so awful for them and everybody involved. So what we don't want is that situation where the kids are like literally becoming little software engineers or something. Because yeah I don't know. It just doesn't work So the big problem is that we're fixated on teaching children to code, but I'd argue that we're asking most of them to run before they can walk.

4:03

Speaker 1: We gotta slow it down. We gotta make it playful. And we gotta focus on some other things first. So literacy. I get kids who come to me who can't even read fluently yet. They're not ready for Python. Um mathematical background, I see articles all the time where they are telling adults who might be switching into data science or Um parents that they want their kids to pay them to send them to these boot camps. Oh, you don't need to know math to program math really helps guys. And then typing skills. Sometimes I get kids, they're still doing hunt and peck. One of my dear sweet students still calls parentheses, those circle things. Um so yeah, typing skills really essential and there's loads of really fun typing games that I recommend to all my parents.

4:50

Speaker 1: And then just creating inquisitive minds who aren't afraid to not know something. I tell all my students, your only competition is you. yesterday, um the smartest thing you can do is to understand what you don't know, what you need to know. And saying I don't get it is the best thing you can do. to make sure that you'll get it eventually. Um and then being able to work with others, you know, uh you can focus on certain skills and everything. But being collaborative, being inquisitive, asking questions, being supportive, just being an enjoyable person to work with is gonna make them more employable than if they learnt Python at age five. So how do children learn? They start with observation. Babies are always looking around.

5:35

Speaker 1: They always, you know. are so amazed. Uh I have a two one a two-week old niece and she just stares at everything. It's so cute. But it's okay to food uh food speed them. Spoon feed them. I had a teacher in during my master's, I did my master's in particle astrophysics, so you know, really easy stuff. And he was like Oh, I I'm not gonna tell you how to do that. And I just I never got it really. It was very, very difficult. And so as a teacher, I really want to make sure that my students' frustration is less than or equal to their frustration tolerance So they don't just quit. And a lot of my students are neurodivergent. That's something I unofficially specialize in. And with ADHD, for instance, frustration tolerance can really be

6:22

Speaker 1: one of those big blockers because they can hyperfocus on something and then they get against that first wall and they just can't quite get over that hurdle. So if you can go back a bit and help them work through it, I actually think that it can be You know, well, I don't want to make claims, but for me programming was quite therapeutic. I would hit that wall, I'd get frustrated, and then each time I got better at sitting with those issues um and then overcoming them. And so I think programming can actually be a really great hobby for a lot of kids who struggle with that. Um and also I don't worry about setup. A lot of curricula I've noticed start with setup and it can just get really frustrating. We use Google Collab, we get right into it, and then we move on to Replit um for Turtle, which I'll talk about. But yeah, that should only be the first part.

7:08

Speaker 1: Observing, of course, you want them to do things themselves eventually. So Mimicry can also be really helpful. I do something, you do something. And then they explore. So random play is absolutely essential. They will ask you silly questions that you think is ridiculous. Don't make them feel ridiculous. If they say what happens if I put you know, a hundred in there instead of ten and you run a for loop a hundred times, they'll sit there and realize, oh wow, that just took a lot longer. But they are so amused by that. I don't know why. Um Asking why and what if a million times is just gonna happen, and that's great. They're learning something. So you want them asking questions all the time. That means they're really interested and engaged Um do things that stimulate their senses. Now you might be thinking programming, what is that really gonna stimulate? We don't have like smells and tastes and everything.

7:55

Speaker 1: You can come up with actual projects that have smells and tastes and whatnot, but an example I love to use is a turtle So for loops take a while to really click for students. I notice while loops as well. But here with Turtle, I can actually visually show them an example of a for loop and I And they can see different colors and they can see the little turtle dude moving around. It's super cute and fun. So I love turtle as a pedagogical tool as well. But yeah, just feeling safe, encouraged, and having adults who are excited about what they're learning. An adult sitting in a room who's just, you know. Also playing is also really nice. Sitting there and being like, can we do something more serious? Not so helpful. So if you feel like that's you, maybe step out of the room. But my students who do the best have a parent who's also there who actually doesn't even have

8:44

Speaker 1: programming knowledge and they're like, this is so cool. Um and they really feed off that excitement. So what about adult learners? So one of the things I noticed is when I started teaching children, I got better at teaching adults Because when I was learning programming, I was going through a physics degree, and I was sort of thrown into the deep end. Nobody would explain anything to me. Physicist our horrible programmers are well, so as well. So like I couldn't read their code. But yeah, it was just really, really difficult. And then I realized If you sort of have this gentle introduction to programming that doesn't assume anything, it can also help them just feel more comfortable. They do uh learn a bit faster usually because they have that static information like basic ideas of mathematics and stuff, the literacy, the typing skills and everything.

9:32

Speaker 1: And oftentimes they're really motivated towards a goal which can help. Um, but yeah, a lot of adult materials are just far too frustrating up front. So really they learn pretty much the same, I've noticed. Um but yeah, I take a bit more guidance from their professional goals, of course. But if you have any friends who are interested in learning to program as an adult, feel free to give them my curriculum. Um I think it I think it's great. But yeah, so I wanted to go back about that whole question about is learning to code like a language? Do we really need kids? learning programming from like the age of three? And the short answer is no, but yeah. So there are some similarities like syntax, sort of the grammar of programming.

10:19

Speaker 1: communicating what you want to do. So learning to use language in a way that's like algorithmic thinking makes a lot of sense. And then learning important vocabulary. You also have levels of fluency. So I am fluent in French at a B2 level. I would not be as comfortable as somebody who's a C1 level or a C2 level. And I do think that You know, you can be encouraging and say, yeah, you know programming, you know Python or something, but you know, you haven't quite mastered certain things yet and stuff. So there's different levels of learning where you can do, you can pretty much function. I can function in France, but not quite as comfortably as somebody who's there natively, right? And then the learning mindset required, being a language learner has absolutely just made me a better learner.

11:06

Speaker 1: It's a really good test for knowing, hey, I really don't know what I'm doing. um and having to figure out different ways of teaching yourself. Which as a teacher, one of my major goals isn't teaching the person everything. It's teaching them how to acquire the information and learn it. So autodidactical skills But yeah, mistakes are a part of the process. So the difference is there's quite a lot of differences. So pruning is a big thing we worry about with languages. That's why starting really early for languages is really important because by about 18 months, I think, your brain prunes the ability to start picking up new phonemes. These are specific sounds to the language. I haven't been able to think of an analog to that in programming, but if any of you have any ideas, go ahead.

11:54

Speaker 1: I don't really think that there are so much, but that's why it is more urgent to teach languages much younger. Reading code activates the general purpose brain network, not the language processing centers. So Basically, this multiple demand network is involved in complex cognitive tasks. It's a signal really, if it's lighting up, that you're doing something really difficult. Um this happens with crossword puzzles, math problems, so it seems like programming in that sense is more related to just really difficult math or something. Um coding and reading code additionally activates other centers not activated by math problems though. So that's really interesting. It really just is genuinely its own thing. Uh and you know, as far as evolution goes, we haven't quite gotten to the point where we have our own coding center of the brain yet.

12:43

Speaker 1: Maybe one day. Um But yeah, once learned, programming doesn't seem to rely on language reasons regions, but notice I say once learned. So how about why while learning? So language learning aptitude tests have a stronger correlation than math with gaining proficiency. So 72% of the variants in learning rates were explained by four different factors in this study I've uh cited here. And you can see the vast majority of that was related to their language aptitude. And actually certain like graduate programs and stuff like the physics graduate program in Harvard was saying they've started considering the reading test for the graduate record examinations more than the math test because it's a better indicator of whether or not you'll finish a physics PhD and it kind of makes sense logically

13:30

Speaker 1: if you can read fluently and gain information and comprehend information much better um if you're just a better reader really um you tend to be a better learner So it it does make a lot of sense to really focus on just your kids' language ability. Um also how we teach languages effectively may guide how we should just Teach in general, but teach programming as well. So integrate it into your day-to-day life, involve play, and move move away from rote memorization. And then raising your kid in a bilingual environment may genuinely create better programmers. So bilingual people tend to have a higher language aptitude, better focus, actually. Uh increased cognitive flexibility, so code switching. Um you know my roommate and I

14:16

Speaker 1: generally quite fluently switch between French and English, French and English. And that is associated with just better cognitive flexibility, I suppose. And then it seems that being bilingual is correlated with mathematical ability as well. So speaking of being bilingual, um there is this question of, well, my kids' first language isn't English. Should we use coding to teach them English? It might be more accessible to them to start off in their native language. So I am interested in translating my curriculum, because I live in France, translating it into French. But uh I always thought it was interesting when I was taking uh cognitive psychology, there are actually languages that are better suited to math. Um because

15:01

Speaker 1: of the way math is spoken about, it is more intuitive. So it's more pictorial or it's just easier to understand. So there might be ways to more precisely describe coding like programming languages where English isn't the best thing. So I do think that like diversity And having people who speak different languages and teaching in different languages might actually be really beneficial. Um so I like to use the example of mutability. Uh this really gives my students So in English we like to say something is something. It is cold outside or this is that, but we have to put qualifiers around it. Like uh the list fruits is equal to

15:47

Speaker 1: and then we make a list of fruits um but that can change later uh and they they get really like what um So, and then sometimes I'm convinced they don't even get what a variable is. Just as a side note, if you do decide Oh, no, I want the laser If you do decide to teach your kids how to code, you're gonna see this issue all the time. Um it's just every single day they write print equal as opposed to print parentheses. Um I don't know why they do that, but we we it just stay calm when they do. Eventually after the hundredth time you might want to rip your hair out. It's okay. Um so uh yeah it takes a lot of different ways to of explaining these concepts for students to really understand and you need to be precise with your speech. And I do think it is very interesting that some languages do have mutability literally built into the language.

16:36

Speaker 1: Um so an example I like to use is Irish. Um you have uh it is cold, but in Irish there's two ways to say something is something. There's the permanent way, is And then there's the this could change later away, which is ta, so ta shifle is how he would say it is cold, because it's not always cold. I mean it is an Ireland, but yeah. Um so they were being optimistic really Um but yeah, languages each contain a unique way of seeing the world. I do get in this discussion a lot of should we have everything in English. My program in France was mostly in English. But we did do this sort of code switching where if something made more sense to explain it in French for the students, you know, teachers would switch back and forth and stuff. And I think every language brings in a new way of seeing the world. So big plug for being bilingual.

17:22

Speaker 1: I think it's great. Alright, so I'm probably running out of time, but uh what can you do around the home? Uh so the example that Jan gave was really awesome. I think that you don't have to start when they're super young with Python Um just provide puzzles and use real life situations but explain them like a for loop or a while loop. So you can use the example of baking. So for each of the little cupcake dudes, um I want to repeat the same action over and over again. or while I have this cupcake batter, I can keep filling this in. So you can just have them explain things in different ways like that. Uh and then also I think don't force it on them. Allow them to follow their own interests. So music, languages, um, art, science, math, they're all excellent for development.

18:12

Speaker 1: And I think that that is always beneficial. But when are they ready? That's really a great question. Um so when they show genuine interest is the the best time of course. But if you're excited about it, I think that they'll often get excited about it. We don't want to force anything on them. We want it to be a good experience. So if they like it, they stick with it. If they're asking a lot of what-if questions and try things, if you show them simple codes, this can be really great. Just show them what you're working on or something you know very simple. And uh they can try out different things. Even if you think it's kinda silly, they're just randomly playing with it and they're gonna start to learn things If they're ready to work on their typing or are already okay at typing, because that can just really increase the level of frustration and we don't want that.

19:02

Speaker 1: And then some math background really does help. So you know I get a lot of eight-year-olds, it's a bit early. If they're more like, you know, 12, 13, if they've seen a function before, that can really help. But yeah, usually nine years old is good. I prefer a bit older. Um I will go as young as eight, but parents really need to mitigate their expectations as far as How far we'll get in a short period of time. It's more about playing with it, enjoying it, and experiencing code for the first time Uh so I use what's called the spiral method. Um so we start with demos, and the thing is there's a lot of revision. It's not a linear method of teaching. We're gonna be going back over everything.

19:48

Speaker 1: Um but we start with very simple let me show you something cool and then asking what-if questions, letting them play around with it a little bit. We get to guided mini projects that are usually text-based games and stuff Um and then we will review with short syntax questions. I like W3 schools for this. It doesn't really get into a lot, but just letting them review how to do stuff in Python, so that's not the problem. They can actually focus on solving problems instead. Um it's a good one. And then puzzles like on codingbat. com, totally free resource. I think it's really great. It's on little puzzles and stuff. But we really want to be repeating. So we repeat my basic curriculum or at least the topics within it More than three times each. And each time the challenges become slightly harder and they work a bit more independently.

20:36

Speaker 1: Well we focus on uh ranges depending on the age, but my main concerns are logic in problem solving. Um developing confidence in finding the answers. So I want students who feel like I might not know how to do that, but I can figure that out, and that's really empowering and awesome, and I think that that can help them later on in life with any type of learning Um self-motivation, so why do you want to learn to code? What can you do with coding? And then you know they get excited about maybe a little project or something. um in creativity as well. What problems can you solve with this? Or is there a different way to do that or a better way to do that? And then good commenting is my pet peeve. So I once had a professor send me a piece of code that The only comment in it was this should be self-explanatory.

21:23

Speaker 1: No. Um and then just readable code with And so I think that's really important. And some examples at So I like for my projects to be really open-ended. There's a basic idea, and then they make whatever they want to make with it. And that's more fun for them. So we have the code cake, it's kind of silly, but they get they get to make their own cake and then they print it out. It's like a multi-line string. Mad libs are really fun, so they'll write a mad lib and then fill in the blanks. Similarly to that, we'll use lists. uh and the random module to make a random story, picking accessing stuff from the list and then putting it in there and Uh that's always fun. My favorite is the choose

22:08

Speaker 1: your own adventure story. So, you know, we'll get really cute stuff like, oh, they went to the sea and met a mermaid and then You walk into the forest and get eaten by a bear. Um, so each of them has their own little take on this. But yeah, it's um, you know, you have your if-else. All that stuff. So conditional statements, and it's it's a really fun way to learn about that. And then we have the turtle racing game, so it's another example of turtle Um and so they they make turtles that randomly race. Um and that can be really fun as well. So just different things. They can do whatever they want, really. They can make their own racetrack however they want it to look. But they have to figure out how to use all the different skills we've been learning prior to that to make this sort of game. But I like I like to leave it pretty open-ended.

22:54

Speaker 1: Yeah, that's it. Thank you.

23:05

Speaker 2: Thank you so much, Michaelin.

23:06

Speaker 1: My pleasure.

23:17

Speaker 2: Uh so if you'd like to ask your own question please uh please use the mic. We only have time for for for a couple of a couple of questions here. So here are two Number one, your curriculum. You mentioned your cur your curriculum. So uh is it available on on the internet somewhere?

23:32

Speaker 1: Uh yeah, if you email me, um I'll send you it's just in a uh Google Collab doc, so I'll I can link you. to it and you can take a look at it.

23:39

Speaker 2: Fantastic. And you also mentioned that you were thinking about maybe translating the curriculum. Is there any way that the community that has gathered here can can uh help you in any way, support you in any way.

23:51

Speaker 1: Yeah, if anybody's interested in that, um then I would love to talk to them. Uh that would be fantastic. Uh so I know code. org is actually making a lot of um pedagogical material in all different languages. I was actually looking, they have 20 hours of Irish language materials now, so that was really cool. But yeah, if anybody wants to translate it into their own language or speaks French fluently, that would be amazing.

24:15

Speaker 2: Thank you. And we have some questions from from the audience.

24:19

Speaker 3: Hello.

24:21

Speaker 1: Hi.

24:21

Speaker 3: Hi. In most modern programming languages, the first program is uh print hello world. But in basic of like 30, 40 years ago, for most kids at least, the first program was 10 print and then the person's name. 20 go to 10, which made it like repeat it again and again and again in an endless loop. And that was very, very satisfying. If you go to Python, the the equivalent would be while true colon print the name. That is somehow a lot less satisfying. And I wonder if you can think of why and how to bring it back into Python.

25:07

Speaker 1: I don't know why that would be less satisfying. I get what you mean. Um the one that I use where it's like printing a lot of stuff uh is uh five little monkeys jumping on the bed. So I have it count down five little monkeys, four little monkeys, three little little monkeys, two. They really love to make it a hundred little monkeys and have it count all the way down. So that's that's what I use to show them uh four loops for the first Four loops for the first time. No, file loops. Which one? You could do it there. You get what I mean. Yeah.

25:38

Speaker 2: Okay. Um please. Hi

25:40

Speaker 4: there, thank you very much. Um I don't know if you have any experience with MIT scratch for visual programming. I'm so glad I introduced my eight-year-old stepson to that. He's just obsessed. He does have ADHD as well, which leads into what you mentioned about neurodiversity. So my autism combined with his ADHD, sometimes I get really frustrated when he watches the tutorials and he just runs away with it and he's copying things into the backpack so it's like a clipboard area. So he's copying a lot of code but he learns from it and I'm trying to educate him about that. But yeah, maintaining the enthusiasm when I'm trying to explain, like, yeah, don't you there's a better way to do that, but maybe I'm jumping the gun, you know, he's having fun, he's creating his games. um like ten different variations of the same game, but it's it's actually incredible to see just how quickly he's

26:28

Speaker 4: got that passion for it. and see where it goes. Um I'm trying to get them into like actual code like Python though. But then again lots of programming is done visually now. You have to look at like Blender and the tools that they use and Other things like that like the Unity Game Engine and un so yeah, Visual Programming I think it is here to stay. Thank you.

26:48

Speaker 1: Yeah, yeah, thank you Oh wait, was there a question in there? I'm sorry.

26:53

Speaker 4: You mentioned sorry. You mentioned uh I know, right, I was trying to formulate the question. Oh it's okay. So the question would be something like if you've got a kid who's really obs uh really focused on visually doing programs, how do you then like bring it back to hang on, let's focus on your typing skills He's because as soon as I mention things like this, he's he just switches off. He doesn't wanna he doesn't want to talk about it. He wants to do his thing.

27:19

Speaker 1: Yeah, I will say like and this isn't like a advertisement but I will say like my so my my parents are musicians actually and and at some point my mom did have to get somebody else to teach me piano because she was a pianist and there there is something about it coming from your parent where you're like I'm fine, Dad. But that could help a lot. Um, you know, and then just bringing it up at a different time where it's like, hey, do this typing thing while we're in the car um that could be helpful as well. So maybe like not when he's doing what his thing, that's awesome, but just at a very separate time, just sort of slide that in there like it's a totally separate issue, sort of. Great question. Thank you.

27:58

Speaker 2: And I believe we have one more question over there.

28:02

Speaker 5: Hello and thank you. Um so I guess that's whatever question that is uh from what age the answer is it depends But uh for instance you say it's uh eight or nine years old to start programming is like a good guidance. What would you say uh is a good age to to take the kids next to you so that he or she can can look at what you do and also at uh approximately what age the you should or you you could give a kid the computer so that they learn typing uh operating the computer stuff like that?

28:35

Speaker 1: So I am genuinely concerned about Screen time for young children. So I I think that that's actually a good question for your pediatrician as far as how much screen time they should have. But as far as you know, seeing what mom and dad do and uh the excitement behind it. You know, I remember from a very young age, my mom sitting me next to her on the piano and just being amazed at how she could play and stuff and it's it's very similar with programming as well, just looking at what you can do with a computer program and stuff. So as long as you think that it's appropriate for them to be in front of a screen in short bursts of time, really any y age as soon as they're ready to look at screens is is totally fine. Did that answer your question?

29:17

Speaker 5: Uh yes. Okay. Thank you.

29:19

Speaker 1: Thank you.

29:21

Speaker 2: Thank you. And we have one final question.

29:23

Speaker 6: Hello and thank you for the talk. Uh you mentioned uh confidence twice. You mentioned the confidence to uh be able to recognize that you don't understand. and uh the ability to have the confidence in knowing that you're going to be able to solve a problem. How do you help foster that confidence? Uh is there any tips or anything for helping people gain that confidence?

29:54

Speaker 1: Yeah, it's not being afraid to be wrong. Not being afraid to make a mistake. Um, you know, if you feel more safe to just keep getting it wrong until you get it right in that rush of I finally figured it out, um and making them feel like that's just the process. it it's okay to be the last person in the room to solve the problem. If you solve the problem, you learned it, maybe even learned it like solved it in a different way that was better or something. Um so I think making people feel safe, comfortable, and um just sort of excited about, ooh, I've got a bug. Um and debugging, yeah, I know it really freaks out a lot of people when they first start, but now it's like challenge. So sort of approaching it from that perspective, I think is really helpful. Thank you.

30:38

Speaker 2: That's a very positive

Questions this talk answers

What doesn’t work when teaching children Python?

Forcing uninterested children into coding, assigning projects beyond their readiness, following a rigid linear path, and removing play from learning can make programming frustrating and discouraging. Teachers should check understanding rather than assuming that step-by-step completion means the child learned something.

Discussed at 2:28

What should children learn before they start Python?

Reading fluency, some mathematical background, and basic typing skills make learning Python much easier. Children also benefit from developing curiosity, comfort with asking questions, and the ability to work with others.

Discussed at 4:03

How do children learn programming effectively?

They learn through observation, imitation, and exploration, with adults gradually letting them do more independently. Playful experiments, “what if?” questions, visual tools such as Turtle, and an encouraging environment help keep frustration within a manageable range.

Discussed at 5:35

Is learning to code like learning a language, and should kids start coding very young?

Programming has language-like features such as syntax, vocabulary, and levels of fluency, but it does not have the same early-childhood window as spoken language. The speaker’s short answer is no: children do not need to begin programming at age three, and language development may be more important to prioritize.

Discussed at 9:32

How can parents introduce programming at home without forcing it?

Use puzzles and real-life activities such as baking to explain repetition and loops, and let children follow their own interests in music, art, science, or mathematics. Show simple programs, encourage experimentation, and keep the experience playful rather than demanding.

Discussed at 17:22

How do you know when a child is ready to learn Python?

Genuine interest is the best indicator, especially when a child asks “what if?” questions and enjoys trying things. Typing ability and some mathematical background help; around nine is often a reasonable age, while eight can work if expectations remain modest and the focus is on exploration.

Discussed at 18:12

What is a good way to structure Python lessons for children?

The speaker uses a spiral approach: begin with demonstrations and “what if?” exploration, move to guided mini-projects and short syntax reviews, then revisit the same topics repeatedly with gradually harder challenges and more independence. Open-ended projects such as Mad Libs, choose-your-own-adventure stories, and Turtle games let children apply the concepts creatively.

Discussed at 19:02

How can you help children build confidence when learning to program?

Make it safe to be wrong, make mistakes, and be the last person to solve a problem. Treat bugs and debugging as interesting challenges, and help children experience the satisfaction of figuring things out rather than making them afraid of errors.

Discussed at 29:54

Presenters

Note: We understand that names change, people change, and bodies change. We respect each individual's journey and privacy. If you have any concerns about a video or need us to remove content, please don't hesitate to contact us. We will handle your request with care and promptly address any issues.

More videos from DjangoCon Europe