Episode 157: Discussing Mojo & Improving Python Object-Oriented Programming
The Real Python Podcast
May 26, 2023 54m
Would you like to speed up your Python machine-learning code dramatically? What if you only had to change a few keywords and add a couple of type hints on portions of your code? This week on the show, Christopher Trudeau is here, bringing another batch of PyCoder’s Weekly articles and projects.
Episode Sponsor:
We discuss a new programming language named Mojo, which is a superset of Python. It aims to fix Python’s performance and deployment problems. The project has many interesting ideas and a leader who has helped to shape modern compiler technology.
We also share a pair of Real Python tutorials from Leodanis Pozo Ramos about object-oriented programming in Python. The first one is a deep dive into the creation of classes. It’s an excellent refresher for anyone looking to hone their OOP skills in Python.
The second tutorial covers the SOLID principles, which are five well-established standards for improving your object-oriented design. These principles guide you to create object-oriented code that is more maintainable, extensible, scalable, and testable.
We cover several other articles and projects from the Python community, including a news update, showing warnings when running Django, tracking the progress of your Python program, and a Markdown browser for your terminal.
This week’s episode is brought to you by Koyeb.
Course Spotlight: Using k-Nearest Neighbors (kNN) in Python
In this video course, you’ll learn all about the k-nearest neighbors (kNN) algorithm in Python, including how to implement kNN from scratch. Once you understand how kNN works, you’ll use scikit-learn to facilitate your coding process.
Topics:
- 00:00:00 – Introduction
- 00:02:39 – PEP 713: Callable Modules
- 00:04:22 – PEP 712: “Converter” Parameter for
dataclasses.field
- 00:06:49 – Python Classes: The Power of Object-Oriented Programming
- 00:16:44 – Sponsor: Koyeb
- 00:17:33 – SOLID Principles: Improve Object-Oriented Design in Python
- 00:22:00 – Mojo, a Superset of Python
- 00:34:31 – Mojo might be the biggest thing to happen in programming for decades
- 00:41:48 – Mojo – a new programming language for AI developers
- 00:44:03 – Video Course Spotlight
- 00:45:23 – Have Python Show Warnings When Running Django
- 00:47:52 – TQDM: Tracking the Progress of Your Python Program
- 00:50:34 – frogmouth: A Markdown Browser for Your Terminal
- 00:53:59 – Thanks and goodbye
News:
Show Links:
- Python Classes: The Power of Object-Oriented Programming – In this tutorial, you’ll learn how to create and use full-featured classes in your Python code. Classes provide a great way to solve complex programming problems by approaching them through models that represent real-world objects.
- SOLID Principles: Improve Object-Oriented Design in Python – In this tutorial, 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.
- Mojo, a Superset of Python – Mojo is a new programming language, which is a superset of Python. It aims to fix Python’s performance and deployment problems.
- Have Python Show Warnings When Running Django – How to show warnings when running Python, and Django, during local development. The easy, yet not well-known, way.
Discussion:
- Mojo might be the biggest thing to happen in programming for decades - Hacker News
- Mojo, a new programming language for AI developers - Hacker News
Projects:
Additional Links:
- Video - tqdm documentation
- tqdm documentation
- pipx
- Episode #101: Tools for Setting Up Python on a New Machine – The Real Python Podcast