-
Finding performance problems: profiling or logging?
If your software is running slowly in production, do you need profiling or logging? -
The best way to find performance bottlenecks: observing production
Performance bottlenecks causes vary widely, from network latency to software bugs. Observation in production may therefore be the only way to find them. -
The limits of Python vectorization as a performance technique
Vectorization is a great way to speed up your Python code, but you’re limited to specific operations on bulk data. Learn how to get pass these limitations. -
Finding performance bottlenecks in Celery tasks
Learn how to speed up Celery tasks by figuring out what’s causing them to be slow. -
Why new Macs break your Docker build, and how to fix it
New Macs can break your Docker image build in unexpected ways; learn why, and how to fix it. -
Pandas vectorization: faster code, slower code, bloated memory
Vectorization in Pandas can make your code faster—except when it will make your code slower. -
Making pip installs a little less slow
Installing packages with pip, Poetry, and Pipenv can be slow. Learn how to ensure it’s not even slower, and a potential speed-up. -
CPUs, cloud VMs, and noisy neighbors: the limits of parallelism
Learn how your computer (or virtual machine’s) CPU cores and how they’re configured limit the parallelism of your computations. -
Faster, more memory-efficient Python JSON parsing with msgspec
msgspec is a schema-based JSON encoder/decoder, which allows you to process large files with lower memory and CPU usage. -
When Python can't thread: a deep-dive into the GIL's impact
Python’s Global Interpreter Lock (GIL) stops threads from running in parallel or concurrently. Learn how to determine impact of the GIL on your code. -
Speeding up software with faster hardware: tradeoffs and alternatives
Throwing hardware at a software performance is often an easy solution, and sometimes the right one. Learn how to approach the decision, and some alternatives. -
Please stop writing shell scripts
It is quite difficult to write correct shell scripts; you’re much better off just using Python. -
-
Docker builds in CircleCI: go faster, and support newer Linux versions
CircleCI’s default version of Docker is quite old; make sure you choose a newer version if you want faster builds and support for newer Linux distributions. -
Faster Python calculations with Numba: 2 lines of code, 13× speed-up
Python-based calculations, especially those that use NumPy, can run much faster by using the Numba library.