Tibor's Musings

Using Docker for Developing Python Applications

Docker became popular software solution permitting to deploy applications inside isolated Linux software containers. From a Python related point of view, one could consider Docker containers as "virtual environments on steroids", because they encapsulate and isolate not only application's Python pre-requisites (say given version of PyPDF2 package), but also any …

Python Garbage Collection Issue

For performance reasons, it may be interesting to switch off Python garbage collection in inner loops. Here is a story behind doing that in Invenio software.

For performance reasons, it may be interesting to switch off Python garbage collection in inner loops. Here is story behind doing that in Invenio …

Writing Python Docstrings with Emacs

Writing documentation alongside coding is one of the best ways to ensure that the documentation stays up to date with the code. In Python, such a documentation can be achieved by writing rich docstrings. How can Emacs help us with writing rich docstrings?

Code skeleton and templates

Emacs offers several …

Python Micro Benchmarking

timeit permits to micro-benchmark code snippets, e.g. the efficiency of list comprehensions for various Python versions.

Here are the results for Python 2.2, 2.3 and 2.4; note how the performance improves:

$ python2.2 /usr/lib/python2.4/timeit.py -n 10000 -r 5 "[i for i …

Python Speed on AMD vs Intel

The speed of the Python interpreter on the Intel Core 2 Duo test system seems to be better by about 20-25 percent when compared to our hitherto-fastest AMD Opteron system, at an equivalent CPU speed.

I did two Python benchmarks, pystones (simple) and pybench (preferred, complete benchmark suite). The results …