$ ls -lt tags/python/

2026

  1. 26m

    The State of Python Profiling in 2026

    CPython now ships its own sampling profiler, free-threading is going mainstream, and coding agents have started reading profiles. In this post I look at where Python profiling stands today, compare Tachyon, py-spy, Scalene and Austin, and go through what's new in Austin 4.1.

  2. 11m

    Busting performance issues, AI edition

    Coding agents are fast becoming the main generators of new source code, but they are also being used for code review, finding and fixing bugs. How can they be used to the best extent to discover and fix performance issues?

2022

  1. 34m

    Running C unit tests with pytest

    In this post I will describe my approach to C unit testing using pytest. In particular, we get to see how to gracefully handle SIGSEGVs and prevent them from stopping the test runner abruptly. Furthermore, we shall try to write tests in a Pythonic way.

2021

  1. 5m

    Increasing Austin accuracy with a dobule-heap trick

    The latest version of Austin comes with a heap size option that can be used in increase the accuracy with which invalid samples are detected. In this post I give a brief description of how this works.

  2. 4m

    How I completed the Hacktoberfest 2021 challenge with a profiler

    I shall reveal to you how I managed to complete the Hacktoberfest 2021 challenge with just a profiler. So read on if you are interested!

  3. 5m

    Spy on Python down to the Linux kernel level

    Observability into native call stacks requires some compromise. In this post I explain what this actually means for a Python tool like Austin.

  4. 6m

    How to bust Python performance issues

    In this short post I will try to convince you of how easy it is to find performance issues in your Python code and how you should develop the habit of profiling your code before you ship it.

2020

  1. 14m

    The Austin TUI Way to Resourceful Text-based User Interfaces

    The latest version of the Austin TUI project makes use of a custom XML resource file to describe and build the actual text-based UI, using curses as back-end. In this post we shall see how one can use the same technology to quickly build reactive TUIs using Python.

2019

  1. 16m

    Deterministic and Statistical Python Profiling

    If you want to be sure that your applications are working optimally, then sooner or later you will end up turning to profiling techniques to identify and correct potential issues with your code. In this post, I discuss some of the current profiling tools and techniques for Python. The official documentation has a whole section on the subject, but we shall go beyond that and have a look at some alternative solutions, especially in the area of sampling profilers.

2018

  1. 17m

    Extending Python with Assembly

    What's a better way to fill an empty evening if not by reading about how to extend Python with Assembly? I bet you don't even know where to start to answer this question :P. But if you're curious to know how you can use another language to extend Python, and if you happen to like Assembly programming, you might end up actually enjoying this post (I hope!).