Sean Tibor: Hello, and welcome to teaching Python. This is episode 136, and today we're going to talk about learning Python with Doctor Chuck. My name is Sean Tyber. I'm a coder who teaches. Kelly Schuster-Paredes: And my name is Kelly Shuster Paredes. And I'm a teacher who codes. Sean Tibor: Welcome, Doctor Chuck, to the show. We're happy to have you. Dr. Chuck Severance: I'm Doctor Chuck, and I am a teacher. And I'm a coder. Sean Tibor: Oh, very nice. Kelly Schuster-Paredes: You got them both. Sean Tibor: Very. We're excited to have you. This week, we're going to talk about learning and moocs and possibly race cars and all kinds of fun stuff. So we're excited to get into that conversation, and we'll do a little bit longer introduction for the three people who haven't learned Python from Doctor Chuck at this point in a few minutes. But let's start with the winds of the week. Doctor Chuck, would you like to go first? Dr. Chuck Severance: This week, I got back from vacation in Portugal. It was one of those throw a dart at a map vacation, and the way we threw the dart at the map is my wife follows an influencer, and we figured out the rough area where she lives. And without intending to find this person, we just wanted to experience the things that she did. And so we reenacted going to certain coffee shops, going to certain stores, eating at certain restaurants, and experiencing this influencer's life. And the good news was, it was really throwing a dart. But we ended up in the Algarve in Portugal, which is like Europe's beach, and it's very tourist friendly, and. And there's a million things to do. And we just had a great time. And we inadvertently showed up one week before school was out. So it was all ready for all the people who are there now. And last week, we were alone, and everyone was serving us, and we never had lines or anything. And so it was really wonderful. So it was a pretty fun week. Kelly Schuster-Paredes: That's a huge win. Sean Tibor: Now, my question is. Cause we talk a lot about kind of the way that people present their lives on social media and influencers making everything amazing. Was everything amazing that you tried that the influencer had, or was there, like, differences between the two? Like, what was presented in social media and what you got to experience? Dr. Chuck Severance: Oh, that's the reason she likes this influencer so well, is this influencer is exactly who she is. She's older, she's over 50, and her whole shtick is, like, living over 50. Nice, pretending to be something that you're not. And so, to some degree, as we re experienced, some of her. She went, I'm gonna go shopping at this place. And da da da da da. And as we shop there, we felt very joyful. It was not. It was clear that almost. There's nothing on her channel that's really manufactured. She's just being herself, and we enjoyed walking in her footsteps. Sean Tibor: See, isn't that amazing? Social media can be good. Dr. Chuck Severance: Yep. Kelly Schuster-Paredes: That's what it's about, though, being yourselves. I am this giggly a lot of the times. Sean can attest for that. It's not fake, unfortunately. Sean Tibor: I think that's a fortunate thing. Kelly Schuster-Paredes: I know. Thank you, omi. Sean Tibor: Yeah, go for it. Kelly Schuster-Paredes: I have a really crazy cool win, so I helped out one of my admins last week, called me and said, hey, what do you guys do for your Zoom transcripts? I've got to clean this transcript up. And I was like, we can get it through something in python. Why don't we try that? I know Sean used something like assembly, and Bob Belderas told me he uses assembly too. The transcript was already written from the zoom. He just wanted to clean up. Assembly also has a little bit of code that has a little bit of regex, rejects, whatever you want to call it. I like rejects, but it's not rejects, Regex. And I cleaned it up and I sat there and he's like, how long will this take? I looked at him, I said, please, it's Python. It's done. And he went, what? And it was the best moment because he was trying to put a 75 pages of transcript into chat GPT and ask it to clean. And I said, please tell me you took your names out of those 75 pages and all that other stuff. He's like, yeah, but he kept hitting the wall because he couldn't upload it anyways because it was too big of a token size. But it was so much fun. I did it. I did six transcripts in literally three minutes, and that was just changing the replacements of a couple of characters to find it. It was really fun to impress him and show him what we do. And so that was a huge win. Like big. Sean Tibor: I like it. Kelly Schuster-Paredes: Yeah. Sean Tibor: And honestly, that's the thing that I've loved about coming to Python, is that it's really practical. Like, you can use it to get real work done. Kelly Schuster-Paredes: Yeah, I never had to do anything like that, but I'm glad he did. And it helped made me learn about AssemblyAI, which is a very cool library, so nice. Cool. And you. Sean Tibor: My win this week was that I was left to my own devices for 72 hours so my children are off at sleepaway camp and my wife had a business trip. So it was me and the dog for the weekend. And it was. By the end of it, I didn't know what I was doing. I was like, I feel like I should be doing more. And I had watched all the tv I wanted to watch. I had cleaned the house three times. Like, I had done all these things. And honestly, I finally just had to force myself to just sit and do nothing for a bit. And that was absolutely a win, to just have a moment of quiet and peace, to be able to think about what's next. Kelly Schuster-Paredes: That's very cool. I love those moments. Sometimes I go around a little stir crazy and I pick up the books and figure out what I'm going to read. But, yeah, just sitting alone is heaven. Dr. Chuck Severance: I agree that one of the things that was nice about our vacation is we had no plan. We literally had no plan each morning, like, hmm, what are we going to do? Which was instead of having a plan and a schedule and all those things, that's. It's really nice to just be unstructured. Kelly Schuster-Paredes: Yeah, absolutely. And it helps your brain, too. Yeah, definitely. Talking about brain, should we talk about learning? Sean Tibor: Yeah, let's talk about learning. Kelly, why don't you introduce our guest? Kelly Schuster-Paredes: So this is Doctor Chuck, Doctor Charles Severance, and I've met him virtually long time ago now, literally two years ago, watching his course when I was taking my data source science boot camp, they had listed out for people who didn't know Python to watch Doctor Tuck. And I was like, listen, I know Python, I'm just going to see what it says. And then I sat there the whole course because you were so engaging in the course and got a little, couple little tricks to use in the classroom on how you taught a few things. Cause I love metaphors and things that help to stick and it is just one of those things. I. So anyways, doctor Tuck, he's computer science educator, leader in online learning. You have a PhD in computer science and engineering from University of Michigan, Michigan State University. Michigan State University. Dr. Chuck Severance: Worked at the University of Michigan. Kelly Schuster-Paredes: Worked at the. Say, there you go, I messed that up. And he's probably the best known and. Sean Tibor: He'S got the tattoo to prove it. Kelly Schuster-Paredes: There it is. Dr. Chuck Severance: Tattoo, which is where I got all my degrees and the University of Michigan tattoo, which is why I work. Kelly Schuster-Paredes: Didn't want to leave Michigan. No, please interrupt anytime. But his popular mooc is python for everybody. What else did I miss? And he likes race cars. Dr. Chuck Severance: And invented learning tools. Interoperability which is the leading standard for connecting learning systems together. Kelly Schuster-Paredes: Oh, wow. Very cool. It's been a great pleasure. And then we've met you also at the Python education summit. And it's so amazing watching you when you walk into the room and you say, you know the doctor Chuck, and they're like, that's Doctor Chuck. You're famous. Dr. Chuck Severance: Small famous. Kelly Schuster-Paredes: I always like to say we're nerd famous, but it's like a badge that I hold dearly. So welcome to the show. Dr. Chuck Severance: It's good to be here. Looking forward to it. Kelly Schuster-Paredes: Thank you. Sean, do you want to start? Sean Tibor: I wanted to start with this quote from Jay Miller in the chat, and he just said, if no one said it. Thank you, doctor Chuck, for the work that you've done. I owe my early days of python to your videos several years ago, and Jay is good friend of the show. He's not the first person to say this to us. There are many people who, in one way or another, find their way to your courses on Coursera and other places where you teach and publish. It seems like that's a common thread for a lot of people who are learning python, that they somehow find their way to Doctor Chuck and you teach them. My question is, how did that start? How did that phenomenon of being that gateway for so many python learners really start? Was that something that was at the very beginning when you published your courses, or was it something that emerged over time? Dr. Chuck Severance: That's a great question. And the first, the TL doctor answer is, I did not plan it. There was no plan. I was teaching at the University of Michigan. Still do. And I was teaching Python to librarians and in a master's program, and we knew that these students who are going to be librarians need to know something about technology. And so I was that one course that when they show up on campus, they're like, oh, no, they're forcing me to take a programming class. These are grown ups. They're in their twenties and they're even older. And some were practicing librarians and had degrees from great places. And you don't just walk in and tell them how stupid they are. That just doesn't work to tell people how stupid they are. So I, from 2008 through 2012, was create crafting a python course to appeal to librarians. These are mostly women, mostly in their mid twenties, and many of whom had a program in class, and it had gone very badly for them. So as I crafted what I was saying and how I said it and how much material I put in the class, I was using them as a focus group to tell me what the course should be. And then when coursera came around, I just took this piece of work that I'd been building, and I'm like, oh, I'll just see what happens. And Kelly mentioned it earlier. It's how you teach. It's not just what you teach. And so I taught from the beginning as a kind of pull you in teaching thing. I'm not smarter than you are. I'm trying to give you every metaphor, again, a Kelly word. I give you every metaphor, every simple explanation, and I keep telling you that it's okay, that if this is a little confusing right now, it's going to be okay. And I think that a lot of computer science teachers really enjoy and thrive on confusing the students and then feeling superior. That's easy. That's easy. I don't know if either of you are runners, but if you are a runner and we went out running, you could go faster than me. That's just easy. I'm not a runner. I didn't want to show how smart I was. I wanted my craft to be how I could teach anybody. So that was it. And so it just so happened again. There was no plan. But in 2012, Python was emerging as an important language. And what's interesting is less about the 18 year olds or even 16 year olds that needed to learn Python. In the beginning, there was a whole bunch of people in the field who were practicing, and they were pretty smart people, and they knew C or Java or Scala or whatever was there in 2012. And all of a sudden, they started hearing in the market, Python and Coursera came out. There was a lot of whatever. So people found their way to me and they stayed, and then they told other people. And so to some degree, it was like I was the Numa Numa guy for Python. I was at the. I was the right viral class at the right moment in 2012, 2013. And so that viralness keeps people coming to me. Excuse me. So that Vitalness keeps people coming to me. That's the source of the success. It's the right course, right time. The market was at the right time. You couldn't do it again. You wouldn't do it again. The market's not there anymore. The world can learn python from thousands of places, and they can and do. So that's how we got here. Kelly Schuster-Paredes: I think there's so much more, and I think you're being a little bit, what's the word where you're not showing off? Let's be honest here. How many people have taken your course? Dr. Chuck Severance: 3 million. Kelly Schuster-Paredes: Exactly. Okay. Two things that you said to me at Pycon that have. Has really stuck in my head. You. You introduced yourself as the kindergartner teacher of Python. Dr. Chuck Severance: Yes. Kelly Schuster-Paredes: Which I love. Hard on that, because I always joke around, I'm the best basics python. I can teach basic concepts to anyone person as well. So kudos to that. But you also said something about how you're making a course, and it takes very long to make. You said, also, like, you. You used your cohort people in mind to make it. There's something else. There's some other magic happening, and I. You do. Have you heard people say things about what that magic is? I know what the magic is. I don't want to tell you, but I'm just kidding. It's you now. Have you heard other things that really keeps the people coming? Dr. Chuck Severance: I've been waiting for the Netflix for education my whole life, and that's because I really want to be a television personality, not a professor. I am preparing my teaching as if it is a Netflix special, which means that I think of producing, I think of the idea of the Beatles go into the studio and they start singing a song, and there's a producer in the back, and the producer says, let's do that again. But I want you to emphasize this in that particular thing. I also play the role of producer in my own. In my own shows. There you go. That was a freudian slip. In my own courses, I am producing myself, and I am looking continuously critically at everything that I'm going to do. And I want it to be entertainment. I really want this to be entertaining. And I put things in there. I put my office hours in there. All of those things are designed to make a connection, because I think that you can't teach if you can't make a connection. So all these people that just go, PowerPoint, PowerPoint. PowerPoint or tutorial. Tutorial. Tutorial, they're not making any connection, because the connection is when it gets a little hard, then the connection is what helps the student get through the hard part. And they believe that a teacher will help them through it, because the teacher has shown that they're going to help them through it. And so there's. That's going on in my mind. Then the other thing that takes me so long to build a course, and I hate to use this word, but I will, is gamification. Because I think people who think about gamification as their main thought, they go too far. But gamification to me is the idea that you can sit and try something over and over, and failure is not punished. You just keep trying, experimenting. And eventually, and so I wanted to make sure auto graders were, in a sense, a video game where I've given you something to pass, and by golly, you can pass it. And I don't make them too hard. Like, video games need to be winnable. You can't say that most of the people lose video games or they'll lose interest. And so the key thing is get people in that proximal zone of learning while they're playing this game to the point where they'll repeat it often enough and then they break through and then the endorphins just flow over them. And so, yes, there's design to it, and yes, every autograder, every inch of every autograder, every word, the sequence of assignments, I produced that. Kelly Schuster-Paredes: So that's what I find. And I think, like from, I take a lot of coursera courses I've taken. I was googling somewhere, I was trying to find the list, but there were five, the top five coursera courses and three of the five I took. Python for everybody, learning how to learn with Barbara Oakley and the science of well being with Lori Santos. And out of all of those, I keep thinking of what those all have in common. And I think this is really important for teachers. The metaphors, the humor, the connections. You can tweet, you can text Barbara Oakley and she'll email you right back, even though she's probably got just as many followers, maybe not as way more. Dr. Chuck Severance: Oh, way more. Way more. Way more and way more. Yes. Kelly Schuster-Paredes: Well, kindred spirits you two are. And this is a really important thing for teachers who maybe don't take these courses, that you can learn a lot. And that's something special. So I'm going to summarize really quick. I love that, making connections, because if you don't have any connections with a student, whether in a MOOC or online, they're not going to follow you. Making yourself available, letting them keep trying, keep experiment and that proximal level of learning, knowing when it's too hard or too easy, did anything else, another maybe number five, keep pushing because they're all great tips. Dr. Chuck Severance: Barbara and I know each other and we've hung out together and we really wanted to build a course together. And we're both too busy to find the time. Both of us are crafts, we craft our work. And so it's kind of two people have to slow their lives down for what, two to three years so that Barbara and I can make a course. And so we, we never made a course. We wanted to talk about the cognitive concepts of program, which would be a terrific course with Barbara and I, but we both too busy on our own arcs. But there is a piece of Barbara's course, and I took some of Barbara's course, and I think about it almost every single day because of the metaphor and the thing that I took away. And Kelly will see, if you think of it, remember this part. And that was how important sleep is to your brain. Kelly Schuster-Paredes: Yeah. Dr. Chuck Severance: And it's got to be six or seven years ago, but I can still remember Barbara explaining stuff builds up in your brain during the day, and you gotta sleep, and you gotta drink water when you go to sleep because that's what cleans your brain out at the end of every day. And I drink a lot of water every night because of Barbara. So every single day, I learned something that Barbara taught me every single day, and it was a very quick thing. And she, she described it wonderfully. And, of course, she has the credibility. So that I'm gonna like, oh, yeah, Barbara, that seems like a really good idea. So I'll drink more water now. Kelly Schuster-Paredes: That's cool. And in what other languages? I know you know C, and you have a really neat kind of course that's coming out of the connections with C and Python, or I think. Is that what you were saying? Dr. Chuck Severance: Yes. It's already out. And so I really have two acts when it comes to my online learning. And the one thing that's most important about all my teaching up to the C class was that nothing has a prerequisite. There is. You don't. You're not going through a degree. And if I tell you got to take these four courses, you're just not going to get there. And so I made it. Every course I ever taught should be starting from no prerequisite. You don't need calculus, you don't need algebra. You don't need five years of programming. You don't need anything. You're starting from zero. And so I have five courses that are four courses that are like that. No, five. And I came to an epiphany, and that is that you can't just be the kindergarten teacher forever on all topics. And so many people would ask me how to get employed, and I'm like, look, I'm the kindergarten teacher. I gave you the things so that you can learn how to be employed. I realized that was a good first step, but it was not the only step that I needed to come up with a pattern that says, look, if 3 million aren't going to do it, 3 million are not going to take my whole series of courses. But if 100 people a month graduate from a series of courses, it's like a degree in programming, then I can get them jobs. I can provide a sequence of courses that lead to employment. And so I thought to myself, and this is the concept that I call the master program, not computer science. The master programmer is the skills needed to just be a great programmer, to wield programming like a sword. Hey, let's see. Let's see if my sword works. Kelly Schuster-Paredes: Sean probably has one too, of those. Where's your at, Sean? Wait, hold on. I don't have a lightsaber. Sorry, you guys. Dr. Chuck Severance: There you go. Sean Tibor: Let's be here. Kelly Schuster-Paredes: Your battery's dead, Sean. Sean Tibor: No, I think I just have it switched off, maybe. Dr. Chuck Severance: There we go. Okay. John knows how to turn it on. I don't. There we go. Kelly Schuster-Paredes: This got all whole new level of weird. Sean Tibor: You're welcome. Dr. Chuck Severance: Okay. Kelly Schuster-Paredes: I only have hippos. That's all I have. Sean Tibor: Mine runs python. Dr. Chuck Severance: Not surprisingly. I'm just a kindergarten teacher. Sean Tibor: But you could. But that's the thing. It's like someone could go from kindergarten level to this. It's not that much further. Dr. Chuck Severance: Right. That's what you enjoy, that application. Just like what Kelly said earlier, that application brings you joy, and it did. And that's the key, is that as long as joy is with you, you're going to continue. But I wanted to make it so that, what is it that a great programmer needs to be able to wield programming like a lightsaber? Because the best programmers I know almost never have a computer science degree, and yet they are Jedi wizards that know the force of programming and can use a lightsaber well. And so I said to myself, okay, I don't think computer scientists are a special breed, but I'm not going to hire them. I'm not going to work with them. They're just weird. And I want to create students that I want to hire, and that is people that know lots of different things, but they know programming really well. So I asked myself what in my background and what in all those other people's background that I have so much respect for and work with and love, what is it that makes them strong? And that's where c came up. And that is the best programmers know how computers work. So that when you're using the AI library, you may not have written the AI library, but you understand what's in it, and you understand how the library works, and then it works and gets on a cpu and a da da da da da da da. And so the key thing is, if you don't understand the nature of computation truly and the nature of electronic computers, you can't be a wizard. And so I set myself out to come up with a series of courses that in the shortest possible time would create job ready programmers. And so the sequence there is python for everybody, c programming for everybody, hardware for everybody, JavaScript for everybody. Well, they're not really everybody anymore. And then Java. And it turns out that I didn't know where the, I keep changing what courses they are. But the thing that I realized ultimately that not only is understanding the full stack of abstraction is important to be a great programmer, but understanding object orientation, object orientation is one of those things that we teach universally poorly, and every college professor teaches it the same way, and they teach it horribly, and they do more to confuse the students. And the reason is they give themselves one week to teach object orientation. And what they do is they teach the syntax of object orientation. I have object orientation in python for everybody, but nobody knows it. And it turns out that to be good with object orientation, you have to have lived it, you have to understand it, you have to see it from lots of different perspectives. And so this sequence of courses is really going to explore object orientation, plus hardware and compilers and all those kind of things that make it so when someone says interpreter or compiler, you have some understanding what that means. So that's the idea, but the idea is to produce graduates that are ready to be employed. Sean Tibor: One of the things that I remember from the computer science courses that I took was that I really struggled with going from that kind of abstract theoretical presentation of some concept to the practical application. For me it was a, I still remember learning about recursion, but it was all taught on paper and in a concepts of modern math class. It was really hard, and I never really felt like I understood it until the first time that I was writing recursive functions and actually experimenting with it and not having a base case and watching it just infinitely loop without or hit the end of the call stack. So my question is, did was the key really being able to turn that into something where you're taking people that are not being taught the abstract theoretical on paper and starting with the okay, let me quickly show you the relationship between the concept and the application, because they were coming from that kind of hands on gamified. Let me work with the code and work with the concept at the same time, or was it some other secret method of getting that connection together? Dr. Chuck Severance: You mentioned recursion. Recursion is a burning subject that if you read my textbook python for everybody and you look up recursion in the index, there's only one reference, and it's the reference in the preface that says this book will never mention recursion, which of course is recursive. And so for me, I equally hated when I was taught recursion. It just felt like it was a detour at the wrong time, whatever class you're taking. And there's a computer science curriculum that says week seven supposed to talk about recursion. It's called CS one and it's really a terrible curriculum, but a lot of people love it and believe in it. So what can we do? You can't fix stupid. And so for me, I've always said I will only teach recursion the moment that I have an application that requires recursion. And I'll bet that recursion came alive. Recursion's great, by the way. It's not a bad thing, it's how we teach it, how it's taught in computer science. I was teaching Java class to people who've taken their second class and we were parsing XML and we're going to print out all the nodes in an XML tree. Guess what? You can't do that without recursion. You just can't. But then when you do it, recursion, the base case is obvious. You might write a little bug and it might go off, like you said, into the weeds for a while. Eventually you'll get your base case right and you put some print statements in. It says I'm four deep and now I'm five deep and now I'm four deep, three deep, whatever. But ultimately chasing down trees is a recursive activity. And so if you don't know recursion and you imagine trying to parse a hierarchical document like XML but nothing but for loops. And I turned out I did this in my freshman year in college. They were going to have me parse mathematical expressions with parentheses and nested parentheses and all this stuff. And they gave us this recursive algorithm, excuse me. And I said to myself, I am so smart that I don't need to use recursion here. I will figure this out because I can write a for loop to see a parenthesis and look up to the next parenthesis. And if I see another parenthesis, then I'll just add one and I'll make sure and I'll do all these things and I'll scan back and forth. And this was in cards and by the time it was done, most students had a card deck that was this thick and they were finished with the assignment. I never finished the assignment and my card deck was 2ft and I never, they would give me an, I would get through one piece of input, then I'd try the second one, it would egg and the third one and whatever, because you just. The learning therapy for me was a tremendous bit of learning where this is where you use recursion, Chuck, don't fight recursion when it's the right solution, but don't teach it in week seven of a first programming class. Kelly Schuster-Paredes: But I think that's like number six of the teacher rules. And this is why I love this conversation so much more than just the talking about Python is it's the fact that we do things because we have to, we teach concepts in math because we're supposed to, but it's not practical, it doesn't make sense and it's forced and it's in. And when you're, when it's not practical and it doesn't make sense and it's forced, of course the kids trying to learn it, whether they're 16, 1718 or ten, are not going to learn it well, and some might, they'll memorize it and they'll be able to tell you what recursion is. They can give you the definition and they can explain it exactly the way the teacher has. But the practicality of using something goes away. Dr. Chuck Severance: And I think no retention. Kelly Schuster-Paredes: Yeah, there's no retention. Dr. Chuck Severance: There's no retention. Kelly Schuster-Paredes: And as Barbara would say, there was no connections from the short term to the long term and the myelin wrapping around the neurons, something to that effect. Sean Tibor: And it's interesting, Pamela Fox is chiming in also and saying XMl parsley, put her, I'll put her on screen here. She says XML parsing is great for case for recursion tree based data structures. She's got some extra comments in there about UC Berkeley and the way we should try to teach things. And I think it really does reinforce this idea that, yeah, like when you have the right problem and you have the opportunity to teach the right solution to it, then all of these things fit together and it just makes sense. Okay, perfect. But again, trying to force it or trying to get it to be something that you have to learn because everyone should know it doesn't seem to make a lot of sense. Dr. Chuck Severance: The problem that Kelly is talking about and that you're talking about, and now Pamela is also talking about is the problem of curriculum. And so curriculum exercises are, here's these 75 things that we want you to know before you're done. And wouldn't it be nice if instead of wasting three grades to learn these 75 things, we could do it in two grades? And so then what you do is you just divide up to 75 things, and three days on this and two days on that and whatever. And then you're like, I'm a master of efficiency. And then I took something that took three years to learn, and now you're going to learn it in two years because of my brilliant curriculum, which is nothing more than taking each amount of time and multiplying by two thirds. Sean Tibor: And what I think this is can bring you back to the beginning of where you started. What I also like is that the way that you designed your course and the roots of where it came from was not based on an outcome where I have these 75 things, and at the end of it, all 75 boxes will be checked. You went to it and said, I have people, I have librarians that need to know something that will be valuable to them. And so instead of going from 75 things to now, how do I cram that into the schedule? You went and said, I have 75 librarians. What am I going to teach them that will be practical and useful for them to be able to use in the rest of their professional lives? Dr. Chuck Severance: What will they learn and what will they retain? I'm going and cut, cut, cut, cut. Just take stuff out until they understand it. Kelly Schuster-Paredes: Yeah, that's like, the biggest things. Whenever working with teachers, what are the three big takeaways? What are they going to remember you for? What are the three things that they're going to remember and be able to state five years from now, ten years from now, 20 years from now? That's huge. That's huge. And that, I think that, to me, definitely sums up why you have 3 million people. Funny story. Funny. Quick, quick story. I play adult kickball. Tonight was supposed to be a game, and I said, I'm not gonna come. I have a podcast. I'm a little bit of nerd famous. They're like, oh, yeah. And I was like, yeah, invite some people on. And I'm having a really important person on the show tonight, so I'm not gonna miss it. And there's like, well, who's the important person? I was like, doctor Chuck. Doctor Chuck. Two people on my team. Granted, they're also programmers, but that's just what a big impression that you've had on people. So. And I do believe it has all those tricks of the trade to be a good teacher. Dr. Chuck Severance: Here's another interesting observation, and the other interesting observation is slow is not always the answer. And so what I did was I cut out difficult concepts, but I didn't cut the important concepts out. So by the time I was done, if you look, I was looking for a copy of my book. Here's my book. This is the greek translation. So I can't find an english translation of an Andy in my office. If you look at the book, there's chapters one through ten, and you literally can take chapters one through ten and stop. I reduced it so much that I could do chapters one through ten with people who were anti programming and get them at a mastery level in five weeks. So five weeks of a 15 week class, they learned python, and the midterm exam was to write code. So we go from five weeks. So having a sense of pace and a sense of you can't fall behind. Let's go. Go, go, go. But then I've laid out a achievable thing then that gives them a certain amount of energy. And by giving them this high stakes, terrifying midterm exam where they got to write code in 2 hours, and at the beginning they find that the most terrifying thing in the world, but it's also a motivating thing. And of course they all did great. And the sense of endorphins that come from crushing that midterm exam, that terrified you for five weeks. And then the second half of the book is not about Python, it's about applying Python. So xml JSON scraping, just application. So I got that so tight that in five weeks I could get through ten chapters and literally you could stop there. But then what I could do is take the next six or seven weeks and apply it to the point where now they're like, they're operating at another level, which means Python is a skill that they now have. So the second half of the class is applications. It's not. Okay, I'm going to teach you Lambdas now. I'm going to teach you this, and I'm going to teach you how to use Jupyter notebook, and I'm going to teach you how to use pandas and numpy. No. We're going to celebrate the achievement that you've done in the first five weeks of this course, and you're going to use those skills for the next five weeks of the course. And again, all about retention, retention, retention and making those in the mind connections so that years later they're not afraid. Kelly Schuster-Paredes: Yep. And that's why I teach 6th grade and 8th grade. I don't get, I don't get a lot of weeks. But go ahead, Sean. Sean Tibor: I was going to ask, I guess a couple of things. To what extent has teaching adult learners informed the way that you think about what you're teaching? And would it be different if you were teaching k through twelve? And then the second question is how do you think that has created also a ripple effect where maybe you intended it towards adult learners, but many other kinds of learners have been able to also learn effectively from what you've made. Dr. Chuck Severance: So I've always aimed all of my courses at, let's just say 13 or 14 year olds. Right. In terms of the intellectual development, no calculus, just 13 year old 9th graders. When I'm building a class, I'm seeing 13 year old 9th graders is who I'm looking at right now. The problem is I don't get to teach 9th graders because the horrible nature of our k twelve system. And so to me, when I'm teaching 24 year old adults, they're a proxy for a 9th grader with one wonderful difference. They will talk back to me. They will not put me on a pedestal. They will knock me down. I have to sit in office hours and they come walking in and like, I don't get it. I don't get it. I don't get it. And I'm like, did I make a mistake somewhere? And so these classes have always been aimed at high schools. So I actually have a whole high school curriculum that I built that starts in 9th grade, maybe 8th grade for advanced kids and goes all the way through 12th grade with the idea that at the end of 12th grade people could get a $40 to $50,000 programming job at the end of 12th grade. Now, will I ever see that day? Will I ever see a situation where we're graduating job ready high school students, or if they want to go to college, they come with a master program or skill set and whatever they want to do, be it biology or economics or whatever, they're still today everything, or AI for that matter. And so I had been thinking about that from the very beginning, that this is not about adults. And it turns out that thinking about a high school student, a 9th grade student, is a way for me to not just say, oh, they'll figure it out. This is grad school. You should be tough by now. No, grad school is just as tough as 9th grade. And we pretend that somehow grad students are like superheroes and they're all strengthed up and all that stuff. And so I. I aimed this at high school students from the beginning and knowing full well that I will never get that chance. The curriculum will never let something stupid like chemistry or physics move out of it because it's in their list of 12,000 things they want to teach badly. And they won't give me four to five half year semesters to teach technology. Kelly Schuster-Paredes: But I hear you. And I've been working. I have nine weeks. Nine weeks and nine weeks. And so we get it done. I'll keep the fight for you, doctor Chuck. I have faith. Dr. Chuck Severance: 27 weeks is better than zero weeks. Kelly Schuster-Paredes: 27 weeks is better than zero weeks. And we start with ten year olds. So now you can change your profile. Keep it down to ten because they can do it. Dr. Chuck Severance: I'm not going to teach scratch. Kelly Schuster-Paredes: And I'll let I teach python to 10th graders. Dr. Chuck Severance: Maybe my 9th grade. Yeah, okay, 10th grade. Ten year old. Sean Tibor: Ten year old. Kelly Schuster-Paredes: Ten year old. Dr. Chuck Severance: Okay. Kelly Schuster-Paredes: Yeah, so they can do it. They're getting smarter. Dr. Chuck Severance: No, I think they are. But hang on. Before we leave this topic, the reason that I want to just find the curriculum people in high school and just choke them for an hour and shake is that I believe that developmentally, and you're a real teacher, I'm just a college teacher. I think developmentally the ages of 13 through 18 are the most absorbed, the ideal time to absorb complex concepts. And so if we wait to teach these essential things for 21st and 22nd century skills and we wait until they're 21 years old, we're idiots. We are teaching them completely stupid stuff like chemistry and physics. I'm not saying there shouldn't be a chemistry for everybody class, but when I went to high school, the chemistry class was actually pretty serious and the physics class was even more serious because I was like a nerd in high school. And I don't retain anything from any of those classes. Nothing. And my brain was so ready to absorb something I could understand. And so that, that's the double tragedy of not allowing k twelve to teach this stuff, is that we are taking young minds that are way better at learning new things than old minds and we are exposing them to absolute rubbish. Sean Tibor: I've had some more thoughts over the years and I would say I think there's a couple facts that we're failing to, or truths even, that we're failing to recognize. So much of that k through twelve education curriculum was built around a time where the only way that someone could learn was either from a book or from the sage on the stage in front of the room. So what are we going to teach them? We're going to teach them the things that everyone should know and that we have a steady supply of teachers who can stand in front of the room and teach it badly or sometimes decently. But we can. We know that, and that's fixed. That's what we have available to us. So if you go to pretty much any high school in the country, there will be a chemistry teacher there, there will be a biology teacher there, there will be a physics teacher there. But we've missed this truth that we are no longer limited to who can stand in front of the room in our classroom in the middle of Iowa. Dr. Chuck Severance: Let's make a way to make those teachers in the middle of Iowa. We got a way to teach the teachers, and I'm preaching to the crowd here, but, yeah, we got to teach the teachers. And if you look at the first lecture in python for everybody, I'm talking about making more teachers. Sean Tibor: And to further. I love the idea of the chemistry for everyone. What if there was? The role of the teacher in the room is not so much to be the one communicating all knowledge and truth about that subject, but they're there to facilitate the learning process for python for everyone? For chemistry for everyone. And students can take the courses that make sense to them, that fit with what they're interested in and what they're good at and what they ultimately may want to do in the future. Dr. Chuck Severance: So we mentioned chemistry on purpose. So here's the funny thing. Chemistry is taught really badly in high school, but in at least 50% of the places in college, it's taught really well. And that's because the chemistry department understands that not everyone is going to be a chemistry major. And so they create a course called chemistry for non majors. And what are the founding principles of chemistry for non majors? We got them for 15 weeks. Let's entertain them. Let's reduce the scope of what we're trying to teach to that which they can absorb so that they still understand that when you're charging a battery and there's hydrogen and oxygen coming out and then you start a fire and oxygen and hydrogen go back together, you at least can understand that stuff that's useful. Same with her sciences. And so the key thing is, if you observe the chemistry teaching field, there is whole conferences in chemistry about how to teach one class, the chemistry for non majors class. But high school should do that. So chemistry has chemistry for everybody. Already. It's just widely distributed now. There's a bunch of people that go to conferences for computer science for everybody. But in those conferences, they presuppose that everyone wants to be a computer science major because it's hard for computer scientists to conceive of the notion that not everybody wants to be a computer science major. So they create courses that are recruiting courses, but then they do them badly. They're trying to capture everybody to come to computer science. And so that's why the first computer science classes and the redo of every first computer science class is literally a disaster, because they're trying to trick you into taking computer science, or they're trying. Sean Tibor: To filter, which is worse, because if you're not good at this class, then you're not good at coding at all, ever. Or that there's no value to it, to this for you. Dr. Chuck Severance: You're a business major. God created a business major when you were born. Sean Tibor: And it's our privilege to teach this to you, that you should now know that you are not ever going to be a coder or a computer scientist. Dr. Chuck Severance: I feel so good. We're not wasting anybody's time because of your lack of talent. Kelly Schuster-Paredes: You guys are so bad. I am going to derail this conversation. But instead of making them computer science, I'm going to tell them we're making them programmers. And I think that's one thing that Shawn and I really took into heart when we were designing our curriculum, was, we're not telling you to go be a developer. We're not telling you to go take cs in college. But what we're telling you is this is some really cool thing right here. And look what it can do. I can remember Sean. That's why Sean has a python coded lightsaber. And we had hand sanitizer hooked up to the Alexa, to a pixel board, to the monitor, to whatever else he hooked it up to. Sean Tibor: We had stats running like I had a dashboard with visualization of how many times and what time of day people use the hand sanitizer dispenser. Kelly Schuster-Paredes: And me, like Jay, I would always pull in the graphs because I think graphs are cool. I think Jay said that in the episode we had just graphs and being able to get some data. How many push ups did all the boys do in class? And we get to graph it with Python in ten lines. So I think that sums it up with the whole point is, if we try to only make Python for computer scientists, we really leave out the whole diversity of what Python and what programmers can be. And I think that's really important. I think a lot of the people that have come on our show as well, like, we want people to code because coding can be fun. Coding can be useful, and coding is practical. So python should be for everybody. Dr. Chuck Severance: Pivot your pivot. Okay, so let's imagine the way the three of us want the world to look. Looks this way. And we're teaching high school, we're teaching good programmers that are enjoying technology and making things and making graphs. And they come out of high school knowing Python. They know database, they know c, they know JavaScript, they know Web development, they know Java, they know object oriented programming. They're 18 years old. Imagine now if you're a computer science department. Imagine those 18 year olds are walking into a computer science department. Imagine how much better computer science would be. People walking into computer science already knew how to program. Sean Tibor: And I'll do you one better. Imagine if those same people. Maybe it's the same skill set, maybe it's different. Imagine if they walk into a chemistry department or a biology department, or an english department or social sciences, and they've got all these skills and capabilities that then they marry with their passions for what they really care about. And I really don't want to say, I don't want this to sound like I'm. I'm denigrating computer science, because there's. If there's room for someone to go into biology with coding and do really well at it and marry their passions to it, there's absolutely room for someone to go into computer science and beverage an amazing computer scientist and get really deep into all of the weeds of computational approaches to solving problems and finding new ways to do the next big thing. There's. The thing that I love about what you've done and what you've pulled together is that you have made it okay the same way that you made it okay for the librarians that you're going to be okay. You made it okay for everyone to learn programming and make that part of who they are, make it another skill for them, instead of something that makes them feel bad about themselves, about how they're not smart enough. Kelly Schuster-Paredes: I have to. Duke Jay's comment, this is really interesting, because it's. He says something I don't think has been touched on, is we're talking primarily about the hireability of these folks right out of k twelve. That's an interesting point. Like, maybe they don't have to go to college. Where are we going to be? Dr. Chuck Severance: Short answer for this okay, go ahead. Kelly Schuster-Paredes: Better than my long answer. Go ahead. Dr. Chuck Severance: No, you were pointing out the question, what if sometimes when you achieve something, you're like, oh, wait a sec, now I caught the car. The dog catches the car, eventually doesn't know what to do. Think about it this way. What they do is they go to college doing, as Sean said, anything they want, and instead of working at a coffee shop, they write software. They don't have to go work and not go to college. They can work their way through college on a $40,000 a year software developer salary, junior software developer salary. They still need to go to college. Kelly Schuster-Paredes: Or they can be like a couple of the AI eds. They go through college until they make something that actually sticks, and then they quit halfway through. But the sky's the limit. Whatever. Dr. Chuck Severance: If they change their major, they can still work, do programming. If they on and on one take a gap year, they can make money programming if they. Whatever it is. And so I think that the patterns can be much more flexible once we have high school graduates with these kind of skill sets. Sean Tibor: And here's great follow on point from Jay, too. What about the places that don't have high schools, that don't have colleges? This information is available there, too. Like, people are smart all over the world. They're capable of learning these things if they have access to the information. We're talking a lot about high school and college because that's what we know really well. But I think Jay's talking about, especially even within our own country, there's plenty of places where there's not a lot of access to good teaching and good educational resources. In other countries, there's not the same access. But we could make this available. This could be something that anyone can use and people can get jobs, get, find validation, find purpose, regardless of where they live, because now, as long as they have access to the information, they can do it. Kelly Schuster-Paredes: Yeah, and just a pony point. Not that I wasn't catching Pamela Fox. She was commenting as well. I was trying to listen and type. She's following us on LinkedIn. So she's put some really good comments and a webpage about the data. She says, not perfect data. Correlation causation of optimal age for teaching text coding on LinkedIn. Dr. Chuck Severance: I'd like to see that because I have an instinct. And so it'd be good to see some data about the optimal age to teach it. Kelly Schuster-Paredes: So we'll have to have her explain that when she comes on our show in two weeks. And I know you guys know each other, which is really cool. And we'll get to follow up on that conversation later. Sean Tibor: I know I'm way over time. This was way too much fun and I think we should do more of this. There's so much good discussion, good conversation, doctor Chuck, of course people can find your course on Coursera. They can find your books. You have office hours for people who are taking your course. What else should people check out that you've been particularly interested or are working on lately? Dr. Chuck Severance: I would make the following observation, and I do something very different in that I think about my courses the way a publisher, Pearson Mymathlab, has been a guiding light in terms of how I build my material. And so my material is always integratable into canvas, sire, learn blackboard, sakai, moodle, and so that you can treat me like my math lab, so you can teach python and use my autograders and plug them in and my YouTube videos and plug them into your lms. And I think that's a cool thing in k twelve. The problem is that it's really hard for a k twelve educator to get that information and then get the tiny little bit of tech support it takes to get that all to work at the time they need it. And so one of the reasons k twelve is the way it is because publishers have the money to jam solutions down k twelve's throat. And I have solutions. I just don't have the money to jam it down people's throats. That's a thing I've always wanted to scale this and then I know we're going to run out of time. But Jay, your question my quest are the same, and that is it's not just about America and it's not just about kids that are going to go to Yale. It's got to be everybody, everywhere. And I won't go into the hour that I could talk about that. But the essence of it is scalable, distributed, remote internships that are paid. And I know I can make it happen. The one thing I can't do is pay for it. And so I'm just following the crusade, Jay, that you're following. I'm going down that path and I just hope that by the time I get there and that I've done all the pre steps, that somehow money will appear where I can hire the graduates remote and then put them in working teams, an internship, and then from that get their job, because you can't just teach people and say, go to get a job. You got to have this hybrid moment in their life where they're working on an internship, and I want that to scale worldwide, internationally, independent of economic situation. Sean Tibor: I like it. I think that would be very uplifting to a lot of people. Dr. Chuck Severance: And I want to use the fame, the nerd fame. I have to advocate for that. Even if I won't make me any money, I don't care. Kelly Schuster-Paredes: It's very honorable. And I'm, like, reading, Jay, I can't stop reading the chat. I'm gonna turn this thing up. No, I'm just kidding, Jay. Jay's comments are on YouTube, pamela's are on LinkedIn, and they have been great, active participants in this chat. Sean needs to be doing a better job. Sean Tibor: I'm feeling panel discussion is coming. Like, I think that's our next step. Dr. Chuck Severance: That's a good idea. That would be so fun. Kelly Schuster-Paredes: Yeah, that would be. We'll have to get through the summer because I have some really great talks. All this. All this summer. So I'm excited. I'm excited, excited, excited. Sean, it's 717. Sean Tibor: All right, let's wrap it up. Doctor Chuck, thank you so much for joining us. This has been an absolute pleasure to speak with you tonight and just have a really good conversation. So thank you for joining us and being a part of this. Dr. Chuck Severance: Thank you so much. Sean Tibor: All right, then we'll wrap up quickly. No announcements this week. Just stay tuned. Kelly Schuster-Paredes: No announcements? Sean Tibor: No. We have so many upcoming guests. Let's keep it going. Keep it a surprise. Dr. Chuck Severance: Just one. Sean Tibor: You want to do one? Okay, you can do one next week. Kelly Schuster-Paredes: Next week. Jay, hold on to your seat there. Kelsey Hightower is going to be on the show next week and then Pamela Fox the following week. That's it. Sorry. Sean Tibor: All right. All right. So for teaching Python, this is Sean. Kelly Schuster-Paredes: And this is Kelly signing up.