Episode 48: What We Are Using in 2020 To Teach Python

Teaching Python - A podcast by Sean Tibor and Kelly Paredes

Categories:

Let’s take a look at the tools we’re using in our classroom for the 2020-2021 school year to teach Python for middle school students. From IDEs to flash cards, coding challenges to Colab notebooks, and micro:bits to eBooks, we’ll look at what we’re currently using and how each one contributes to the learning experience of our students. Episode Outline Importance of variety in Lessons Motivation Increase Focus/Keeps classroom live and Active Combat Boredom/Avoids dullness Demonstrating concepts in multiple settings reinforces learning Importance of Lesson Planning Basic Objectives Activities Assessments Time Management Result- oriented Creating Environments for learning:Good Teaching Tools for SEL/21st Century Skills Delivery and sharing of resources LMS Weekly Overview Screenshots Sharing of Colab documents SEL Core Competencies: Self Awareness, Self Management, Social Awareness, Relationship SKills, Responsible decision making. Padlet- reflection and sharing ideas? Focusing Tools: Strick Workflow : block specific sites for 25 minutes by a click of a chrome extension Self Learning Opportunities: “Curiosity is the main driver of learning.” Teaching Techniques/Communication Tools Looking at a lot of code: Screenshare (Currently feature in Zoom) - allow students to share their code and have students look for errors on other student codes/Air server/Cast Use of Videos: Loom/Screencastify- give students short videos that they can use on their own time. Use of Class Time: Time to Talk it out (Think alouds) - give students time to talk about code verbally Pre-Teaching Vocabulary Pause, Ask Questions, Pause, Review Class Challenges Share the tools and how we use them IDE’s (details in episode 25) Mu Editor Great IDE for beginners and comes packaged with Python Works for pure Python, hardware, web development, games Intentionally limited to encourage students to move beyond In 2020: Kelly & Sean use it for programming micro:bits with sixth grade Best Audience: complete newbies to Python, hardware hackers Available for Mac, Windows, Linux Colab - Jupyter Notebooks in Google Apps system Pure Python with visualizations, graphing, etc. In 2020: Kelly & Sean use it for Python review sheet & quick demos Showing iterations/versions of code without Git Includes sharing/commenting features of Google Drive Best audience: newbies already familiar with Google Docs, more accomplished programmers that want to practice concepts without writing full “software” Repl.it Web-based coding environment for Python Multiplayer mode, assignment submissions with automated testing Classroom environment works well for adult learners In 2020: Kelly & Sean use it for student projects, especially those that run 3rd party packages Best audience: students that want to live code with others and share programs easily with teacher or peers Advance coding Options Used for differentiation with students or advanced applications like EV3 coding We use these ourselves to write software for school use Goal is to have 8th graders ready for these environments Options Visualization Tools Python tutor Python Turtle Mu Debugger Class Challenges versus Codechalleng.es Manipulatives: Robots and Hardware Microbits CircuitPython devices DFRobot Maqueen Plus Support Teaching PythonLinks:Code With Mu — Code with Mu: a simple Python editor for beginner programmers.Welcome To Colaboratory - Colaboratory — Colaboratory, or "Colab" for short, allows you to write and execute Python in your browser, with Zero configuration required Free access to GPUs Easy sharingRepl.it - The collaborative browser based IDE — Use our free, collaborative, in-browser IDE to code in 50+ languages — without spending a second on setup.Visual Studio Code - Code Editing. Redefined — Code editing. Redefined. Free. Built on open source. Runs everywherePyCharm Edu — A Professional Tool to Learn and Teach Programming with PythonPython Tutor - Visualize Python, Java, C, C++, JavaScript, TypeScript, and Ruby code execution — Python Tutor helps people overcome a fundamental barrier to learning programming: understanding what happens as the computer runs each line of code. You can use it to write Python, Java, C, C++, JavaScript, and Ruby code in your web browser and see its execution visualized step by step.