15th issue! If you missed the previous ones, you can read the previous issues of my monthly Python newsletter here.
Being a Python developer is a fantastic career option. Python is now the most popular 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 hard problems.
One thing that is hard, however, is staying up to date with the constantly evolving ecosystem. You want to be a top-performing python developer, coder, programmer, software developer, but you don’t have time to select from hundreds of articles, videos and podcasts each day.
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 articles, news, resources, podcasts and videos of the month.
Think Tim Ferriss and the Pareto Principle (80/20 rule) meeting the Python world. What’s the 20% that will get you 80% of the results?
This was an interesting article. Python has become the most popular language in the world because it is so beginner friendly. However, as more and more people use it, the need to include more advanced features grows as well. This is a challenge that all technical projects face as time passes and they grow.
Rich is a python tool that allows you to beautify CLIs. This weekend, spend some time making all of your CLIs beautiful so you look like you are doing important work at your home or coffee shop or when your boss walks behind you (you know, once people go back to offices of course).
Every programming language aims to be performant in its niche and achieving superior performance requires a lot of compiler level optimizations. One famous optimization technique is Constant Folding where during compile time the engine tries to recognize constant expressions, evaluate them, and replaces the expression with this newly evaluated value, making the runtime leaner. Learn all about it in this tutorial.
Integers require no introduction. They are so ubiquitous and seem so basic that you may doubt whether it's worth discussing how they are implemented at all. Yet, Python integers are interesting because they are not just 32-bit or 64-bit integers that CPUs work with natively. Python integers are arbitrary-precision integers, also known as bignums. No idea what any of that means? Read all about integers here.
Pyston 2.1 Is Blowing Past Python 3.8/3.9 Performance. With this past week's release of Pyston 2.1 as an alternative Python interpreter I was curious to see how the performance compared to that of upstream Python... So here are some weekend benchmarks with a Ryzen 9 5900X system.
Python, being a beautifully designed high-level and interpreter-based programming language, provides us with many features for the programmer's comfort. But sometimes, the outcomes of a Python snippet may not seem obvious at first sight.
Here's a fun project attempting to explain what exactly is happening under the hood for some counter-intuitive snippets and lesser-known features in Python.
Google has become a visionary sponsor for the Python Software Foundation. You do that by donating a lot of money. Nice to see the support!
The Python steering council has, after some discussion, accepted the controversial proposal to add a pattern-matching primitive to the language. The pattern matching process takes as input a pattern (following case
) and a subject value (following match
). Learn all about it here.
Each time you make a change to a string variable, you are actually producing a brand new string. Because of this, tutorials out there warn you to avoid string concatenation inside a loop and advise using join instead for performance reasons. Even the official documentation says so!
This is wrong. Sort of.
There is a common case for when strings in Python are actually mutable.
Once you are confused by that one, read this.
A great strategy to use when faced with a tricky data analysis problem is to reshape the dataset into a format that turns it into an easy problem. In this article we will look at an example involving a simple calculation and extensive reshaping. Here is a walkthrough of how to do it.
Microservices are a way to organize complex software systems. Instead of putting all your code into one app, you break your app into microservices that are deployed independently and communicate with each other. This tutorial teaches you how to get up and running with Python microservices using gRPC, one of the most popular frameworks.
I highly recommend this read. The summary? If your python service is receiving 100,000 requests a second, it's likely that the specific Python framework you use is not going to be the bottleneck. Especially if your API is stateless and you can scale it via Kubernetes or similar. At that point, a good database, with decent schema design and good architecture are going to matter far more. Having said that, if you do want more processing power, use PyPy... just don't worry about the web frameworks you use.
An exploration of threads, processes, and coroutines in Python, with interesting examples that illuminate the differences between each. Enjoy!
You should probably keep your pip
up to date. Here is why.
Barcode Scanner app on Google Play infects 10 million users with one update. A reminder that even popular apps aren’t always safe. Everything is broken 😭.
A hacker tried to poison the water system in Florida.
SolarWinds hack was 'largest and most sophisticated attack' ever: Microsoft president. We're finding out more about this big hack.
NASA’s Perseverance Rover Lands on Mars! (check this tweet)
Jeff Bezos is stepping down from Amazon so he can battle it out in space with Elon. On another note, Amazon came up with the best idea ever.
Shocker of the month. Google shuts down another product: Stadia studios
Microsoft team discovered a suuuuper interesting attack venue for hackers. Impersonating internal npm package names.
Citibank just got a $500 million lesson in the importance of UI design.
LinkedIn (owned by Microsoft) is building a gig marketplace to complete with Upwork and Fiver. Keep an eye on this one.
20% of requests for Wikimedia Commons are for one image of a flower. Why?
China between 1910-1920 (Beijing - Peking).
Waste away 1h and 30min while watching the earth.
Apparently this is made with an array of 10 images going in a loop.
Waste away hours playing with this one. See what happens when you draw a toothpick.
When the legend, Martin Fowler speaks, we all must listen. For those that don't know, Martin has been around for a while and is one of the most respected programmers you will ever meet. His writings have had tremendous impact on the industry and his latest article gives a great insight into how smart people feel about Monolith vs Microservices. Follow his advice, and you won't be led astray.
If you're not sure what Monoliths, Microservices and Modules are, then you should read this first.
View Github repos online using VS code in the browser. Here is the trick.
Freeze your webcam to get out of endless Zoom meetings. You're welcome.
Your Github story in 3D.
See you next month everyone!
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 my courses below or see all ZTM courses here.