PyData NYC 2022

Using Numba Effectively Today
11-11, 11:00–12:30 (America/New_York), Central Park West (6th floor)

Numba is syntactically easy to use - just add a decorator, but actually very hard to use effectively. The reason being it is difficult to understand what Numba does to speed up the numeric operation. This workshop will provide all the knowledge that you need to make Numba works for you.


Have you ever heard of Numba? It is (mainly) a JIT (Just-In-Time) compiler to make your math-heavy Python code runs faster under certain conditions. Most people found all of it is like a mystery - It sounds like magic, but how does it work? Under what conditions does it work? And because of it, new users found it hard to start using it and it requires a steep learning curve to get the hang of it.

This workshop requires no prior experience. Through exercises, we will explore in what situation Numba works, when it does not and the reason why. We will also look at some cases where we can make Numba works by changing a few things in your code. Hopefully, by finishing the workshop, you will have a better understanding of how Numba works before you even start using it. This knowledge can save you some time on try and error, making your experience in using it better.

For whom is your Workshop

Data scientists or developers who have math-heavy code that would like to speed up with the benefit of Numpy and Numba.

Workshop Agenda

  • brief introduction (15 mins): To introduce what is Numba and how it works in general. Overview of what exercises we will cover at the hands-on session and what they should know about when they start.

  • hands-on exercise to be finished at own pace (60 mins): Through various exercises, we will get more understanding of how Numba actually works. This can explain some questions that new users may have about Numba. Participants are required to finish most of the exercises but not all of them, so they can finish them in pairs or at their own pace.

  • conclusion on what is taught in the exercises (15mins): At the end, we will go through some of the findings participants would have by the end of the exercises. This is to make sure everyone has got the right ideas in the end.

What is required from attendees

  • A computer with a stable internet connection (useful to look up information);
  • Python 3.8 or above;
  • Jupyter and Numba installed (detail about Python libraries required will be announced later);
  • An opened mind and ready to learn something new

What Attendees will Learn

By the end of the workshop, you will have some understanding of what Numba is and how it speeds up your Python code. You will also have a better idea about the limitation of Numba and when it does not help. You may also know how to change your code to make it benefit from the speeding up of Numba. You will also learn some troubleshooting skills and where to look for help if got stuck in the future.


Prior Knowledge Expected

No previous knowledge expected

Before working in Developer Relations, Cheuk has been a Data Scientist in various companies which demands high numerical and programmatical skills, especially in Python. To follow her passion for the tech community, now Cheuk is the Developer Advocate for Anaconda.

Besides her work, Cheuk enjoys speaking at various conferences. Cheuk also organises events for developers. Cheuk has organised conferences including EuroPython (of which she is a board member), PyData Global and Pyjamas Conf. Believing in Tech Diversity and Inclusion, Cheuk constantly organizes workshops and mentored sprints for minority groups. In 2021, Cheuk has become a Python Software Foundation fellow.

This speaker also appears in: