Preface

When I originally wrote the preface in 2019, Python was already one of the most popular programming languages. GitHub had over 1 million repositories primarily written in Python, and the 2018 Stack Overflow Developer Survey reported Python use by 37.9% of professional developers and 38.8% of all respondents.

It didn’t place in the top 25 most dreaded languages that year, and it topped Stack Overflow’s most wanted language list. That felt like a good sign for a beginner-friendly security course: Python was approachable, useful, and increasingly common in professional software work.

In 2021, there were just over 2 million GitHub repositories primarily written in Python. The 2020 Stack Overflow Developer Survey showed Python had lost its crown as most loved language to TypeScript and Rust, but usage had still grown from 37.9% to 41.6% of professional developers and from 38.8% to 44.1% of all respondents.

A lot has changed since then, but the core argument has aged well. As of July 21, 2026, the current stable Python feature line is Python 3.14, with Python 3.14.6 listed by Python.org as the latest source release. The 2025 Stack Overflow Developer Survey reported Python at 57.9% among all respondents and 71.8% among people learning to code, describing a seven percentage point adoption increase from 2024 to 2025.

So I feel that my words from 2019 still ring true: whether this is your first time using Python, or you’ve been using it a bit and want to know more, congrats on picking a fantastic language. It’s friendly enough to start with, deep enough to keep surprising you, and common enough that the little skills you build here will travel well.

This edition has been reorganised, updated, and made safer to run on your own machine, but it’s still meant to feel like a guided workshop rather than a dry reference manual. We’re here to make tools, ask “what happens if…?”, and learn from the moments where the interpreter quite rudely tells us we were wrong.

References

  1. GitHub language search for Python repositories
  2. Stack Overflow Developer Survey 2018
  3. Stack Overflow Developer Survey 2020
  4. Python.org downloads
  5. Stack Overflow Developer Survey 2025: Technology