
Computational Thinking & Learning Python During an AI Revolution
11/17/23 • 54 min
1 Listener
Has the current growth of artificial intelligence (AI) systems made you wonder what the future holds for Python developers? What are the hidden benefits of learning to program in Python and practicing computational thinking? This week on the show, we speak with author Lawrence Gray about his upcoming book “Mastering Python: A Problem Solving Approach.”
Lawrence shares how learning Python helped him through a dark and trying time. He developed lifelong skills that he wants to pass along through teaching and authoring a book.
We discuss what you can do to prepare for a future where coding jobs are automated through AI. He shares ways that Python can help build the higher-order thinking skills required by future careers. We also talk about how Python can help with computational thinking and promote cognitive development.
This week’s episode is brought to you by Site24x7.
Course Spotlight: Looping With Python enumerate()
Once you learn about for loops in Python, you know that using an index to access items in a sequence isn’t very Pythonic. So what do you do when you need that index value? In this course, you’ll learn all about Python’s built-in enumerate(), where it’s used, and how you can emulate its behavior.
Topics:
- 00:00:00 – Introduction
- 00:02:29 – Learning Python and changing how you think
- 00:05:07 – What is the goal of the book?
- 00:05:59 – Discovering Python during a dark period
- 00:10:32 – What is unique to Python that helped you?
- 00:12:43 – How did you start teaching Python?
- 00:14:40 – Teaching Python to art students
- 00:18:52 – Sponsor: Site24x7.com
- 00:19:48 – Why write about computational thinking?
- 00:21:55 – Why learn Python now?
- 00:25:18 – Multiple modalities for Python
- 00:29:32 – Other optimistic thoughts on the future
- 00:34:15 – Reskilling a workforce
- 00:37:16 – What skills can be developed?
- 00:41:13 – Video Course Spotlight
- 00:42:40 – Bloom’s taxonomy
- 00:48:00 – Sharing the positive impact of Python
- 00:50:26 – What are you excited about in the world of Python?
- 00:51:32 – What do you want to learn next?
- 00:52:45 – How can people follow your work online?
- 00:52:47 – Thanks and goodbye
Show Links:
- The Future of Jobs Report 2023 - World Economic Forum
- Mastering Python: Get Access to Chapter 1
- Computational thinking - Wikipedia
- Bloom’s taxonomy - Wikipedia
- Probably Overthinking It – Data science, Bayesian Statistics, and other ideas
- scikit-learn: machine learning in Python - documentation
- Yellowbrick: Machine Learning Visualization - documentation
- PyCon US 2024 - PyCon US 2024
- Education Summit - PyCon US 2023
- PyTorch - Get Started
- Lawrence Gray Personal Site
Level up your Python skills with our expert-led courses:
Has the current growth of artificial intelligence (AI) systems made you wonder what the future holds for Python developers? What are the hidden benefits of learning to program in Python and practicing computational thinking? This week on the show, we speak with author Lawrence Gray about his upcoming book “Mastering Python: A Problem Solving Approach.”
Lawrence shares how learning Python helped him through a dark and trying time. He developed lifelong skills that he wants to pass along through teaching and authoring a book.
We discuss what you can do to prepare for a future where coding jobs are automated through AI. He shares ways that Python can help build the higher-order thinking skills required by future careers. We also talk about how Python can help with computational thinking and promote cognitive development.
This week’s episode is brought to you by Site24x7.
Course Spotlight: Looping With Python enumerate()
Once you learn about for loops in Python, you know that using an index to access items in a sequence isn’t very Pythonic. So what do you do when you need that index value? In this course, you’ll learn all about Python’s built-in enumerate(), where it’s used, and how you can emulate its behavior.
Topics:
- 00:00:00 – Introduction
- 00:02:29 – Learning Python and changing how you think
- 00:05:07 – What is the goal of the book?
- 00:05:59 – Discovering Python during a dark period
- 00:10:32 – What is unique to Python that helped you?
- 00:12:43 – How did you start teaching Python?
- 00:14:40 – Teaching Python to art students
- 00:18:52 – Sponsor: Site24x7.com
- 00:19:48 – Why write about computational thinking?
- 00:21:55 – Why learn Python now?
- 00:25:18 – Multiple modalities for Python
- 00:29:32 – Other optimistic thoughts on the future
- 00:34:15 – Reskilling a workforce
- 00:37:16 – What skills can be developed?
- 00:41:13 – Video Course Spotlight
- 00:42:40 – Bloom’s taxonomy
- 00:48:00 – Sharing the positive impact of Python
- 00:50:26 – What are you excited about in the world of Python?
- 00:51:32 – What do you want to learn next?
- 00:52:45 – How can people follow your work online?
- 00:52:47 – Thanks and goodbye
Show Links:
- The Future of Jobs Report 2023 - World Economic Forum
- Mastering Python: Get Access to Chapter 1
- Computational thinking - Wikipedia
- Bloom’s taxonomy - Wikipedia
- Probably Overthinking It – Data science, Bayesian Statistics, and other ideas
- scikit-learn: machine learning in Python - documentation
- Yellowbrick: Machine Learning Visualization - documentation
- PyCon US 2024 - PyCon US 2024
- Education Summit - PyCon US 2023
- PyTorch - Get Started
- Lawrence Gray Personal Site
Level up your Python skills with our expert-led courses:
Previous Episode

Studying Python Software Architecture & Creating Lambda Expressions
Have you moved through the fundamentals of Python, and are you now considering building a more extensive project or complete application? Where can you study the architecture of existing Python projects and learn best practices? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects.
We discuss a set of resources that developers can study to learn how to structure projects. The collection was shared in a blog post titled “Great Resources a Beginner Might Not Find So Easily.” It includes a pair of books on the architecture of large software applications and another aimed at more modest projects.
We consider when you should use lambda expressions in your Python code. These one-line expressions create anonymous functions. How do they differ from standard functions, and where is it appropriate to use them?
We also share several other articles and projects from the Python community, including a couple of release announcements, an explanation of Python as a compiled language, a discussion covering the controversy about the recent Flask release, a project for writing less Selenium code, and a project to create ASCII art with Python.
This week’s episode is brought to you by Site24x7.
Course Spotlight: Design and Guidance: Object-Oriented Programming in Python
In this video course, you’ll learn about the SOLID principles, which are five well-established standards for improving your object-oriented design in Python. By applying these principles, you can create object-oriented code that is more maintainable, extensible, scalable, and testable.
Topics:
- 00:00:00 – Introduction
- 00:02:50 – PyCon US 2024 Call for Proposals
- 00:03:18 – Django 5.0 Beta 1 Released
- 00:03:29 – Django security releases issued: 4.2.7, 4.1.13, and 3.2.23
- 00:03:51 – The Ruff Formatter: Python’s Fastest Formatter
- 00:04:50 – What Are Lambda Expressions?
- 00:12:01 – Sponsor: Site24x7.com
- 00:12:56 – Python Is a Compiled Language
- 00:16:01 – Great Resources a Beginner Might Not Find So Easily
- 00:27:01 – Video Course Spotlight
- 00:28:32 – We Have to Talk About Flask
- 00:41:46 – selenium-python-helium: Write Less Selenium Code
- 00:45:23 – pyfiglet: An implementation of figlet written in Python
- 00:47:17 – Thanks and goodbye
News:
- PyCon US 2024 Call for Proposals
- Django 5.0 Beta 1 Released
- Django security releases issued: 4.2.7, 4.1.13, and 3.2.23 | Weblog | Django
- The Ruff Formatter: Python’s Fastest Formatter – You may have come across Ruff, a linter that’s been on the scene for about a year. Well, it recently added formatting to its features. This article shows you how, including the configuration option to allow single-quote style.
Show Links:
- What Are Lambda Expressions? – This post teaches you what lambda expressions are and how they get used in Python. It shows several examples and also covers when to avoid lambda expressions.
- Python Is a Compiled Language – Python is interpreted, but it interprets compiled code. This distinction can be confusing to students, and this instructor does a deep dive on where the line between the concepts sits.
- Great Resources a Beginner Might Not Find So Easily – Are you having trouble making the modules work together in a larger project? Have you tried looking at popular projects as models, but did their size and scope put you off? Did you find it hard to see why they did what they did? Resources about this do exist, but they’re scattered all over...unless you know where to look.
- We Have to Talk About Flask – The most recent release of Flask and Werkzeug have introduced backward incompatible changes that are affecting popular add-ons. Miguel writes about how this is a common occurrence and why it keeps happening.
Discussion:
Next Episode

Building a Python JSON Parser & Discussing Ideas for PEPs
Have you thought of a way to improve the Python language? How do you share your idea with core developers and start a discussion in the Python community? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects.
We consider a couple of Python syntax and functional ideas posted to the discussions on python.org. The first idea is for simplifying the syntax of a function’s keyword arguments, and the second is for the ability to return a NamedTuple from a function. The threads reveal steps within the Python Enhancement Proposal (PEP) process and the goal of finding a sponsor.
Christopher covers a tutorial on building a JSON-like parser in Python. The project is a solid place to start if you want to learn about parsing and developing rules for recognizing syntax and extracting data.
We also share several other articles and projects from the Python community, including a couple of release announcements and news items, a step-by-step guide to building a hangman game for the command line in Python, the reasons why the Django admin is supposedly ugly and ways to customize it to differentiate admin environments, an explanation of confusing git terminology, a project to extract links from a remote HTML resource, and a regex crossword game.
Course Spotlight: Advent of Code: Solving Puzzles With Python
Advent of Code is an online advent calendar that shares new programming puzzles each day from December 1 to the 25. In this Code Conversation, you’ll learn why solving programming puzzles can be beneficial and how you can get started with Advent of Code using Python.
Topics:
- 00:00:00 – Introduction
- 00:02:46 – PyPI has completed its first security audit
- 00:03:55 – Python Developers Survey 2023
- 00:04:45 – Wagtail 5.2 (LTS) Released
- 00:05:02 – How many Python core devs use typing?
- 00:07:51 – Build a Hangman Game for the Command Line in Python
- 00:17:30 – Why Is the Django Admin “Ugly”?
- 00:20:37 – Customize the Django Admin to Differentiate Environments
- 00:22:48 – Confusing git Terminology
- 00:30:01 – Video Course Spotlight
- 00:31:31 – Let’s Make a Silly JSON-like Parser
- 00:34:31 – Idea: Return a NamedTuple
- 00:45:08 – Idea: Syntactic Sugar to Encourage Use of Named Arguments
- 00:50:31 – grablinks: Extract Links From a Remote HTML Resource
- 00:52:43 – Regex Crossword
- 00:55:46 – Thanks and goodbye
News:
- PyPI has completed its first security audit - The Python Package Index
- Python Developers Survey 2023
- Wagtail 5.2 (LTS) Released
- How many Python core devs use typing? - Gram Publishing v2
Show Links:
- Build a Hangman Game for the Command Line in Python – In this step-by-step project, you’ll learn how to write the game of hangman in Python for the command line. You’ll learn how to structure the game as a text-based interface (TUI) application.
- Why Is the Django Admin “Ugly”? – When Vince was talking with people at DjangoCon US, one question kept coming up: Why is the Django admin so “ugly”?
- Customize the Django Admin to Differentiate Environments – A quick post about changing the color scheme of the Django admin depending on what environment the code is deployed within. Although Django specific, this is a great idea—visually reminding your admins and developers whether they’re in dev, staging, or production.
- Confusing git Terminology – Julia is working on a doc that explains git and, in doing so, polled some people about what git terminology they found confusing. This post covers the most common responses and attempts to clear up the confusion.
- Let’s Make a Silly JSON-like Parser – This article goes into deep detail on how you would construct a JSON parser in Python. If you’re new to parsing, then this is a great place to start.
Discussion:
If you like this episode you’ll love

The Why And The What – Product Management Podcast

CodeWinds - Leading edge web developer news and training | javascript / React.js / Node.js / HTML5 / web development - Jeff Barczewski

The Edtech Podcast

The Art of LiveOps

Joomla Beat Podcast | Web design, development, online marketing, social media & website management
Episode Comments
Featured in these lists
Generate a badge
Get a badge for your website that links back to this episode
<a href="https://goodpods.com/podcasts/the-real-python-podcast-186798/computational-thinking-and-learning-python-during-an-ai-revolution-37085443"> <img src="https://storage.googleapis.com/goodpods-images-bucket/badges/generic-badge-1.svg" alt="listen to computational thinking & learning python during an ai revolution on goodpods" style="width: 225px" /> </a>
Copy