
I attended PyCon US 2025 in Pittsburgh, Pennsylvania from May 16–18, 2025. As my first Python conference, I wanted to document the most interesting things I learned.
Why a statistician goes to PyCon?
It might seem odd for a statistician to focus on any particular programming language. But I’m not your typical statistician. As Dijkstra said:
It is not only the violin that shapes the violinist, we are all shaped by the tools we train ourselves to use, and in this respect programming languages have a devious influence: they shape our thinking habits.
If we want to understand how different technical communities think, we need to engage with their latest progress through experiences like this. In particular, Python has become the primary language for generative AI—a field driven by efficiently processing huge amounts of unlabeled data rather than theoretical advances. This approach has shown some different wisdom from traditional statistical thinking, so I was curious to see how the language enables better technical and business outcomes in future AI (and AGI!) applications.
There were so many interesting talks
I focused on talks about speed, safety, and code quality. Here are the most informative ones for me.
1. Free-threaded CPython
With Python 3.13t, free-threading (NoGIL) moved from concept to reality. The Python free-threading guide serves as a helpful community resource. Importantly, free-threading helps with I/O-intensive tasks, not CPU-intensive ones. Notable talks:
2. GPU computing
Five years ago, I was skeptical about GPU-accelerated computing despite the promises of deep learning. Now I see it as the only practical path to scale. Shaping your problem-solving around high-throughput floating-point computation is a shortcut to success.
These talks introduced me to the roofline model for visualizing GPU kernel performance. The second talk was particularly exciting. It covered Python-level innovations that could reduce the need for CUDA C++ through cuda.cooperative.
3. Metaprogramming and JIT compilation
These topics can enable syntax sugars that help developers write correct, concise, and fast Python code. While I’m not a programming language expert and missed some details, it’s always valuable to know what’s out there.
4. Design and testing best practices
These were some of my favorite talks. While not cutting-edge technology, they offered valuable perspectives on engineering practices and avoiding common pitfalls.
Reconnecting with friends
The highlight of my Pittsburgh trip was meeting my friend Simo in person for the first time in seven years. I was excited to learn he has completed the UCSD CSE 234 and MIT 6.5940 courses I recommended for understanding the computational innovations behind LLMs. He also recommended Stanford CS149 to me for learning GPU parallel computing fundamentals. Simo has been building his own neural network framework nn-from-scratch and Transformers library.
We covered way too many topics—Neovim, uv, Rust, matmul, cuTile, tinygrad, PagedAttention… and PyCon provided the perfect break from our busy daily routines.