Python Monthly Newsletter 💻🐍

Andrei Neagoie
Andrei Neagoie
hero image

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

Python Developer Monthly Newsletter - September 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 September 2023 as a Python Developer…

Hidden Python Features 👽

Python is a powerful programming language that's easy to learn and fun to play with. But beyond the basics, there are plenty of hidden features and tricks that can help you write more efficient and more effective Python code.

In this article, you'll uncover some of these hidden features and show you how to use them to improve your Python programming skills.

Weekend Project Idea 🧰

Create some beautiful graphs using Python + Matplotlib! This guide will show you how to create a beautiful polar histogram.

Polar histograms are great when you have too many values for a standard bar chart. The circular shape where each bar gets thinner towards the middle allows us to cram more information into the same area.

This weekend try this project using World Happiness Report and information about income levels from the World Bank.

If you don't care about graphs, then here is a more intense one to do this weekend.

Why Did Python Win? 🥇

A super interesting discussion around this topic:

*In the ‘00s, Python and Ruby were both relatively new, dynamically typed, “English-like” languages. And for a while these languages had similar popularity. Now Ruby is still very much alive; there are plenty of Rails jobs available and exciting things happening with Ruby itself.

But Python has become a titan in the last ten years. It has continued to grow exponentially and Ruby has not. WHY?*

CPython Release Process 🎻

You can geek out on the complex but necessary CPython Release Process... all visualized here.

Radon Grades 🎲

I didn't know about Radon, but this is pretty cool: it gives you a grade on your Python code.

You can use Radon to help you find complex code in your code base. This is known as Cyclomatic Complexity or McCabe’s Complexity.

According to Radon’s documentation:

“Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.".

Check out how it works here.

Speed Up Your Python 🏄‍♂️

The common advice when Python is too slow is to switch to a low-level compiled language like C++ or Rust. But what do you do if that code is too slow?

At that point you might start thinking about parallelism: using multi-threading or multi-processing so you can take advantage of multiple CPU cores.

But parallelism comes with its own set of complexities; at the very least, some algorithms can only really work in a single-threaded way. So what can you do?

As it turns out, there’s often still plenty of performance improvements you can get just by tweaking your low-level code.

The Worst Programmer 🥸

This is an excellent read.

The great thing about measuring developer productivity is that you can quickly identify the bad programmers. I want to tell you about the worst programmer I know, and why I fought to keep him in the team.

Guide to Career Growth 💻

An insightful article from a developer who has worked for Facebook and Stripe during their growing days. Although luck and timing is a big part of this person's journey, some of the points made in this article will be valuable to most of you. Enjoy it.

Death by a Thousand Microservices 📑

Trust me and read this. This was a great comment from an ex-Netflix engineer (jedberg):

I am one of the biggest proponents of microservices. I helped build the platform at Netflix, I've literally traveled around the world extolling the virtues of microservices.

But I also advise a lot of startups, and you know what I tell them nearly every time?

Build a monolith.

It's so much easier to start out with one codebase and one database, and that will scale for a while. Especially if you use a key/value store like DynamoDB (although you will lose relational functionality that can be helpful at the start). And did you know that you can deploy a monolith to Lambda and still get all the benefits of Lambda without building services?

And then, when you start growing, that's when you break out an independently scalable part of the system into a microservice (with it's own data store!). The one that may need to scale independently, or that you want to be able to deploy separately.

Microservices takes at least 25% of your engineering time just maintaining the platform. It's not worth it unless you can recoup that 25% in efficiency.

News Around the World 🗺

  • Wow, did Unity have an intense month... They pissed off pretty much everybody and are kind of sort of backtracking.

  • Vercel came up with this: https://v0.dev/ ... tell the AI what you want to build and it will build it for you.

  • With 2–3× the speed of the previous generation, and featuring silicon designed in‑house for the best possible performance, Raspberry Pi 5 is coming out in October. One of the coolest things to get for yourself as a hacker/programmer.

Big Tech News 🏢

  • OpenAI released a guide for teachers using ChatGPT in their classroom including suggested prompts, an explanation of how ChatGPT works and its limitations, the efficacy of AI detectors, and bias.

  • Apple released their latest phones: iPhone 15 and iPhone 15 Plus

  • Cisco bought Splunk. Goodbye Splunk.

  • Not to get left behind in the AI war, Amazon also bought Anthropic. Read about it here. Oh and FTC is suing Amazon mainly to target how drop shipping businesses on Amazon are getting screwed over. (P.s. starting a drop shipping on Amazon is the best way to waste your time)

  • Meta is releasing smart glasses (remember Snap?). Can't imagine this selling too well with Meta's reputation.

Completely useless to your career but still great 🙃

Best Resource of the Month 🥽

You may have noticed that this month's newsletter and probably a lot of the previous issues talk about the importance of keeping things simple and not over-engineering.

For this month's best resource, you have to read this excellent article: How Instagram scaled to 14 million users with only 3 engineers.

Instagram's guiding principles and tech stack explained simply. Learn to architect your big projects properly instead of focusing on the latest twitter/x hype and the so called advice of twitter "experts".

Trick of the Month 🎩

wow reaction

RecipeUI - the open source Postman alternative with type safety built in... very cool!

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 💻🤖

45th issue of Daniel Bourke's must-read monthly Machine Learning Newsletter: LLMs, LLMs and more LLMs + Meta's real-world robotic agent + much more. Get up-to-date with the most interesting ML news & updates from last month.