Episode 120 === [00:00:00] Sean Tibor: [00:00:14] Introduction and Episode Overview --- [00:00:14] Sean Tibor: Hello and welcome to teaching Python. This is episode 120. My name is Sean Tiber and I'm a coder who teaches. [00:00:21] Kelly Schuster-Paredes: And my name's Kelly Schuster Paredes, and I'm a teacher who codes. [00:00:25] Sean Tibor: So we're gonna do one more of these quick bites on a Wednesday evening, and we're pretty excited about how this is coming out. It feels like we're able to really focus on one small topic. I know there's always more that we can say, but I've really been enjoying doing these with you, Kelly. [00:00:41] Kelly Schuster-Paredes: Me too. It's I feel at least we can commit to 15, it's 15, 20 minutes. We did a little bit longer last week, but 15 minutes and it was good. It's good. It's good to like decompress and get some knowledge in us still at the same time. [00:00:56] Sean Tibor: Yeah. So we'll jump right in. We won't waste any of our 15 minutes catching up anymore, but I, it's my turn this week. And I know that typically I've been trying to do something with testing. Two weeks ago, I talked about, or I'm sorry, with technical topics. So two weeks ago, I talked about testing last week. You talked about constructivism this week. [00:01:16] The Role of Failure in Learning --- [00:01:16] Sean Tibor: I want to talk about failure. [00:01:19] Kelly Schuster-Paredes: Oh, failure. That's a [00:01:20] Sean Tibor: good one. Yeah. So this has been something that has been on my mind a lot lately and it's coming about because, we've talked a lot about failure on the podcast, the role of failure and learning the role of failure in growth and development, the the ability to be persistent and resilient when things don't go your way and to continue anyways, and over the last, I don't know, couple of weeks I've had a couple of times where things have failed or I have failed and. What I wanted to talk about was two things. The first one is really the role of failure in learning and just try to summarize some thoughts around that. And the importance of failure and learning, not just that there's a role for it, but that it's actually important to fail in your learning. And then the second one is around how to role model behavior to those around you when you fail. [00:02:14] Kelly Schuster-Paredes: Should [00:02:16] Sean Tibor: be good. Yeah. All right. So let's start with the first one. [00:02:20] Personal Experiences with Failure --- [00:02:20] Sean Tibor: And this is something that's come up a lot lately because my daughter's been doing VEX robotics for the first time and they're just crushing it. They're doing a great job. They had some issues early on, but. I've been really impressed with her attitude when things don't work and her and that's whether it's with the robot or their coding or with the team, her attitude has always been really positive about this, that we're going to figure this out. We're going to fix it. We're going to diagnose what's going on, and we're going to make it better. And she never really gives up. She might get upset if she's clashing a little bit with her teammates, but she never gives up on it. And it made me think about that importance of failure and learning, because I think they embraced the failure early on and when they failed and were able to look at it critically and say, what happened here? Why did it happen? And how do we like try to fix that or avoid it in the future? That's where they really are getting the most learning out of the process. And this is not just for. STEM topics. It's for other types of learning too. When I see I have engineers and when they take a certification exams, they don't always pass. Sometimes it's really hard and they just didn't study a whole area that showed up on the test and they failed on it. They never failed twice in a row though, they fail once, but then the second time they go back and they get it and they pass and I think there's a part of that makes me like both really in awe of their persistence that they're going back and they're getting it again and they don't really get discouraged. buT I also think they're learning better because when they fail, they they really are taking that failure seriously, they treat it with serious intent. Without getting upset over it. So those moments where they fail and where they fail to pass something or fail to learn something it, they feed it back into their learning. So there was a quote I saw recently that I think crystallizes this really well, which is that learning is never free. There is no such thing as free learning. You do not get to learn something without investing time or money or pain or sweat equity or whatever it is you have to pay to learn. That's a kind of an important moment for me. I realized that. thE best learning happens when you learn the most for the least amount of investment, but everything else might be an expensive lesson. You might say, wow, that actually costs a lot, but we learned a ton out of it. So nothing is really a failure, our true failure, like it's irrecoverable, you can't. Do anything about it. Like it's just, it's never a failure if you can learn from it, if you can fix it and you can , make it happen better next time, so it's like my first thought of it as like failure as an important component of learning, not just a part of it. I love [00:05:13] Kelly Schuster-Paredes: this. And I actually had a conversation with a district. I think she's like a district manager. I'm connected with her on LinkedIn, random workshop connected with her. And she was posting about how failure is such a big word. And it's about quitting or losing or whatever. And it was almost like a negative connotation for her. And she was trying to explain that, we tried to an education say it's okay to fail, but Still, sometimes there's that stigma, and I think that there are two types of people, It's those that consider failure as an opportunity to learn and those that consider, failure as , I'm not good enough,, aNd it was an interesting conversation we had because I said, when we, as computer scientists, we think of fails, we think that is part of the system. We have to go through certain things of failure to test out and it's a constant iteration and it's that opportunity to fail so that we can make better. Yeah. And if we switch the terminology of failure as an opportunity to make better, then failure is not so scary. And that's what I love about your story with your daughter because She has that opportunity. She knows that she's going to make her robot better by iterating it and figuring out the failed Moment,? Is that what you're trying to say? [00:06:37] Sean Tibor: Yeah, and particularly now in the way that we are Producing and consuming media and also with the way that we can create With, special effects or, really inexpensive ways of generating video or, creating it differently, we get this really false perception of how successful everyone really is at the things that they attempt, right? Take dude, perfect, for example if you just watch all of their successes, it looks like they're the most amazing, basketball players in the world, or they can thread the needle on something. It's like it never worked, but they have literally hundreds of takes before that where they miss it every single time. Or it's like a really close thing, but not quite there. And if we only look at videos where people succeed, we don't understand all of the failure that led to that beautiful moment of success. It's. It's the same idea as when you watch a rocket launch, you watch the space shuttle, like old footage of that, or you watch a SpaceX launch or something that it launches and it's perfect. Everything is nominal. You're like, that's amazing, they didn't do that the first time they tried, they blew up rockets on the pad. They had all of these failures, and they knew that was part of the process. That that failure is an important part of developing the technology, of developing the knowledge, the cultural competency, the institutional knowledge that's required. Failure is absolutely part of the process. Now, unfortunately, there have been cases where they failed when it cost human lives. Or they failed when they and blew up something that was really expensive. So sometimes failure is really expensive, not just in terms of the amount that of money that was wasted. But sometimes people lose their lives in the pursuit of this learning. So I think what they also started to do with that was, , they Did better testing. They did better failures along the way to avoid those really costly failures in human lives But then the other thing that I think that they've done Pretty much always at NASA and at a lot of other companies is when there is a tragic event like That lesson cost dearly so we better learn everything we can about that. That's why there were accident investigation boards. That's why they're the national transportation and safety board here in the United States investigates plane crashes, because we want to learn everything we can from that failure so that we can make sure it doesn't happen again. And so we can take that same idea of. Every failure is an opportunity to learn even the worst of failures so if we can learn from the worst of failures, each of us can learn from our smaller failures in between, so that was my first thought was this importance of failure to learning, but the second. Thing that I also tried to do really well, because some of these failures over the last couple of weeks, the only person to blame for that is me and they were understandable failures. They were things like, yeah, I wasn't trying to do anything wrong. It just, I didn't design something as well as it could have been. So I had choices. I could try to hide that failure, I could try to blame someone else. I could try to downplay it. Or, and what I chose to do is to say, Hey, check out this amazing failure that I had, we'll get this thing. What let's pick it apart. Let's look at it. This is something that I failed at. What can we learn from it? What can we do better? And I took a failure that was. Bit of bad code that I wrote and I turned it into some really nice code and some better guiding principles about how we're going to test our code before we deploy it again and how we're going to scale test it and how we're going to do all these other things that make it behave the way we expect it to rather than having it cause a bunch of unintended consequences. So I'm hoping, and it's still early, but I'm hoping that me role modeling that behavior, both to my colleagues, my. My direct reports to people that work for me, my junior engineers my superiors, it just shows that Hey, this failure, it sucked. Nobody wanted this, but how we respond to that failure, like the way that we choose to behave when in the face of failure is what makes a difference for those around us, the way that they handle it and the way that they hear it. And it also. Is something that when you discover someone else's failure, the way that you share that failure with them and the way that you communicate that to them and be part of that with them is also really important to make sure that they are receiving it in the spirit that you intend, which is as an opportunity to learn. [00:11:23] Kelly Schuster-Paredes: Yeah, I think that's good. And I think that takes a huge amount of trust in your culture, trust in your workplace, trust with your colleagues and your superiors and what are not inferiors, your superiors and the people that work for you. Yeah. Just to be like, Hey, I made a mistake and look how we can learn from it. And I think that teacher mode came out right where we did a lot of failures in the class and we took a lot of risks with trying new stuff. And I think that's an opportunity to show like we're human. And that we're going to get on our bicycle. I always tell the kids stop riding someone's bike for them. Let them fall on them for themselves. We took, you took that chance. You rode your own bike and you skinned a few knees and you got back up on the bicycle. So that's always the way to keep going. [00:12:14] Sean Tibor: Yeah. It's a nice feeling. [00:12:16] The Importance of a Safe Environment for Failure --- [00:12:16] Sean Tibor: You raise a really good point there about the need for security in your failures, you need to be in a secure environment where you can fail, it's entirely possible that any of the failures over the last couple of weeks could have resulted in me losing my job. There are always consequences for failures too, thankfully, that wasn't the case, or at least I haven't heard that yet. But the power of yet, but in order to be able to fail and to learn from it, you also need to be in an environment that allows for that failure that. Encourages that testing and then experimentation in order to fail and also a way that you know, how to fail, not just that you can, but these are the acceptable ways in which you can fail, and that's okay. These other ways, those failures may not be acceptable for that culture or for that environment. Those will have more severe and direct consequences than the easy ones, [00:13:15] Kelly Schuster-Paredes: I guess the bottom line is make sure you're learning for your failures and you're not constantly failing on the same thing because then you're going to really not make some people happy. [00:13:28] Sean Tibor: Yep. Yeah. Don't fail twice on the same thing, that's a good rule of thumb. If you can help it. [00:13:35] Kelly Schuster-Paredes: That's good. Those are nice insights to remind us of. Continuing to grow and to help establish that, especially in the classroom for me is to help establish that with kids. And I think letting them know that these little hiccups or these little mistakes don't have to cost you a massive grade or fail you out of school, but you need to have that opportunity to fail within the classroom and learn from your mistakes and sharing them. Yeah, [00:14:03] Sean Tibor: that's good. You did a really good job of that. In the classroom, and I learned a lot from you on that because so many students are concerned with the grade. Capital, capitalized the grade, and you made it really easy for them by taking the risk of the grade off the table, they'd be so paralyzed by the fear of not being able to try something or doing something, do something because they didn't want to risk their grade. They said, fine, you want an A, you have an A. Let's take that off the table. You have an A for this assignment. Great. Okay. Now go try that thing out now that we've solved the grade problem. So those sorts of ways to free up students from their own fears and their own fear of failure is what helps them take those risks that lead to greater learning because at the end of the day. It's not the grade that matters. It's the learning that does. A [00:14:55] Kelly Schuster-Paredes: hundred percent. A hundred percent. I want to share so many stories, but we're on a 15 minute. [00:15:01] Sean Tibor: Yeah. And we're at like 1620 and I think we did pretty well on this one. It's a pretty nice wrapped up idea for everyone. [00:15:09] Promoting a Learning Tool: Python Tutor --- [00:15:09] Kelly Schuster-Paredes: 100%. And I think you want to share some news too, right? [00:15:13] Sean Tibor: Yeah, we have yeah, we have a nice little partnership going. So we, I was going to share this for the next couple of weeks, but we're now partnering with Python tutor as a way to share traffic back and forth and share basically good. Good Python content with our community. So we've had Philip Guo from Python Tutor on the podcast a couple of times, and he came up with this really great idea that I think is in the true spirit of the original web and the original internet, which is if you see good stuff, you make a link to it. You share that content with other people. You put a link there. They get to see it experience it and share back. So for the next week or two, I think he's got a link on python tutor that points to the teaching python podcast. It says, Hey, if you're teaching computer science, come check out the teaching python podcast. We're mentioning. Python tutor is one of our favorite tools to be able to learn Python and really see and visualize what's happening inside your code as it runs in a really easy web based copy and paste your code and see what happens way you don't have to set up. It reminds me of a debugger. But without all the extra configuration and setup and weird stuff about stepping over and stepping through, it's got a forward button and a back button. So I want to see what happens next to my code. I hit the forward button. If I want to go back and say, wait, what just happened? I can hit the back button and see the previous step. And that's a really simple and elegant way to get a great understanding of what's. Actually happening in your Python code as it runs. [00:16:45] Kelly Schuster-Paredes: So just a side, in a side note, we don't promote stuff that we don't use. And I use it all the time, especially when looping through lists that seems to be so abstract for kids. And I'm like, okay, I'm done. We're going to show you on Python. Oh, we use it, we promote it, we love Philip, he's a great guy, and everything's for free on everything, [00:17:08] Sean Tibor: yeah and just to be clear, this is a promotion because of the spirit of sharing and community, it's not a promotion because we're getting paid for it, or because we're paying him. There's no money changing hands, it's just, hey, this is some good stuff, go check it out, go use it with your students, use it with your own learning, and everybody wins a little bit from it. 100%. Cool. Yeah. So I think that'll do it for our quick bite this week. We're coming right up on 20 minutes, including an endorsement for a friendly side of ours. So I think we've done pretty well and we'll wrap it up here. So for teaching Python, this is Sean [00:17:45] Kelly Schuster-Paredes: and this is Kelly signing off.