

Teaching Python
Sean Tibor and Kelly Paredes
Welcome to "Teaching Python Podcast,” the go-to podcast for anyone interested in the intersection of education and coding. Hosted by Kelly Paredes and Sean Tibor, this podcast dives into the thrills and challenges of teaching middle school computer science through the engaging and versatile Python programming language.
About the Hosts:
Kelly Paredes brings a wealth of global experience in curriculum design and currently inspires sixth and eighth graders at Pine Crest School in Fort Lauderdale, Florida. Celebrating her seventh year of integrating Python into her teaching, Kelly has a knack for making complex concepts accessible and exciting.
Sean Tibor, a Senior Cloud Engineer at Mondelez International, draws from a rich background that spans marketing, database design, and digital agency leadership. Having taught Python to seventh and eighth graders at Pine Crest School, Sean now extends his expertise by supporting interns and tutoring students in Python.
Explore with Us:
* Engaging Lessons: Discover how we make Python programming both fun and accessible for young learners, equipping them with the skills to tackle real-world problems.
* Classroom Insights: Experience our journey through both triumphs and trials in the classroom, and learn what it takes to foster a vibrant learning environment.
* Expert Interviews: Gain valuable perspectives from interviews with fellow educators and industry experts, who share their top strategies and success stories in coding education.
About the Hosts:
Kelly Paredes brings a wealth of global experience in curriculum design and currently inspires sixth and eighth graders at Pine Crest School in Fort Lauderdale, Florida. Celebrating her seventh year of integrating Python into her teaching, Kelly has a knack for making complex concepts accessible and exciting.
Sean Tibor, a Senior Cloud Engineer at Mondelez International, draws from a rich background that spans marketing, database design, and digital agency leadership. Having taught Python to seventh and eighth graders at Pine Crest School, Sean now extends his expertise by supporting interns and tutoring students in Python.
Explore with Us:
* Engaging Lessons: Discover how we make Python programming both fun and accessible for young learners, equipping them with the skills to tackle real-world problems.
* Classroom Insights: Experience our journey through both triumphs and trials in the classroom, and learn what it takes to foster a vibrant learning environment.
* Expert Interviews: Gain valuable perspectives from interviews with fellow educators and industry experts, who share their top strategies and success stories in coding education.
Episodes
Mentioned books

Feb 14, 2019 • 31min
Episode 11: Signs of True Learning
How do you know your students are really learning in Computer Science? In this episode, Sean and Kelly dig into developing the learner-centered classroom and some of the pedagogical philosophy of how to look for learning in your teaching. Support Teaching PythonLinks:Visible ThinkingMiddle years | 11 to 16 | International Baccalaureate® - International Baccalaureate®Learn Better: Mastering the Skills for Success in Life, Business, and School, or, How to Become an Expert in Just About Anything: Ulrich Boser, Tom Parks: 9781543602210: Amazon.com: Books — For centuries, experts have argued that learning was about memorizing information: You're supposed to study facts, dates, and details, burn them into your memory, and then apply that knowledge at opportune times. But this approach to learning isn’t nearly enough for the world that we live in today, and in Learn Better journalist and education researcher Ulrich Boser demonstrates that how we learn can matter just as much as what we learn.Welcome | Barbara OakleySean and Kelly’s Genetics Repo

Feb 4, 2019 • 38min
Episode 10: Teaching with Python Turtle
This week, we're discussing how to use a very old programming tool to teach modern concepts. That's right, it's the return of the Turtle tool! Kelly and Sean will explore why this Python 2-era library based on a 53-year old concept still works so well to teach fundamental programming concepts.
Want to learn how we use Turtle in the classroom? Kelly and Sean will go through our best practices, preferred starting points, helpful resources we've used, and desired outcomes for this tool.Support Teaching PythonLinks:MarineLab: Marine Science Education in the Florida Keys — MarineLab is the education arm of Marine Resources Development Foundation (MRDF), a 501(c)3 organization founded in 1970 in the US Virgin Islands. After years of conducting research and developing underwater research stations and the technology for living and working in the sea, MRDF's founder Ian Koblick turned his eyes towards Florida and expanding MRDF's activities to include education.Math Adventures with Python: An Illustrated Guide to Exploring Math with Code, Peter Farrell, eBook - Amazon.com — Math Adventures with Python will show you how to harness the power of programming to keep math relevant and fun. With the aid of the Python programming language, you'll learn how to visualize solutions to a range of math problems as you use code to explore key mathematical concepts like algebra, trigonometry, matrices, and cellular automata.
Turtle section starts on Page 3 and evolves into Processing, a program for visualization that can leverage Python.Amazon.com: Teach Your Kids to Code: A Parent-Friendly Guide to Python Programming (9781593276140): Bryson Payne: Books — Computer programming, or coding, is a crucial skill every child should be learning. From 3D printers, to mobile apps, to robots, to drones that deliver pizza, the world around us relies on code more than ever before. Coders get to solve problems and do interesting, fulfilling work, and the time to start learning to code is now!Python for Kids: A Playful Introduction To Programming: Jason R. Briggs: 9781593274078: Amazon.com: Books — Python for Kids brings Python to life and brings you (and your parents) into the world of programming. The ever-patient Jason R. Briggs will guide you through the basics as you experiment with unique (and often hilarious) example programs that feature ravenous monsters, secret agents, thieving ravens, and more.Grok Learning | Learn to code from your browser — Learn Python through self-paced lessons2D Shapes using Python Turtle | 101 Computing3. Hello, little turtles! — How to Think Like a Computer Scientist: Learning with PythonCode! .. Draw! .. Stitch! / TurtleStitch - Coded Embroidery — not python but Snap! is a visual, drag-and-drop programming language that allows students to create interactive stories, animations, games, and more, while learning about mathematical and computational ideas. Snap! was inspired by Scratch, but also targets both novice and more advanced students by including and expanding Scratch's features.

Jan 29, 2019 • 1h 1min
Episode 9: Python For Future Engineers
This week, we're joined by Peter Kazarinoff, Professor of Engineering and Engineering Technology at Portland Community College to discuss how adult learners can learn Python, the use of Jupyter notebooks as teaching tools, and some of the common goals of learners of diverse ages, backgrounds, and education levels.
Joined by your usual co-hosts, Kelly and Sean, we explore some of the different approaches needed for adult learners, the common traits needed for successful students of all ages, the materials that we've found most useful for teaching and learning, and some best practices for sequencing course material.Special Guest: Peter Kazarinoff.Support Teaching PythonLinks:Peter D. Kazarinoff (@pkazarinoff) | Twitter — Peter's Twitter profilePython for Undergraduate Engineers — If you're learning Python as an engineering student, you should probably follow this blog.Problem Solving with Python — Peter's book, available for free online.Problem Solving with Python 3.6 Edition: A beginner's guide to Python & open-source programming tools: Peter D. Kazarinoff: 9781793814043: Amazon.com: Books — Peter's book on Amazon (support the author!)Ana Bell | Get Programming

Jan 21, 2019 • 37min
Episode 8: Persistence in Python
Persistence is defined as the ability to stick with something. In the educational world it is often used interchangeably with the phrases: Sticktoitiveness, grit or perseverance.
In this episode, we will discuss how to develop persistence in programming for all learners. Whether your students already have an innate ability to stick with coding or if you are hoping to instill the “desire” in your students, Sean and Kelly will examine ways that they develop persistence in programming in their classrooms.
Note: In this episode, Kelly mixed up Sylvia Duckworth, the creator of Sketchnotes, with Angela Duckworth, the author of Grit. We've linked both of their books below for you, since they're both great reads.Support Teaching PythonLinks:Why Learning to Code is So Damn Hard — Read more about the Cliff of Confusion that Kelly referenced in our episode.Teaching Kids to Debug Code Independently | EdSurge News — From EdSurge: approaches and best practices for teaching debugging and, by extension, persistence.Self-Reflection Tool Sheet — A worksheet of prompts for eliciting better self-reflection.Grit by Angela Duckworth — In her instant, multi-month New York Times bestseller, Angela Duckworth shows anyone striving to succeed that the secret to outstanding achievement is not talent, but a special blend of passion and persistence she calls “grit.” “Inspiration for non-geniuses everywhere” (People).Sketchnote for Educators — Sylvia Duckworth is a Canadian teacher whose sketchnotes have taken social media by storm. Her drawings provide clarity and provoke dialogue on many topics related to education. This book contains 100 of her most popular sketchnotes with links to the original downloads that can be used in class or shared with colleagues. Interspersed throughout the book are Sylvia's reflections on each drawing and what motivated her to create them, in addition to commentary from other educators who inspired the sketchnotes. How to Sketchnote — Educator and internationally known sketchnoter Sylvia Duckworth makes ideas memorable and shareable with her simple yet powerful drawings. In How to Sketchnote, she explains how you can use sketchnoting in the classroom and that you don’t have to be an artist to discover the benefits of doodling!

Jan 15, 2019 • 43min
Episode 7: Teaching with the BBC micro:bit
In this week's episode, Kelly and Sean discuss one of the tools that we like to use in class: the BBC micro:bit. Thanks to the instant feedback and physical/tactile nature of the device, this inexpensive little IoT device makes the process of learning Python more intuitive for students. It's also an easy starting point for those teachers who are new to coding.
There are many advantages to using a physical computing device in a school setting and we will walk you through a quick introduction to the micro:bit and our preferred sequence of lessons with Python on this platform. We will also talk about some add-ons that can extend the capabilities of this remarkable little device to allow your students flexibility and creativity with their newfound skills.
As with any teaching tool, there are always some best practices to consider to maximise learning and positively impact your students. Kelly and Sean will touch on some tips and tricks to use in your classroom.Support Teaching PythonLinks:Code With Mu — A simple Python editor for beginner programmers. Works with the micro:bit directly.From Flowcharts to Python Code | 101 Computing — Kelly's favorite resource for turning flowcharts into Python code.Microsoft MakeCode for micro:bit — The other primary coding platform for the micro:bitThe EduBlocks Project — A block-based coding platform using Python for the micro:bitAdafruit CRICKIT for micro:bit ID: 3928 - $29.95 : Adafruit Industries, Unique & fun DIY electronics and kits — The Adafruit platform to extend your micro:bitElecFreaks Micro:bit Breakout Board ( Octopus:bit) - ElecFreaks — A breakout board for the micro:bit that gives you more GPIO to play with.Amazon.com: Yahboom Robot Kit for Micro:bit Robotics STEM Kits for Kids to Programmable BBC Microbit Robots Toy Car with Tutorial Tracking Bluetooth IR Modules DIY Scientific Education (Without Micro:bit Board): Toys & Games — A micro:bit-based robot kit. Warning - software provided is mixed English and Chines language. Can be difficult to understand.Amazon.com: Adafruit NeoPixel Digital RGB LED Weatherproof Strip 60 LED-1m: Home Improvement — RGB lights that work with the micro:bit to create MILLIONS of colors.enviro:bit – Pimoroni — Air and weather, color, light, and sound sensors. Plugs right into the micro:bit.Includes micro:bit MINI.MU Glove Kit – Pimoroni — Adorable micro:bit gloves with speaker and more.

Jan 10, 2019 • 37min
Episode 6: Gaining a Deeper Understanding of Python With Coding Challenges
Kelly and Sean are back this in this week's episode to talk about the role of coding challenges for student understanding. Coding challenges are teacher-defined coding problems that students tackle individually or in groups with more than one possible solution. The advantages of these challenges compared to passive learning include deeper retention of skills and knowledge, opportunities for social and emotional education, and increased student confidence through subject mastery.
What are coding challenges?
Coding challenges are teacher-defined coding problems that students tackle individually or in groups with more than one possible solution. Challenges are time-bound, i.e. they must be solved within a set period of time and range in complexity from simple code snippets to complete programs.
For example:
A 5-minute challenge to add comments to existing code
A 3-day challenge to create a game in Python
A standing challenge to solve a complex math problem by the end of the course
Support Teaching PythonLinks:Simple Programming Problems — This page is a collection of progressively more difficult exercises that are suitable for people who just started learning. It will be extended as I come up with new exercises. Except for the GUI questions, exercises are generally algorithmic and should be solvable without learning any libraries. The difficulty of the exercises of course somewhat depends on the programming language you use. The List exercises for example are more complicated in languages like C that don’t have build-in support for lists.Coding Games and Programming Challenges to Code Better — Coding games to improve your programming skills.The 10 Best Coding Challenge Websites for 2018 – Coderbyte – Medium4 Things Transformational Teachers Do | Edutopiaseantibor/microbit-compass: A digital compass using the BBC micro:bit and a laser-cut compass rose — Repository for the 6th grade Microbit Compass ChallengeChapter 3: Guess the Number — The guess the number challenge inspiration.

Dec 31, 2018 • 29min
Episode 5: Building Resilience
This week, co-hosts Kelly Schuster-Paredes and Sean Tibor talk about their preferred methods for building student resilience while learning Python.
Every learner reaches a point where they may get frustrated, discouraged, or want to give up. How can you help them get past that moment and rebuild momentum? How do you recognize those moments? What can you do as a coach and mentor to help them? What activities help prevent those moments from happening?Support Teaching PythonLinks:Talk Python Episode 184: Teaching Python with BBC micro:bitJames Charles on YouTube

Dec 24, 2018 • 31min
Episode 4: Top Python Books For Teachers
This week, Kelly and Sean review their top Python books for teachers. They cover everything from classics like Automate the Boring Stuff with Python and Invent Your Own Computer Games to the newest books like Impractical Python Projects and Coffee Break Python. If you're looking for a good book for your winter break, there's bound to be one that will suit you here. Brew up a nice cup of tea or coffee and take a paper-based break this week.
Your co-hosts this week are middle school computer science teachers Kelly Schuster-Paredes and Sean Tibor. Kelly is an experienced international teacher who's learning coding and Python for the first time. Sean is a technology professional that's teaching middle school for the first time. Each week, they explore resources, approaches, and best practices for teaching Python to beginner students.Support Teaching PythonLinks:Automate the Boring Stuff with Python: Practical Programming for Total Beginners — If you’ve ever spent hours renaming files or updating hundreds of spreadsheet cells, you know how tedious tasks like these can be. But what if you could have your computer do them for you?
In Automate the Boring Stuff with Python, you’ll learn how to use Python to write programs that do in minutes what would take you hours to do by hand—no prior programming experience required. Once you’ve mastered the basics of programming, you’ll create Python programs that effortlessly perform useful and impressive feats of automation.Coding Projects in Python — Using fun graphics and easy-to-follow instructions, this straightforward, this visual guide shows young learners how to build their own computer projects using Python, an easy yet powerful free programming language available for download.Coffee Break Python: 50 Workouts to Kickstart Your Rapid Code Understanding in Python — Coffee Break Python is a new step-by-step system to teach you how to learn Python faster, smarter, and better. You do nothing but solving one practical Python puzzle as you enjoy your morning coffee.Doing Math with Python: Use Programming to Explore Algebra, Statistics, Calculus, and More! — Doing Math with Python shows you how to use Python to delve into high school–level math topics like statistics, geometry, probability, and calculus. You’ll start with simple projects, like a factoring program and a quadratic-equation solver, and then create more complex projects once you’ve gotten the hang of things.Impractical Python Projects: Playful Programming Activities to Make You Smarter — Impractical Python Projects is a collection of fun and educational projects designed to entertain programmers while enhancing their Python skills. It picks up where the complete beginner books leave off, expanding on existing concepts and introducing new tools that you'll use every day. And to keep things interesting, each project includes a zany twist featuring historical incidents, pop culture references, and literary allusions.Invent Your Own Computer Games with Python, 4E — Invent Your Own Computer Games with Python will teach you how to make computer games using the popular Python programming language—even if you’ve never programmed before!
Begin by building classic games like Hangman, Guess the Number, and Tic-Tac-Toe, and then work your way up to more advanced games, like a text-based treasure hunting game and an animated collision-dodging game with sound effects. Along the way, you’ll learn key programming and math concepts that will help you take your game programming to the next level.Kaggle Pandas Tutorial — Pandas - Short hands-on challenges to perfect your data manipulation skills.Programming the BBC micro:bit: Getting Started with MicroPython — This easy-to-follow guide shows, step-by-step, how to quickly get started with programming and creating fun applications on your micro:bit. Written in the straightforward style that Dr. Simon Monk is famous for, Programming the BBC micro:bit: Getting Started with MicroPython begins with basic concepts and gradually progresses to more advanced techniques. You will discover how to use the micro:bit's built-in hardware, use the LED display, accept input from sensors, attach external electronics, and handle wireless communication.Python for Kids: A Playful Introduction To Programming — Python for Kids brings Python to life and brings you (and your parents) into the world of programming. The ever-patient Jason R. Briggs will guide you through the basics as you experiment with unique (and often hilarious) example programs that feature ravenous monsters, secret agents, thieving ravens, and more. New terms are defined; code is colored, dissected, and explained; and quirky, full-color illustrations keep things on the lighter side.Python for Tweens and Teens: Learn Computational And Algorithmic Thinking — Algorithmic Thinking involves more than just learning code. It is a problem solving process that involves learning how to code! This book teaches computational and algorithmic thinking by taking very seriously one thing for granted—that the reader knows absolutely nothing about computer programming!

Dec 17, 2018 • 34min
Episode 3: Anticipating the Click and Flow
We've noticed that many of our students have a moment where everything 'clicks' and they make a leap forward in their knowledge of Python. Kelly and Sean discuss strategies to ensure that this happens, including coding challenges, metacognitive discussion, and formative assessments.
Flow states are another phenomenon that indicates deep learning and knowledge acquisition. We've defined that as a state of increased productivity, focus, and absorption. Support Teaching Python

Dec 10, 2018 • 30min
Episode 2: The First Week of Python
What does the first week of Python look like for new coders? Where do you start? Is it better to jump right in or give them a softer start? We'll talk about everything from what exercises work best, how to get new Python coders started with an IDE like Mu Editor, and more.
In this episode, Kelly and Sean talk about starting the first week of teaching Python. We take a look why we choose to teach Python in our Computer Science Course. We also give a few tips on how we set expectations, establish routine, develop a coding mindset, and choosing the first tool to use in the first week of teaching a computer class.Support Teaching PythonLinks:Mu Editor (the beginner Python IDE)Micro:bit