Python Monthly Newsletter 💻🐍

Andrei Neagoie
Andrei Neagoie
hero image

45th issue! If you missed the previous ones, you can read all the previous issues of my monthly Python newsletter here.

Python Developer Monthly Newsletter - August 2023

If it’s your first time here, welcome, keep reading. If you're a long time reader, welcome back, you can skip to the next section to dive right into this month's newsletter.

Being a Python developer is a fantastic career option. Python is the most popular programming language with lots of growing job demand (especially in the fields of Web, Data Science and Machine Learning). You have many job opportunities, you can work around the world, and you get to solve interesting problems.

One of the hardest parts though? Staying up-to-date with the constantly evolving ecosystem.

You want to be a top-performing python developer, but you don’t have time to select from hundreds of articles, videos and podcasts coming out every day.

That's why I write this every month to help you out.

This is the best Python newsletter for you if you want to keep up-to-date with the industry and keep your skills sharp, without wasting your valuable time.

I curate and share the most important Python articles, news, resources, podcasts and videos of the month.

Think the Pareto Principle (80/20 rule) meeting the Python world. What’s the 20% that will get you 80% of the results?

Let's dive in. Here's what you missed in August 2023 as a Python Developer…

cProfile Trick 👨‍🎨

When trying to improve a slow function or module, it’s always a good idea to profile it.

This article covers profiling a section of code with Python’s cProfile module. Very cool and useful trick to learn.

Python is Quirky 🧞‍♂️

Who doesn't love a quirky programming language? Python fits the bill perfectly... here is a list of Python oddities...I mean "quirks" that we all love and hate.

Python Context Manager 👨‍💼

A context manager is an object that can be used in a with block to sandwich some code between an entrance action and an exit action. It can be a very useful tool in your toolbox.

How can you create your own context manager in Python? Here is how.

GIL Removal 🪠

On July 28, council member Thomas Wouters announced that the council would be accepting PEP 703, though it was "still working on the acceptance details".

The idea would be to introduce the no-GIL version of the Python interpreter in order to give everyone a chance to figure out what pieces are missing, so that they can be filled in before no-GIL becomes the default and, eventually, the only, version of Python.

The time frame for that transition is estimated to be around five years. You can read the full details here: GIL removal and the Faster CPython project

Immortal Objects 🧟‍♂️

Meta Engineering is proposing a new feature with an epic name: Immortal Objects – PEP-683.

Now, objects can bypass reference count checks and live throughout the entire execution of the runtime, unlocking exciting avenues for true parallelism.

Python + Playwright 🎭

A fun tutorial showing you how you can start adding end-to-end tests on a web application using Python and Microsoft’s open source Playwright application.

You will get started with Playwright, add an end-to-end test to help test an existing project that is hosted on GitHub, and automate running it using GitHub Actions.

Python In Excel 🧚‍♂️

The Microsoft team announced this:

"Today, we are excited to introduce the Public Preview of Python in Excel – making it possible to integrate Python and Excel analytics within the same Excel grid for uninterrupted workflow. You can manipulate and explore data in Excel using Python plots and libraries, and then use Excel's formulas, charts and PivotTables to further refine your insights."

Read all about it here.

Should You Use Asyncio? 🥁

A great article with lots of details to give you context. So which async lib to use? Well, probably none of them.

Those tools serve a very niche purpose, and most people don't encounter it very often... find out why here.

Interesting Underground World 🕳

This is a not so fun story of how this author discovered the underground world of credit card network exploitation. JavaScript, Stripe and a few other things allowed them to get to the bottom of it.

WebLLM 📺

You can now play with a Language Learning Model on the web. Everything runs inside the browser with no server support and accelerated with WebGPU. This opens up a lot of fun opportunities to build AI assistants for everyone.

Check this out and try to build something cool with it... and then let me know when you do, maybe I'll feature it in a future edition of the newsletter!

Check it out here.

News Around the World 🗺

  • Everyone this month was talking about LK-99: a new material. Can it float? Can it be a superconductor and thus change the future of computing forever? Unfortunately it was discovered that it cannot be a new superconductor... but it was cool how fast the science world started experimenting with it and analyzing the initial findings.

  • A big attack vector for processors was discovered this month: The Downfall Attack.

Big Tech News 🏢

  • OpenUSD was formed with Pixar, Adobe, Apple, Autodesk, and Nvidia. This comment explains it best:

*"This is a big deal. I used to work at Autodesk, trying to build software that made 3D blueprints available to everyone, everywhere. Rendering things on mobile is hard, in part because you need to writer bespoke renderers, and in part because the data formats for the assets are not aligned.

Pixar developed USD, and it should really help to standardize 3D tech. In particular, I hope that USD can help make it easier to build high-performance rendering tech for a variety of applications that might not receive so much attention from the 3D graphics people (this is one thing video games do quite well, from a CS approach!)"*

  • Firefox and Chrome are squaring off over ad-blocker extensions... since Google funds part of Firefox, it should be interesting to see what happens here. This is a great read.

  • YouTube experiments with AI auto-generated video summaries.

  • OpenAI released GPTBot: OpenAI’s web crawler similar to the Google Web Crawler. According to them, allowing GPTBot to access your site can help AI models become more accurate and improve their general capabilities and safety. If you don't want your website to be crawled, you can read on how to disallow GPTBot from accessing your site. OpenAI also released ChatGPT Enterprise specifically for these large companies that don't want to share their data with OpenAI. Built in privacy. OpenAI is saying "we are not going to train on enterprise's data... anymore".

  • Meta AI releases CoTracker, a model for tracking any points (pixels) on a video... this is very cool.

Completely useless to your career but still great 🙃

  • A.I Town - A MIT-licensed, deployable starter kit for building and customizing your own version of AI town - a virtual town where AI characters live, chat and socialize.

  • Can you clone the Mona Lisa?

Best Resource of the Month 🥽

Have you heard of a Llama? The cute fluffy animal that looks like an Alpaca, but nobody actually knows if it's the same animal or different?

Now, if you capitalize the second 'L', LLama is an AI model designed to predict the next word. You can think of it as a glorified autocomplete... Llama (Large Language Model Meta AI) is a family of large language models (LLM).

It is Meta (Facebook)’s answer to ChatGPT... It's trained with text from the internet and other public datasets. LLama 2 is trained with about 2 trillion words.

Ok, but this is a monthly newsletter for developers. Why should you care?

It's because LLMs are now everywhere and no matter what, if you are in the tech industry, you will encounter them. So the best resource of the month is this: Beginner's Guide to LLama Models.

It will catch you up to speed to what the industry is doing right now so you can speak intelligently about it... or show off to others how smart you are. Up to you.

Bonus: I wrote a blog post this month sharing my thoughts on the never ending emails I get with the question: Will AI Replace Programmers?

Trick of the Month 🎩

wow reaction
  • I haven't tried this yet, but this looks promising: Cody based on this Hackernews user comment:

I have been using Cody in VSCode for a couple of months, and I am getting a ton of value out of it. The key things I love are:

1. It really knows how to summarize a code blocks, this can be helpful to review code in other projects, or provide a refresher to your own, it misses very little!

2. It is very smart when it comes to filling in gaps in log statements, error messages or code comments.

3. Copy and paste is mostly dead, given a small hint it fills in the gaps for common patterns and is way less error-prone, and follows my prevailing style once the project is up and running.

4. Writing tests, this really surprised me but a lot of trivial, and some not so trivial ones are generated by Cody.

Thanks for reading!

See you next month everyone... also share this with your friends... pretty please! ❤️

By the way, I teach people how to code and get hired in the most efficient way possible as the Lead Instructor of Zero To Mastery Academy. You can see a few of our courses below or see all ZTM courses here.

More from Zero To Mastery

Learn Python for Free, Get Hired, and (maybe) Change the World! preview
Learn Python for Free, Get Hired, and (maybe) Change the World!

Looking to learn Python? Learn the exact process we recommend, in this step-by-step guide - all for free!

The No BS Way To Getting A Machine Learning Job preview
The No BS Way To Getting A Machine Learning Job

Looking to get hired in Machine Learning? Our ML expert tells you how. If you follow his 5 steps, we guarantee you'll land a Machine Learning job. No BS.

Machine Learning Monthly Newsletter 💻🤖 preview
Machine Learning Monthly Newsletter 💻🤖

44th issue of Daniel Bourke's must-read monthly Machine Learning Newsletter: Open-source text embeddings, new model releases from Meta, + Supabase for SQL. Get up-to-date with the most interesting ML news & updates from last month.