Over the course of 2024, Python has proven again and again why it’s one of the most popular, useful, and promising programming languages out there. The latest version of the language pushes the envelope further for speed and power, sheds many of Python’s most decrepit elements, and broadens its appeal with developers worldwide. Here’s a look back at the year in Python.

Python 3.13 introduced the “no-GIL” build (and lots more)

In the biggest news of the year, the core Python development team took a major step toward overcoming one of Python’s longstanding drawbacks: the Global Interpreter Lock or “GIL,” a mechanism for managing interpreter state. The GIL prevents data corruption across threads in Python programs, but it comes at the cost of making threads nearly useless for CPU-bound work.

Over the years, various attempts to remove the GIL ended in tears, as they made single-threaded Python programs drastically slower. But the most recent no-GIL project goes a long way toward fixing that issue—enough that it’s been made available for regular users to try out.

The no-GIL or “free-threaded” builds are still considered experimental, so they shouldn’t be deployed in production yet. The Python team wants to alleviate as much of the single-threaded performance impact as possible, along with any other concerns, before giving the no-GIL builds the full green light. It’s also entirely possible these builds may never make it to full-blown production-ready status, but the early signs are encouraging.

Another forward-looking feature introduced in Python 3.13 is the experimental just-in-time compiler or JIT. It expands on previous efforts to speed up the interpreter by generating machine code for certain operations at runtime. Right now, the speedup doesn’t amount to much (maybe 5% for most programs), but future versions of Python will expand the JIT’s functionality where it yields real-world payoffs.

We kissed Python’s “dead batteries” goodbye

Python’s been around for over three decades, and it’s accumulated some cruft across the years. Some of that baggage consists of standard library modules that have fallen into obsolescence or are no longer actively maintained. Since Python is described as a “batteries-included” language, these aging modules have been called dead batteries.

Over the last couple of Python versions, numerous dead batteries have been deprecated and flagged for removal. With Python 3.13, they’re now entirely gone. It’s a step toward freeing Python from its legacy roots—but in some cases, removing those batteries broke other things that were still in use. The good news is, what’s dead and gone can and should be replaced—and it often isn’t hard to make the swap.

Python’s popularity topped the charts

Python’s enjoyed a massive uptake across the software development world in the last decade, but 2024 brought the biggest wins yet.

In 2024, Python climbed to 18% in the Tiobe index of programming languages, which rates how widely a language is used. The only other language to achieve that number was Java, back in 2016. It’s also the anticipated Tiobe programming language of the year. And finally, it’s now more widely used than JavaScript on GitHub. That last change can be attributed to Python’s central role in artificial intelligence, machine learning, and data science application code hosted on the platform.

Python is also recognized as one of the “big three” programming languages, as over the past three decades, enterprises have come to rely on Python, Java, and JavaScript above other languages. JavaScript is still the most supported way to do things in a web browser, and Java code runs a staggering amount of business logic and software infrastructure for enterprises. In addition to being the go-to platform for AI, machine learning, and data science (all crucial business functions now), Python’s big strength is its versatility. It’s effectively the second-best language for just about anything, and also the most convenient and quickest-to-use language for nearly everything. That dream has been coming true for a long time now, and it stands to be true for a long time to come.