Oct 31 2019 At PyCon Sweden 2019

Representing Transonic

I am attending PyCon Sweden 2019 at Stockholm where I am presenting Transonic. Do check out the slides for my presentation:

Don't miss the links to Binder demo and further reading at the final slide.

Update

The video of the talk is out! Watch it:

Rewind of my experience

I got to meet a lot of great like-minded people in those two days! It is no easy task to list all whom I met and convey my regards. Therefore, I list the videos and slides which might be of interest to you as a reader:

There were also really educative talks on asyncio, property based testing [slides] and mutation testing, plus a sizable representation from the data science community. A couple of fun projects such as the a plotting DIY tool made using Python + Raspberry Pi Zero, BrachioGraph and a really hacky self-documenting code. See the PyCon Sweden video channel for the whole programme.

Last but not the least, I am thankful to the whole PyCon Sweden team for selflessly devoting their time into organizing a great conference - twice as large compared to last year. It was quite insightful to learn from the chair that organizing the conference is a tightrope walk with a good fraction of ticket sales occurring towards the last week and booking the venue has numerous constraints! Hats off!

Epilogue

As for my talk, I believe I did my part. Judging from my interaction, it seemed that a lot of folks were oblivious to fact that numpy is not so fast for CPU-bound problems. I received some interesting questions as well:

Add some nice fluid dynamics visualizations?

There is a video on my Software page.

Can you use std. library typing for type annotations? Say for lists and dictionaries etc. This would allow for compatibility with mypy and later on mypyc when it is ready.

This is seriously followed up as a possible enhancement to transonic.

Can you accelerate Pandas?

It seems to be possible, especially when you follow functional programming style.

Can you accelerate OpenCV code?

This is a hard one. Of course, if you are dealing with images which are read as numpy arrays, it is possible. I haven't seen any Python extensions written (in Cython or other) to accelerate OpenCV code and even if it does exist, transonic is not designed to interface with libraries.

Can Pythran replace Cython / f2py for interfacing with native code?

Pythran does sound like Fortran, but it has nothing much in common - except the fact that Pythran and Fortran target scientific computing and HPC. Generally speaking, Pythran is meant to extend not interface.

However, Pythran can do some useful things such as generate C++ only code, free from any runtime Python dependencies (using -e argument) or even export capsules which is compatible with scipy.LowLevelCallable.

The journey continues ...

As developers of project transonic, we are hoping that you would try out the project and adopt it in your personal scripts, notebooks and possibly in packages that you develop. If you found transonic useful, help us, encourage us, by starring the project on GitHub and sharing your experience with us.