This week I’m joined by Kelly Paredes and Sean Tibor, the hosts of the Teaching Python podcast. Join us as we discuss the benefits of learning Python outside of the code itself, and what it’s like to learn Python when you’re not planning to become a professional developer. So, without further ado, let’s meet Kelly and Sean!
Ricky: Welcome to Real Python, Kelly and Sean. I’m glad you could join me for this interview. Let’s start the same way we do with all our guests. How’d you get into programming, and when did you start using Python?
Kelly: I am probably your least typical coder/programmer. I didn’t really get into programming until about a year and a half ago. I played a little with MS-DOS as a kid, but I never went further than copying things from a manual. Also, I was a pre-med student in college but never really had a coding class.
During graduate school, I had a few web design classes, and I liked playing around on the web, but that’s the most coding I did in my youth. I later taught students how to make websites with HTML in Dreamweaver, back when it was a huge thing to do in education. Then, later I programmed Lego Robots with the EV3 Mindstorm software and played with Block Code a lot with students.
However, Python is my first real coding language, and I’ve been teaching myself how to code ever since. I think Python lends itself to newbies because of its readability and its logically organized structure.
Sean: I grew up around computers, and I think my earliest coding experiences were with Apple II computers in the classroom. I remember typing in BASIC programs from magazines and books to solve puzzles and decode cryptograms.
My serious programming started in college, where I studied information systems and had to learn about databases and web programming with Java and PHP. I fell in love with the ability to make things more efficient and elegant through practical code. I applied this to my career in software development and marketing by always finding a way to make things a little bit better with code, even when I became a manager and stopped coding as part of my day job.
About a year and a half ago, I decided to make a career change and start teaching computer science full time. We wanted to use Python as our foundational text-based language, so I began teaching myself all about it. It’s been one of the most satisfying languages to learn, use, and teach to others because of its elegant implementation and wide range of uses.
Ricky: You are the co-hosts of the Teaching Python Podcast, which started in December 2018. For those that have not yet listened, why did you start the podcast? Also, who was your target listener when you started and has this changed as you’ve progressed?
Kelly: Sean and I work together in the same classroom. We spend most of our nine hours together talking about really cool things like coding, pedagogy, classroom management, curriculum design, how to get cool projects into the classroom, and whatever else piques our interest that day. We often hang out while one of us is teaching, and we tend to work together instructing when we can.
We realized that we had something unique together. I was his teaching mentor because it was his first time teaching, and he was my Python coding mentor because, well, he’s just really smart when it comes to coding! We started this podcast because we noticed it’s hard to find trained software engineers who are willing to teach, and teachers who are willing to learn how to code.
If you’re a programmer, you typically don’t want to start teaching on a reduced salary, and there aren’t many experienced teachers who have strong coding experience. It’s hard to start a computer science curriculum if you don’t have quality teachers who know both the code and the pedagogy.
We strongly believe that good teachers from other subject areas can become great computer science teachers and that all it takes is a little mentoring and a lot of perseverance. At the same time, we want to help other teachers learn how to code so that we can all help develop students who can think critically, solve problems, and develop the social and emotional skills that will help them in their future.
Sean: We originally thought that many of our listeners would be teachers who specialize in computer science or a related STEM field. It’s been interesting to find that there are so many Python developers that have a passion for education and for showing others how to begin applying computational thinking and problem solving to the world around them!
One of our favorite things about this podcast has been meeting people from across the Python world who are doing such interesting and important work. Whether it’s English teachers that use code to explore literary concepts, college-level instructors teaching data science principles to graduate students in the sciences, or busy professionals who teach after school Python programs to underprivileged or under-represented groups, it’s inspiring to see how Python can be used to make the world a little bit better.
Ricky: You teach Python to middle school-aged kids. I’m curious to hear about any challenges it has presented for you personally. How do you approach teaching that age group differently, as opposed to adults?
Kelly: I’ve taught middle school children for over twenty years. I love this age group, especially 7th graders—they’re sponges! If they’re given the opportunity and the right amount of support, then they can accomplish amazing things.
In my opinion, teaching middle school students is the easy part. Sometimes, explaining to their parents that coding is hard and that we’re “pushing” their children to do what they believe they can’t do is the hard part. Parents don’t typically know how to let their child struggle. And most parents don’t understand coding themselves, and so they feel lost trying to help their child.
However, Sean and I believe that finding the right desirable difficulties is what helps students to learn more than just how to code. In the end, parents are super pleased with what their children accomplish!
Sean: Even after working in business with adults for so many years, it was a little intimidating to teach middle school students for the first time, because they usually look to the teacher as the primary source of knowledge. We have really great students in our school, and middle school is often the time where they’re seeking a huge amount of knowledge and understanding about themselves and the world around them.
I’ve found that one of the most important things I can do as a teacher is to show them that I don’t know everything. Then, I can guide them through the process of acquiring new information and applying it to the problem they’re trying to solve or the program they’re trying to create. I have to thank Kelly for helping me understand the importance of this approach so quickly as a new teacher.
Ricky: I think it’s fair to say that not all of your students are going to end up as software engineers or similar in the future. What benefits have your students gained in learning something like Python programming and completing the projects set?
Kelly: I think it’s fair to say that most computer science teachers do not expect their students to become software engineers, nor do we seek out that goal for them. What I’ve learned through my own process of learning is that “learning how to code” is so much more than developing a cool app, or another version of a “Guess the Number” game.
I’ve learned so much about myself and how to solve problems that I knew nothing about or had no background knowledge about, or even a reference to start from. However, I’ve developed skills that help me build my confidence, improve my research skills, allow me to read content where I know less than 80% of the vocabulary, and persevere in solving a problem that has multiple solutions.
I want my students to have the same experience. I want to build their confidence and let them understand that getting an “A” on a test is great, but being able to solve a problem, to think critically about the implications and results, and to have the dedication to face the unknown is more important than getting an “A” or being a “coder.” We really hope to develop lifelong learners who are eager to take on any challenge.
Sean: I often tell the students that we’re lucky to be coding in Python because it’s such a great language for beginners, and it also grows with you to solve the problems at hand.
I think it’s fair to say that the least important thing we’re teaching right now is the language, syntax, and vocabulary of Python. What we’re really teaching is research, problem solving, persistence, dealing with setbacks and failure, and how to develop true competence in something. These traits and skills are durable across many different disciplines, not just computer science.
To echo Kelly, only a small fraction of our students are going to pursue a traditional computer science education, but all of them are going to need to think through and solve problems, learn and master topics, and develop true competency in their chosen fields. Our wager is that knowing how to solve problems through code and technology will serve them well in the career paths of the 21st century.
Ricky: Now, for my last few questions. What else do you get up to in your spare time? What other hobbies and interests do you have, aside from teaching Python and coding?
Kelly: Between teaching, learning how to code better, and recording Teaching Python, I don’t do too much else! I love spending time with my two young boys and enjoying the South Florida life. We like swimming, going to the beach, fishing, and playing sports—really, anything outdoors. However, I really want to write a book one day and have started the process, but it’s hard to get it going with the time I have leftover in the day.
I also want to get to a point in my coding where I can make something really useful that helps teachers get a better understanding of their students’ academic, emotional, and social progress in school. Both of these latter goals are “near” future hopes and dreams that I try to keep within my grasp.
Sean: If I’m not teaching Python or writing code, then you can usually find me playing with my kids, consulting with a few marketing clients, or finding ways to make my house smarter. I also try to stay healthy by distance running and kickboxing at least a few mornings a week before school.
We’re blessed in South Florida with warm weather year-round, so you may also see me out fishing in the canals and lakes, flying my drone, or experimenting with photography. Sometimes, I even get to play video games or work on side projects, like Pandas-based data science analysis of CRM systems for my clients.
Thank you, Kelly and Sean, for joining me for this interview! It’s been great hearing from you both.
You can check out the Teaching Python podcast on their website, or by searching for it in your favorite podcast player. You can also follow Kelly and Sean on Twitter. As always, if there’s someone you’d like me to interview in the future, then leave a comment down below or send me a message on Twitter.