Keynote - Power to the People who Teach the People with Sheena O'Connell

This video features Sheena O'Connell at DjangoCon US 2024 in Durham, North Carolina, USA.

Keynote - Power to the People who Teach the People with Sheena O'Connell
0:55:51
Published December 6, 2024
204 views

One thing I absolutely love about the Python community is the fact that there are so many people with teacher's hearts. Teaching is an amazing thing, you can change a person's life just by spending some time with them, having conversations, showing them stuff.

It's normal for people with software development skills to take on teaching roles - this might be through formal or informal workplace mentorship, community involvement, through being hired to teach or any number of other situations. Teaching and sharing knowledge is often a part of the job.

Software development and teaching are two distinct skill sets. There is a science to teaching and learning - there is a robust body of knowledge, there are techniques, mindsets and patterns that make teaching effective. And, on the flip side, there are mistakes, anti-patterns and myths that are very much worth avoiding.

It's perfectly normal for software developers to take on teaching roles and responsibilities, but it's exceedingly rare for software developers to receive any training in how to teach well.

I've been working in alternative education for quite some time, I've learned a lot of lessons along the way. In this talk, I'll share some of the most impactful lessons I've learned.

This talk was presented at: https://2024.djangocon.us/talks/keynote-monday/

LINKS:
Follow Sheena O'Connell 👇
On Mastodon: https://fosstodon.org/@sheena
On X: https://x.com/sheena_oconnell
Website: https://sheenaoc.com/

Follow DjangoCon US 👇
https://fosstodon.org/@djangocon
https://x.com/djangocon

Follow DEFNA 👇
https://www.defna.org/

Video production by Confreaks
Follow Confreaks 👇
https://confreaks.com
https://x.com/confreaks

Transcript

10,423 words · auto-generated Show

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

0:20

Speaker 1: Hi, everybody. Happy to be here. Hello, my name is Sheena. These are my emojis. I've been coding for a long time. I've been coding since I was a young teen. So about Uh 20 plus years ago I learned Turbo Pascal and it's been quite a ride since then. Um mostly I've been working in different kinds of startups. I enjoy organizations that are kind of scrappy and kind of figuring things out. I enjoy things that are uh multifaceted um and whatnot. So for the past five years I've been working in tech education and I've come here before and I've spoken about that journey before and the different things that I've worked on there. The TLDR is that

1:06

Speaker 1: I think about Building systems around education. So I started off with training and mentoring individual learners. And then as time progressed, I ended up training and mentoring teachers. And I ended up Building systems around all of this. So the way I think about it is I take the science of learning and I turn it into the engineering of learning. So what that means is like I need to keep track of all sorts of different things. I need to understand how people's brains work and how learning actually works. Um and I need to know how motivation works and what is required in the field that people are going into and then turn that into a system. So there's curriculum development and things like that. It's also software development, so building different tools to help guide learners through processes.

1:53

Speaker 1: And human process development as well. Because you can have the best tools in the world, but if the people aren't meshing well, then it's fairly useless. So So yeah, getting that system to work well is my jam. So I am incredibly passionate about empowering people who empower others. Teaching an individual learner is super, super powerful. You can change your life in a few conversations. But empowering educators is like a level above that. So when it comes to education, everyone kind of feels like an expert, right? Um you're all here because you are fairly well educated. You've been through school or uh maybe some of you were homeschooled, you've been through universities or colleges or uh self-taught

2:38

Speaker 1: situations, maybe you went to a boot camp. You're all, well, for the most part, you're software developers or software engineers, and that's a learning profession. So there's a lot of skills in this room around learning. But not everyone's an expert. There's actually a lot of really common bad practices within education. So I'll give you a few examples here. I'm just trying to illustrate that like the things that people reach for when they're trying to learn aren't always the right thing. Um we think we know our minds, but we really don't. Um So a really common technique that people use is just reading and rereading things that they are are studying. And that's not a good way to pursue understanding or even to memorize things. Um folks passively watch videos.

3:24

Speaker 1: That's quite common in Take Land. You watch videos of people uh hacking something out and explaining things and you feel like you've got the you you've got the skills now, that's an illusion of competence. Um the other thing is memorization and pattern matching over understanding. So I'm sure many of you have um seen cargo culting or cargo culted yourself and then gotten over it. So it's it's something that you need to get people to get through. And The reason for that is because when learning feels hard, people feel like it's it's not working. They're like, oh, I feel a cognitive load, therefore I should try to learn in a different way. But that that mental strain is actually a good sign. And learning how to learn is a whole thing as well.

4:09

Speaker 1: So there is a science to learning. Like the learning is something that is being actively studied. There are papers being released all the time, but it's not something that's made accessible to everyone. It's it's something that trickles down slowly into larger communities, but it's in academia land. So there's a lot to learn about it. And it's worth learning about because this graph that's totally to scale illustrates how learning how to learn effectively compounds over time. I mean you learn a skill and if you can learn the next skill faster and the next skill faster, um things get better and better. You skills stack on top of skills. If you think about like Learning how to learn this like 3% more effectively, how much would that change your life?

4:57

Speaker 1: So at this point, I'd like to recommend a really, really great book. It's called Make It Stick. It's fantastic. So if you don't uh take anything out from this talk and you just read that book, then that'll be good. This is a link, I'll share the slides. So this talk is primarily for the teachers in the room, for the people who take part in education. And I'm sure there are many people here who who do it professionally, and there are many people here who do it for fun. Like there was a Django Girls event a couple of days ago. That's great. So this talk is for those those folks. But it's based on a scientific body and it's based on a bunch of practices at work. And so the stuff that I'm talking about will be relevant to learning as well.

5:43

Speaker 1: It's the same foundational concepts. So I've got a couple of goals for what I'm doing here. The first is to take the teachers in the room and upregulate them, I hope. The next thing is to get people excited about learning how to learn more effectively and maybe getting a few a few tricks across And then the last thing, which I think is pretty cool, is I I'd like to inspire people to try to teach. And for me personally, like I've grown a lot through teaching. I've found I find it fascinating. There's um There's there's two reasons really why it's it's worth being passionate about this stuff. The first thing is that it's super ridiculously impactful, and the second is because It's quite deep. You can really nerd out about this stuff. It's cool to

6:28

Speaker 1: look at people's brains and how they work and build systems around that. So You guys know Dawn, right? A lot of you know Dawn, yeah? Yeah, Dawn is lovely. So for those of you who don't know Dawn, she is a DjangoCon organizer. Um I first met Dawn two years ago at DjangoCon Africa. She was helping to organize that and I was very, very impressed with the amount of vigor she took to her role, like she really helped pull things together. And she's also a Wagtail core team member, so that's pretty hardcore. And she's the president of this little organization you might have heard of called the Python Software Foundation. So she's pretty freaking hardcore. Um and

7:13

Speaker 1: she got her start in this community through a Django Girls event. So she dabbled in code before. Um she knew a little bit of CSS, I think, maybe some SQL, but she was very much on the outskirts and then she went to this event. Somebody coached her, um, they pulled her into the community, and it 's like launched her career, which was fantastic. Um so like Django Girls itself Isn't magic. It's about connecting people to each other. The person who went and like spent their time with Dawn to get her into this community, they weren't a professional teacher, but they made a huge difference in her life And based on that, like she made a huge difference in the lives of many other people. So I'm sure that the work that she has done with the PSF has affected a lot of people.

8:00

Speaker 1: I've seen some of the shock waves that came from this in Africa, in Tanzania, in 2022. So it's freaking cool. Like if you if you teach one person. Like you can change their life over the course of a few conversations and then they can go on and send send out some waves. So that's fantastic. All right, so let's get to some practical things. I want to start us off with something that you're familiar with, a perfectly normal classroom situation. So most of you have been to perfectly normal schools at some point in your life or you've seen them on TV. They they look they all look the same. There's there's a bunch of learners sitting in sitting in chairs all facing in the same direction, similar to what's going on over here There's a really steep ratio of teachers to learners. So you'll have like one person standing at the front

8:46

Speaker 1: wielding the authority and the chalkstick and then loads of learners. The person in the front is the stage on the stage, their goal is to take the information from their brain and put it into your brain There's projects and there's tests, but they tend to be pretty spread out. So maybe you'll have quarterly exams. Maybe there'll be like a big exam at the end of the year. And everybody moves at the same pace. So that's normal, right? Here's a picture of a normal classroom. In fact, I'm gonna do it this way. Here is a picture of a normal classroom. Alright, so we got a normal distribution. We got a bunch of people, number of people, and they perform in different ways. So we have like performance over here. Whoops.

9:33

Speaker 1: So we have some people who are performing really, really freaking well. They are maybe they're there because they've got super high aptitude and their geniuses, or they're super conscientious and hardworking, or they've got extra support. or they've got, I don't know, they they've already learned the stuff before and so the information isn't new to them. So they're performing well for whatever reason. Then you have a bunch of people who are performing badly for whatever reason. And these people are there maybe because they're low aptitude. This happens. Maybe they're being naughty. This happens. Maybe they've got problems at home. Maybe they were sick and missed a few lessons. Maybe they're struggling to keep up for many different reasons. Now, you have people that pass and you have people that fail. So let's say, let's draw a line over here and say the people on the right here pass, and the people on the other side, they fail.

10:21

Speaker 1: Right? So 50% pass, 50% fail. That would be an unusual ratio, right? If you think back to your schooling days, then the line was like here somewhere like most people would pass and some people would fail, right? So How do you move that line? Like if we were to design a course so that the perfectly average person passed, how could you design a course so that more people passed? There's a couple of different levers you can pull on. Think back to your own schooling. So one way that you can change things is by expecting less of the learners. You could say Cool, we just won't cover as much stuff. We won't mark the tests as strictly. We'll be a bit more lenient. We won't ask as many questions. That's one way to do it. Another way to do it would be to improve the quality of education. To say like, oh, cool.

11:07

Speaker 1: So there's somebody over here and they're struggling. What are they struggling with? Let's try and get them over the line. Oh, you missed a foundational message. Let's just like give you what you need and improve your performance. This person hasn't eaten. Eat some food. Yeah. So there's all sorts of like good ways to to move that line around. So there's so there's basic like basically two major categories of of ways to move the line around. You could either um Like decrease the quality of education or increase the quality of education and they both have the same effect of moving the line in the same direction. So So that's exciting. Um now I'm not so I'm not the only person who's been thinking about this. There's this guy named Bloom um

11:53

Speaker 1: who did a lot of work in education ages and ages ago and he came up with this thing called the blooms two segment that two segment problem and he looked at different mechanisms for moving that line around in healthy ways And this two sigma problem says that the average student who did one-to-one using mastery learning techniques performed two standard deviations better than students educated in a classroom environment. That's a mouthful. So I'm gonna show it to you like this again So basically, like if we were to design a course where the perfectly average person passed, um, so we're at the 50-50 line. And we changed the course. So it's no longer the sage on the stage, bums in seats situation. Instead, you change it to one-on-one tutoring and mastery-based learning. Then this line moves this way.

12:39

Speaker 1: It moves by two standard deviations. That's the two sigma part of the problem. And so instead of it being fifty percent of the people failing, you end up having Something more like 2. 2% of the people failing without changing anything else, without changing the requirements on the students at all. And that's freaking cool. So why is this a problem? Why does he call it a problem? Like oops. Why don't we just do this all the time? The reason it's a problem is because it's expensive to do all the time. So Bloom's been around like this this is old stuff, right? It's it's not the newest the newest research, but the problem that he brought to our attention is like these mechanisms work really well, but we can't do them because it's too expensive and operationally challenging. But hey, you know what? We have the technology now. So things are a little different.

13:28

Speaker 1: So, what I'm gonna do now is I'm gonna drill into mastery-based learning and one-on-one tutoring and tell you why this stuff is so freaking powerful, and then we'll go from there. So mastery-based learning is is basically this graph that I'm showing you. The idea is that you give a person a thing to learn and then You assess did they learn the thing? And then if they learned the thing, they learn the next thing, which which is great. And if they didn't learn the thing, you give them support and they can't carry on and then you check again if they if they mastered it. So you basically say like keep doing the thing until you've mastered it and then move on to the next thing. That doesn't seem like crazy novel, it seems pretty obvious, especially if you think about How tech works. I mean, imagine teaching a classroom full of people what recursion is, but there are a couple of poor people sitting in that class who for some reason

14:20

Speaker 1: missed the lessons on basic functions. You as an educator are wasting their time if you're trying to teach them recursion when they don't have that basic building block in place. But that's how normal classrooms work. Same thing for like multi-dimensional data structures and whatnot. Like it's very, very normal to deal with weird data structures. But if you can't deal with the basic stuff, if you can't like loop over a list, then what are you gonna do? So Skill stack on top of skills, and often it's really complicated. Um these these skill stacks are pretty big and they are not uh there are a lot of interdependencies and relationships that sometimes aren't that obvious at first at first glance. So mastery-based learning and tech like goes well together. The next part of this is one-to-one tutoring. So why does that matter?

15:05

Speaker 1: If you think about think about it yourself, if you want to learn a thing and you have a tutor and you're meeting up and you're talking to each other, how is that different from sitting in a class For the one thing, it's more engaging for you. You'll be having a conversation. You're not gazing out the window because they'll be just be like, hey, come back. you there's a social contract aspect as well. If I am if I've got a tutor and they are expecting me to have gone and do done my homework and I show up and I have it, then they'll look sad and that'll make me feel bad. So there's that aspect as well, which is pretty powerful actually if you build a bit of a relationship. The other thing that's very, very powerful is that the teacher can pay attention to the learner. So If I have this stage on a stage situation, like I'm talking to all of you, and I can I I think you're engaged because it's quiet and people are looking, which is great, but I can't really

15:55

Speaker 1: Tell, it's not a conversation. I can't really look into your mind and see like, oh, you're getting it, you're not getting it, you're disengaged. I can I can only guess at things. It's too d it's too like dispersed. But now one-to-one you can have a conversation. So it's super powerful. So I'm saying all this stuff, um, which makes it seem like I'm very much against lectures and classrooms and and those situations. I think these things have a place. They just really hard to get right. They definitely have a place. I mean I'm standing here right now talking to a bunch of you and I'm hoping that it'll add some value. It's hard to get to know if you're doing a good job as well, as I mentioned. Like I can't actually tell what's sinking in, what's really landing with you guys. I can only guess, but it's still useful.

16:41

Speaker 1: Now, when it comes to mastery-based learning, what's really, really cool about that is it helps you master teaching as well. So if I am teaching somebody a skill and then I'm like, yeah, I did a great job of teaching them. I'm going to just teach them the next skill, then I don't get feedback about my own performance. But if I teach them a skill and then I take the time to to check, like assess their skills and say like, oh, I thought you got this, but you don't. Then that's that could be a reflection on the students, that's true, but it's probably a reflection on me because most people are actually very capable of learning if you give them the attention they need. So So for me, like if I come to the conclusion that somebody understands something and I'm wrong about that, I could say, like, did I do a good job of explaining it?

17:30

Speaker 1: Did I do a good job of setting up their next steps? Did I ask them how to did I did I get them to practice in an effective way? Did I just Like like one common thing, for example, is if I explain a concept to a person, then I say, Do you get it? And they say yes. Like that is not a good assessment. So you learn about all these different things as as you interact with the students And so you get a lot of feedback and feedback is a great way to grow. So mastery-based learning is something that I've been practicing for quite a few years now and it's been and it's something that that I've been teaching to other people as well And that's been pretty great. So in the process I've learned a bunch and I've been trying to think about what are the hardest hitting lessons that I can share.

18:15

Speaker 1: Because A conference talk isn't that long. Like this is a long one, but it's still like I can fit in like hardly any information. So what I've tried to do is take the the hardest hitting things, the most effective things, and package those up in a useful way so that you can take them and use them. So the first thing that I want to show you is this. Who's seen this quote before? Education is not the filling of a pail, but the lighting of a fire. Many, many people have heard it. It's very poetic and beautiful and sticky. But I wonder how many people have thought about it from the perspective of implementation. What does that mean for a teacher? What should they do So the way I think about this is in terms of time. So the way I was teaching learners was that um so I used to work for this organization and we would hire learners and their job was to learn.

19:04

Speaker 1: So they they'd have like a 40-hour work week where it's like they're they're learning to be web devs or something like that. And we track their progress. And then if they got stuck, then we'd organize these tutoring sessions with them about the thing that they're stuck on. So not everybody would get the same lesson. So we'd have like 40 hours in total. And then maybe they'd have two hours of tutoring in that 40 hours. And we want to make sure that that two hour section of time is really, really potent. So to make it potent, what you need to think about is planting seeds. You want to make sure that this time goes well. The focus isn't on here, the focus is on there. Same things, same thing with like a Django Girls event or a Humble Data event. You're with a learner for like a day, maybe two days. The point isn't the workshop, the point is what happens afterwards.

19:52

Speaker 1: So what is teaching? Like if you have a session or a whatever you want to call it with a learner, what what is it? Like what are you trying to do? Like there there is something about knowledge transfer. Like sometimes the learners just missing a piece of information and you need to give it to them. That's this is true Sometimes it's about answering their questions. This is great actually. Like if a learner comes and they ask me questions and that's information for me. I'm like, now I know what you need instead of having to figure out what they need. So that's great. Is it solving their problems? That one's actually pretty dangerous. You generally don't want to solve their problems for you. You can't uh teach a person to ride a bicycle by riding their bicycle for them. This is not my quote. I got it from a podcast. I think it's like the Teaching Python podcast. It's really good.

20:38

Speaker 1: Yeah, so you never want to steal a person's problems from them. It it it might make them feel like you're being helpful, but it's and it might make you feel like you're being helpful, but in general you you want to set people up so that they can solve their own problems because the next problem they'll come across might be like when you're not around So always be empowering. So teaching is about planting seeds. It's about kindling of the fire. I like the seed analogy because you put a seed in the ground. And you try to get it in a place where the sun shines on it and you water it and you you try to get the soil nutrients right, but you don't have that much control really on over how This thing is going to grow. It's not like carpentry where you can just put everything in place and it works. You've got to nurture this thing. So if the goal of a session, a teaching session with a learner

21:25

Speaker 1: is to set them up so they continue to learn and grow on their own, then what does that mean? Like what are you actually aiming for? So at the end of a class, you should set the learner up with certain mindsets, you should set them up with certain behaviors and next steps. Right, so they should firstly feel a sense of enthusiasm. They should be like, this is worth getting good of good at. Like this is fun. This is cool. I uh they they should feel like they want to. They should feel that they have the confidence to move forward. They shouldn't be like, oh, that's really interesting, no freaking way. Like that that's too hard for me. That's for those smart people. They should know what steps to take. There should be a trajectory, like some things that they can do to move forward. Maybe it's like the next step of a tutorial. Maybe it's um some things that they can do for practice.

22:13

Speaker 1: Maybe it's a portfolio project that they're working on. And those next steps need to actually make sense. So as a teacher, you are a guide on their journey and you get to say like You get to make recommendations, and ideally those recommendations should be good ones. You shouldn't set a person up to just struggle unnecessarily. And so there's There's a gauging there. You wanna you wanna keep things in a like difficult enough that they're growing, but easy enough that they're not just uh suffering pointlessly, because that can happen. So that's all pretty important. The next thing that's really, really powerful is the gross mindset. So I'm sure like most of you have heard of it. It's been part of the pop psychology conversation for a long time.

22:59

Speaker 1: Um and many people I'm sure think it's just like woo-woo, feel good, positive psychology stuff and maybe not as impactful as it really is. This stuff is solid. It's very, very well studied and it makes a huge, huge difference. So for those of you who aren't familiar with it, a fixed mindset is a belief that you either have it or you don't. It's it's a binary. It's like Oh, I am um like let's say I failed a math test. If I failed a math test and I've got a fixed mindset, then I could conclude that I'm bad at math. And I should just stop trying. Maybe I can drop that subject. Maybe I should stop wasting my time with it. Um I'm very unlikely to go out, go and seek help help about it because I'm like, I am bad at math. I am the problem here. Um I feel some shame about it. Whereas somebody with a fixed mindset or I mean a growth mindset, they believe that they can grow and they can learn.

23:48

Speaker 1: And it seems like such a small thing, but If you believe that you can grow and learn, if you fail the same test, like every sit like everything else is the same. You just have a growth mindset instead of a fixed mindset. the reaction is completely different. You're more likely to say, like, how can I learn from this? Oh no, I did I did something wrong, not I am wrong. I could study harder, I could study differently, I could ask for help, I can overcome this. So um there's this guy named Huberman who I freaking adore. He has a podcast that talks about um this specifically. So I'll share these slides later. Watch this thing. It's freaking cool. He's a neuroscientist, but he makes it quite um, he makes neuroscience accessible and useful to folks like me.

24:35

Speaker 1: So people with a growth mindset, they have all sorts of really useful behaviors. So again, they don't take failure personally. It's a lesson. If they fail, they're like, okay, cool, how can I overcome this failure? Failure is information. They look at struggle in a positive way. And they're more willing to seek out help instead of hiding deficiencies. And Being able to find help well, being able to ask for help well is a little bit of a superpower, especially in software development. Um like this community is strong. Part of that is because of the fact that people can reach out to each other for help. So that's huge. People with a growth mindset are also less judgmental when other people struggle. Like if I see somebody struggling struggling and I'm like, oh yeah, they'll just never get it. Like they're just not

25:20

Speaker 1: they're just not cut out for this. Then I'm not going to offer a helping hand. I'm not going to make them feel welcome. And so it's worth having a growth mindset. There's a lot more about it. Also a link, you can read some stuff. One thing to know about the growth mindset is that it's a spectrum. is not like you have it or you don't thing. You can foster a growth mindset and it's something that wanes and waxes and that's completely normal. And you can have different levels of growth mindset for different behaviors. So you could have a growth mindset when it comes to coding, but when it comes to your guitar skills, you can just be like, ah yeah, no, I suck at guitar. I'm just like bad at music. But I'm learning this thing. So it's a lot of spectrums. And so it's really useful to have a growth mindset about your growth mindset.

26:10

Speaker 1: Thank you. So as a like when you're teaching somebody to code or to anything really, it's useful to foster a growth mindset in them. And the way you do that, it's tricky. Like you can it really is because people who have that fixed mindset, they'll they'll hide their deficiencies from you. So you need to spot the struggles. And you need to step in and make it feel safe. And when they overcome those struggles, say like, hey, you leveled up. Did you feel that? Felt good. I noticed. Did you notice? You just like upgraded yourself. And if you just keep on bringing those things up and keep on reinforcing that there is in fact growth, then that's super, super powerful. The other thing that you can f foster growth mindset in is is yourself as a teacher. So teaching is a set of skills, it's a set of mindsets, and there's a science to it and there's an art.

26:57

Speaker 1: And by practicing it, by practicing it in a way that you're intentionally looking at yourself and trying to grow your own skills. It's firstly it's very, very stimulating. It's it's quite an exciting thing. But also you do grow as a teacher. I have met teachers who think that teaching is something that you either have or you don't, and that's weird. That is incorrect. It is something that you can grow. Now, something that's super cool about mastery-based learning, like I love these simple ideas. Mastery-based learning is like so obvious. It's like learn the thing, then learn the next thing. Mm-hmm. Because it leads to all these wonderful effects. So mastery-based learning helps people develop a m a growth mindset. If you have a situation like a normal classroom situation where a person learns a thing

27:42

Speaker 1: And then they move forward whether they're ready to or not. Then they develop that feeling of helplessness, that feeling of like, I'm so far behind, this is hopeless, this is hopeless too, this is hopeless too. Not everybody, but it happens, you know. But then with with mastery-based learning, if a person is stuck on a thing for a while, if they are one of the slower people in the class, they'll still like push and push and push and then overcome their struggle And then meet the next struggle and overcome that struggle. And so, yes, it's expensive and complicated to pull off, but it fosters this growth mindset and it gets people to realize that they can push through things. And that's beautiful. All right, so let's zoom in a little bit. I want to talk about an individual class or an individual session with the learner. So there's a whole bunch of moving parts to it

28:29

Speaker 1: If you're teaching a person a thing, you want to be prepared for it. So that preparation might be making sure that you understand the materials, making sure that you understand how learning works, what are the common problems that people face with these things. Some of that preparation is really really just comes from practice. So you won't really be able to prepare perfectly until you've had a bit of practice. Then in the session itself, you assess a learner's understanding, and then you spot the gaps, and then you fill in the gaps, you illuminate, you assess, you illuminate, and you just loop. So in an individual session with a learner, one-on-one tutoring session, think of it as like a zoomed-in version of the mastery-based learning mechanism. So you're always like, what do you need? Okay, cool. What do you need? Here it is

29:15

Speaker 1: At the end of the day, like or at the end of the session, you want to make sure that you catalyze further growth. You want to make sure that they have those next steps and they can continue on their own. And all of this is underpinned by the growth mindset, so, so powerful. And metacognition, that's a new word that I haven't used in this talk yet. So meta what. So metacognition is the awareness and understanding of one's own thought processes. It's thinking about thinking. It's understanding how your own mind works. And it's useful as an educator to put some effort into understanding how brains work. But it's also really useful for learners to understand how their brains work. So if somebody's struggling, then you can say like, hey, the fact that you're struggling means you're growing. This is great. Don't like lean into it. Struggle is good. Things like that.

30:01

Speaker 1: So It helps setting up the it helps with setting up the right mechanisms and mindsets. So practically speaking, um when you're teaching a learner It's good to teach them how to learn rather than teaching them the thing itself. So I've always thought of teaching coding as like like I'm teaching metacognition, but in order for them to practice those metacognitive abilities, they need a thing to practice on, like learning how to code. So if you take it a layer away, then you end up with a person who's like very capable of building their own skills and learning whatever they need to in the future. It's also really good to know that some teaching techniques are more effective than others. And sometimes it takes like very, very small tweaks to make your lessons way more effective. So what do you think is better?

30:46

Speaker 1: Like if I were to just give you a piece of information and say the thing works like this, or would it be better for me to say like how does this thing work? How do you what do you think? And then give you the information. Which one's more effective The clue is in the question, right? I uh like ask the questions first, let them think first, and then fill it in. Like there's there's so many little hacks like that that feel like hacks, but they they're based on Um they're based on science. Like it it really works. So we can zoom in a little bit more. Let's just think about assessing and illuminating. How does that work? So when you assess, why did I put a test tube there? You think about it? So You kind of want to be like a scientist.

31:32

Speaker 1: You want to be a mind reader. When I'm assessing a person's abilities, then what I'm doing is I'm trying to get a very good picture of how their mind works. I won't say like, cool, you've read this stuff, you know it and be like, okay, you've read this stuff. I have a theory that you know it. Can I prove this? Can I disprove this? You want to really do as much of a mind meld as you can. People fall into certain traps when they're when they're learning. So an example is like if a person's learning the basics of functions, a lot of self-taught coders in the beginning struggle to understand what a return statement is and how that's different from a print statement. And This I know because I've spoken to a lot of these people and helped them over that. I need to know that the there are pitfalls that people can fall into so that I can go and check if they fell into those pitfalls and pull them out.

32:22

Speaker 1: So again, this take this comes from practice. Now it's also important when you're assessing people's abilities to maintain a very good signal-to-noise ratio. So if I'm asking a learner a bunch of questions about like what their understanding is, and I ask them a trick question Then they might get that question wrong because they didn't understand the content, or they might might have gotten that question wrong because I tricked them. And so I'm getting a noisy signal back. So trick questions they they do have a place sometimes because at every point at some point all of us will have some trick questions to answer in life because sometimes code is messy. But when it comes to the education process, it's really, really useful to avoid avoid trick questions if you're trying to understand a learner.

33:10

Speaker 1: You also want to always remember that you're training coders, not parrots. Like train them around what they're actually doing. Another common mispractice would be to say, okay, Lena , can you explain what is a function? And then they give you a perfect textbook definition and they're like, sweet, you understand it, let's move on. Um people are very, very capable of memorizing words and thinking that they understand. So I've I've mostly trained people from like zero to professional level. So this is my experience. It's also good to be really, really explicit in the questions that you ask. So if you're training coders, you want to either write code or get them to write code. And if you're writing code and you want them to explain it to you and tell you what it does, it's useful to put in a bunch of print statements so that they can come up with a theory and say like, okay, cool.

33:58

Speaker 1: I think it's gonna print out this And then you can run it, and then they can see if it printed that out. So yeah, the questions should be like very, very explicit and very like provable as much as possible The next thing is illumination. There's a coin there. The way I think about it is you're lining up the pennies and then you get the pennies to drop. So generally speaking, your goal when you're filling in the gaps for a learner is to act more like a guide than than give them a mini lecture. So you don't so so there are times when the learner is just missing some information and you need to fill them in and that's completely fine. But there are also many, many times when Like they have all the information, they just need to connect the dots.

34:45

Speaker 1: So you can ask you can ask questions. You can say, how many times does this line of code actually run? Why? um what that that print that that thing that you said it printed out like what line prints that out so you can ask these questions and they'll eventually like get to a point where they're like oh cool The next thing to do is through practice, you you build up a bunch of like little explanations and little like mini tests that you can use to talk to a learner. And you can keep those in your back pockets and pull them out when you need them. So part of being a good teacher is that practice and building up like a almost a vocabulary or a toolkit of different ways of assessing and explaining things. The next thing is trust no one.

35:31

Speaker 1: And I mean that with love. When you explain a thing to a person and you say, Do you understand? They'll say yes. Most of the time. Um, a lot of people will say yes, especially if they're early on in their career, especially if they've got a bit of a fixed mindset issue still going on. Um so they'll say yes and you'll say, Great, let's check. The next thing that you want to do is catalyze further p uh further growth. You want them to keep on growing. So There are a lot of different ways to do that. Retrieval practice is one way. So I'm always cautious about retrieval practice and coders because you don't want people to memorize things and pattern match and cargo cult. But you do want them to get to a point where they understand the foundational concepts and if they don't practice them to some extent then they tend to go away.

36:20

Speaker 1: So retrieval practice is like, okay, after this after the lesson think back to what you did. Go have a cup of tea and think back about what we did. Um try to get them to push it further. That's part of the metacognition stuff that I was talking about earlier. If you teach a person a thing in a specific way and like, cool, I'm writing some code in this way, I'm putting in some print statements in this way, I'm asking you questions in this way. Can you tell that you can do this yourself? You can assess your own understanding. How much further can you push your knowledge without me? Let's talk about it again next week. The other thing is to get them to lean into the challenge. So I've mentioned this already. Like people like if learning feels part hard, people tend to lose confidence and pull away and try to do the easy thing.

37:06

Speaker 1: uh if you get people to understand that learning is hard, like when when you're pushing yourself, then that's when the magic happens. That's very, very helpful. Then there are a couple of foundational practices and mindsets. So one thing that's very, very beautiful is giving people the opportunity to be wrong about things. Um so when you're questioning a learner and when you're trying to figure out their understanding, then you always want to give them the opportunity to to fall. And then you want to pick them up. You want to say if you're If you assess yourself effectively, you can figure out where you're wrong, and then you can level up that aspect of your understanding. Um one of the best teachers I saw, he's brilliant. Like I watched a recording of him teaching a bunch of students like some basic function stuff And they got a question wrong and they all just had a giggle together.

37:52

Speaker 1: Like there's so much psychological safety there. Like being wrong should not feel scary. It's also important to celebrate the small wins. I mentioned that before. It's a way to promote that growth mindset. And it's important to encourage people like go try this yourself, go push your knowledge further yourself. The last thing that I want to talk about is the protege effect. So so far in I'm talking about education. It's impactful. It has lots of depth and lots of layers and lots of like cool hacks to try out. The other reason to educate people is the protege effect. So many people have heard that When you're teaching a person a thing, that's a great way to learn.

38:39

Speaker 1: Um it's it really, really does work. This is another very well-studied thing. So If I am learning a thing in order to teach somebody else, then I'm going to learn a lot just by preparing to teach the other person because I'm going to focus on understanding it in a way that I can explain. I'm going to focus on like How can I put this into words? How can I get this across to someone else? And just that action, just like pretending that you're going to teach somebody else is a powerful thing. On top of that, the actual teaching is a powerful thing. If I'm having a lesson with somebody and I'm explaining something, then that's that's retrieval practice. That's me like accessing my memory. And making sure that my stuff, my knowledge is not just lodged in my short-term memory, but I'm putting it into my longer-term memory.

39:25

Speaker 1: Retrieval practice is super, super powerful. On top of that, if you're teaching a person the thing, they're going to ask questions and that's scary because you might not know the answers. And that's fantastic because They're testing you. They are pointing out the gaps in your own knowledge. And you get to say, like, oh damn, I forgot about that. Let me let me check. Or I thought I understood that, but I didn't. Let me level up. Some of the questions they ask are going to be really left field and weird. And that's also very, very powerful because if you want to build solid mental frameworks around the tools that you know and the techniques that you know, then there are there are many ways to do that. One way to make yourself better at building mental models is by handling weird left field conceptual questions.

40:10

Speaker 1: And people who are still learning are a great source of those. So when they ask you a question and you say, I never thought of it that way, and that's really, really powerful. Alright. So I've covered everything that I want to cover about education. I'm going to shamelessly plug a thing that I'm working on at the moment. It's called the Guild of Educators. I always wanted a Guild Um so I've been watching the Pythagomity for quite some time and it's wonderful. Like Django Girls is wonderful, humble data is wonderful. There are so many opportunities for people to lift up each other and to teach in different ways. A lot of the people who are showing up and teaching at these things, like

40:56

Speaker 1: they're golden, you know, these are angels. It would be really, really cool to just level all of that up just slightly. By teaching good teaching skills. So, what I want to do is empower educators. I want to invite the teachers and the would-be teachers to come together and learn a bunch of skills. I also want to share opportunities to teach and make it easier to organize these kinds of volunteer run events and help different kinds of tech educators do well. The initial focus of this thing is leveling up volunteer-run Python education events. So the first thing I'm looking at is humble data, which I'm quite excited about. And it would be really cool if some of you joined us.

41:41

Speaker 1: So yeah, this again, it's a link and you can go there and there's a join us page if education is your jam or if you think maybe it could be your jam or you're just curious or if you have some skills that you'd like to share That would be really, really cool. So join us, support us if you can. This is a very new project project and still getting off the ground, but I'm quite excited about it. The next thing is a learning sprint. So during the sprints, during the contribution sprints at the end of the week. A lot of people show up to those prints in order to learn. And a lot of people don't feel super comfortable showing up to those prints because they feel like they don't know enough yet. And so I want to try and help

42:27

Speaker 1: those people. So I put together something like a tutorial that'll take people through building a Django app with HTMX and Playwright and Tailwind and it's like quite a cool thing. It feels like a tutorial. The goal is that the people who show up to do it will build their own thing through the exercises. So if that's your jam, if you want to come and play, then uh There's a form to fill out, just I can get the numbers. And um you can come to learn or you can come to help others learn. Or both Like that's also completely cool. Like maybe you Rocket Django, but you haven't used Playwright yet. That's fantastic. Please come play. All right, cool. That's it. So This wouldn't I wouldn't be a good teacher if I didn't give you some homework. So if you scan that QR code, then you'll have access to all of these slides.

43:14

Speaker 1: The first bit of homework is learn about learning. Told you about that book, make it stick, it's freaking awesome. Um there's also a really nice learning how to learn course on Coursera that I I try to get all my students to go through. Um and the other piece of homework is try find somebody to teach and focus on yourself while while you're teaching. That's it. Thank you. Yeah, if this if there's time for questions, I'm happy.

43:51

Speaker 2: One of the things that you said that was closer, that resonated for me was this idea of not taking the learners uh statement that they have understood something at face value. And in the classroom they're permitted to do that. Once they're in a work situation They want to demonstrate to you and to everybody else that they've learned and they'll be happy if they are. They know that you will be happy. They want to please you by telling you that they've learned. Everything is against their being able to say no actually I have not understood. What are some good ways of changing that so that they can feel like learners instead of like incompetent colleagues?

44:37

Speaker 1: That's a that's a good question. It is really hard and it's different in different cultures as well, which is tricky. I've um Yeah, I've heard some people say like how how like like remember when we were in Namibia? So Donel is great, he does PyCon Namibia, you should all go, it's fantastic. But one of the things that we do there is um go into the universities and the schools and volunteer and teach the the learners there um just for like a day or two. and it's super cool and they have all these questions they're just like there's too many questions almost it's like wow there's so many people want wanting answers right now um it's fantastic it's beautiful and like Some of our European guests were like, how? How is it like this? Um how

45:22

Speaker 1: is it that these people are asking so many questions? Because in Europe it's really hard to get people to ask questions. Not Europe like Europe is big. Europe is very big. I think they were Polish. I'm struggling to remember. But yeah, so there is a there is a cultural thing which is difficult to deal with and difficult to predict sometimes. What I've found is that it takes iteration in itself. So the the people that I was teaching were um South Africans primarily and people who came from pretty underserved backgrounds and uh they were freaking smart. Um so they got into the programs that I was working on because they proved that they were really worth investing in. And so these these guys these people got in

46:08

Speaker 1: and for their whole lives they have been told like, oh, you're really, really clever. You know. So they've got that fixed mindset because that's been like embedded in them. And sometimes there's also something I like to call a a desperation mindset. If somebody's like, this is my one chance, let me not screw it up. then they're less likely to ask questions as well. So to get them through that, you need to make them feel really, really safe. need to be like, oh, like let's check if you understand. You don't. I'm not angry with you. You know, I'm I'm checking if you understand and I'm not catching you out. And if they like mate make that questioning situation feel safe in itself and when they get something wrong, then you can be like, oh gosh, let me show you something. This is really cool. You know, like like make it make it interesting and fun and and safe

46:56

Speaker 1: Something else that I try to push with people is that if your job is to get a thing done, then it is also your job to understand how to get that thing done and you are actually expected to go and seek out the knowledge that you need. in order to do that. So for me I've always pushed it as a professional skill, like learning how to be brave and ask for help. It's a hard skill to learn. Yeah.

47:25

Speaker 2: Sheena, thank you. Um can I ask if you have any tips for when you meet someone with a limiting belief? So a student might say, oh, I'm no good at art. or languages aren't my thing or I'm no good at maths. Like I'm not technical or how how do you

47:40

Speaker 1: Yeah, that's true that's tricky. I think um starting Starting with small problems and working your way up and celebrating those small wins is really, really powerful. But I think also mirroring their situation and saying like, oh yeah, this is hard, like I struggled with this too. And now I got it, or like loads of people struggle with this, like normalizing it is is quite a big deal. Um there's also something around stereotype threat, which is a funny set of words. Um So underrepresented groups and communities tend to um look at themselves and judge themselves according to their group a lot of the time. So you'll see this in women in tech, you'll see this in people of colour in tech as well, where it's just like you know, I feel like I don't belong here. And then when

48:25

Speaker 1: there are stumbles and struggles, then they're like I really don't belong here. You know, it reinforces that. And having those stereotypes is really freaking horrible. So anything that you can do to reduce that is a big deal. So um giving a person more of a sense of a bel a sense of belonging is actually super super powerful. There have been studies on this as well, mostly around education, but I think it I think the studies apply beyond that as well. So One example, one one really, really cool thing I read about was they had a bunch of of students and there were some minority groups in this bunch of students. And they got all of the students to write down these anonymous letters about their struggles and their insecurities. It was all anonymous.

49:11

Speaker 1: And then the teacher got all of the less all of the all of the messages and read them out anonymously. And people were like, damn, they're telling my story. I actually do belong. And that's that's super powerful as well So yeah, it's it's it's a hard problem to solve, but there's lots of levers to pull on in different places. Yeah, that sense of belonging is so freaking powerful.

49:33

Speaker 3: Okay, I think we've got time for one last question.

49:37

Speaker 4: Hi. Um I think there are uh times where it we're in kind of informal teaching scenarios or there are elements of uh teaching that that come across in many people's works. So for example, for example, you might need to make an assessment as to whether someone is ready to get up certain promotion or go on to the next level. Uh and you were talking about like what is a good assessment and all this kind of stuff. So Do you have any thoughts on that? And maybe when you talk about how you teach teachers, uh, how do you assess whether a a teacher is A good teacher.

50:19

Speaker 1: Yeah. It's so hard. It's so hard. So assessing a learner is hard. And then like getting people to be good enough to assess like It's it's really, really tricky. So in assessing a learner, um what I've found is useful is paying attention to track records over time. So uh this this would be the same at w at work. So sometimes it's very hard to do that at work because you don't have the systems built up for it, whereas a schooling system you'll have something in place. Like usually when it's kind of promotion time, then you'll be looking at a person, you'll have recency bias. You'll be like, yeah, last week you were a little bit weird. Um, or last week you were brilliant, you know. So You need to like deal with that by keeping a record of things. Um performance is always

51:06

Speaker 1: more of an indicator than than an assessment at the end of the day, I think. Um especially in a work situation because a work situation you can't really cheat it. Like you you wrote the code or you didn't. Sometimes in school people cheat and so the assessment matters a little bit more and that's a that's a bit of a challenge. Um Yeah, what else? I think so when you're assessing a person about their ability to code or their ability to like understand complicated problems. If you give them like a test to write, then there are so many ways that that can go wrong. They could have a headache that day. Um they could have eaten a dodgy pie. These things happen. Maybe they crammed for it, maybe they didn't. Maybe their kid was sick. Who knows?

51:51

Speaker 1: So assessments are like very noisy. um at best and people can cheat them. So I think there as as far as I know, there's a trend to do less online assessments and more like um like synchronous human to human assessments in job interviews and and things like that because um chat GPT and whatnot make it easy to to cheat these things. Um so so it's hard. Um with our well I say our I don't work there anymore with with the learners there um we what we used to do was uh uh we we would have conversations with them about code and it wouldn't be such a free form conversation because it's It's kind of hard to get those right as well. Like what kind of questions do you ask when you show a person a block of code?

52:39

Speaker 1: What we'd say instead is like, okay, if they've done these projects, then they should have these concepts down. And we're going to like look at these concepts in a different it from a different perspective. So if they're if they're learning about loops, then you'll write some loops over here and say, what do these do? Like what do they print out? That kind of thing. So As much as you can like take the things that they've got and the concepts that they need and ask about them in a different way, that's good. But that's also hard because you need to maintain that psychological safety aspect. And if you are interviewing a person for a promotion and this thing really matters to them, um getting them to relax and focus is hard um like everybody's been in stressful job interview situations

53:25

Speaker 1: or you're like I need to perform, you know, and then that pressure can sometimes push a person to not perform and to just like go blank. So Yeah, it's much easier in education than than not because it's so concept based. Yeah. Um did I answer your whole question? There was like, okay. Teaching teachers. Right. That was the other part. So yeah, it's so hard. So teaching these concepts is a big deal. And having ways for people to interact with these concepts is a big deal. But to get really good at teaching it's is about the practice. It's it's like there's science, there's technique, but there's also art in your way of doing things. And Uh telling a teacher to just like stick in certain narrow lanes and always do it the same way is is bad because then they get into autopilot

54:15

Speaker 1: and they themselves can cargo cult. You know, there's cargo culting freaking everywhere. So You wanna allow us a a degree of freedom as well. Um what I found works really well is well, what we used to do is just like every single teaching session got recorded, like every single one. um because it was all online anyway. So we had all of the conversations, we had all of the code. And then we could take them, we can take one and be like, okay, cool, let's go through this. Um and every time you do something good, I'm going to make a note of the timestamp and when you did that good thing. Every time you like did something that was wasteful, I'll make a note of that as well and then we can have a conversation about it. And so It it was very iterative and that worked really well. It's it's hard work, but then by the end, like it doesn't really take super long to get somebody to be

55:03

Speaker 1: like You know, there's 8020 and you you can get somebody to be like pretty pretty good without that much back and forth. Yeah. Thank you, Sheila. Sweet.

Questions this talk answers

How does mastery-based learning improve student outcomes?

Bloom’s research found that one-to-one tutoring combined with mastery learning moved average performance about two standard deviations above classroom instruction, reducing the share of students failing from roughly half to about 2.2%, without lowering expectations.

Discussed at 11:53

What is mastery-based learning?

Learners are assessed on a skill before moving on. If they haven’t mastered it, they get support and practice, then are checked again; they move to the next skill once they’re ready.

Discussed at 13:28

Why is one-on-one tutoring effective?

It keeps learners engaged, creates accountability through the tutor relationship, and lets the teacher pay attention to an individual learner’s understanding instead of guessing from a whole-class setting.

Discussed at 15:05

What should a teaching session help a learner do?

Rather than solving problems for learners, teachers should help them become able to solve problems themselves. A good session leaves them enthusiastic, confident, and clear on useful next steps for continued learning.

Discussed at 20:38

How can teachers foster a growth mindset in learners?

Notice learners’ struggles, make it safe to work through them, and point out when they overcome a challenge. Reinforcing those moments helps learners see that their abilities can grow.

Discussed at 26:10

How can I tell whether a coding student really understands a concept?

Treat understanding as a theory to test: ask explicit, practical questions or have the learner write or explain code, and check their predictions. Avoid relying on textbook definitions, trick questions, or simply asking whether they understand.

Discussed at 31:32

How can I explain a coding concept without just lecturing?

Act as a guide: ask questions that help learners connect information they already have, such as tracing how many times a line runs or which line produces an output. Build up a toolkit of small explanations and checks through practice.

Discussed at 33:58

How can learners retain and build on what they’ve learned?

Use retrieval practice by having learners think back over what they did, then ask them to assess their own understanding and consider how far they can take the knowledge without help. Encourage them to persist through the difficulty of learning.

Discussed at 35:31

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 by Sheena O'Connell

More videos from DjangoCon US