EuroSciPy 2024

Marco Gorelli

Marco is a core dev of pandas and Polars and works at Quansight Labs as Senior Software Engineer. He also consults and trains clients professionally on Polars. He has also written the first Polars Plugins Tutorial and has taught Polars Plugins to clients.

He has a background in Mathematics and holds an MSc from the University of Oxford, and was one of the prize winners in the M6 Forecasting Competition (2nd place overall Q1).


Institute / Company

Quansight Labs

Git*hub|lab

https://github.com/MarcoGorelli


Sessions

08-27
11:00
90min
Combining Python and Rust to create Polars Plugins
Marco Gorelli

Polars is a dataframe library taking the world by storm. It is very runtime and memory efficient and comes with a clean and expressive API. Sometimes, however, the built-in API isn't enough. And that's where its killer feature comes in: plugins. You can extend Polars, and solve practically any problem.

No prior Rust experience required, intermediate Python or general programming experience required. By the end of the session, you will know how to write your own Polars Plugin! This talk is aimed at data practitioners.

Data Science and Visualisation
Room 5
08-29
13:20
100min
Dispatching, Backend Selection, and Compatibility APIs
Guillaume Lemaitre, Joris Van den Bossche, Tim Head, Erik Welch, Marco Gorelli, Sebastian Berg, Aditi Juneja, Stéfan van der Walt

Scientific python libraries struggle with the existence of several array and dataframe providers. Many important libraries currently mainly support NumPy arrays or pandas dataframes.
However, as library authors we wish to allow users to smoothly use other array provides and simplify for example the use of GPUs without the need for explicit use of cuda enabled libraries.

This session will be split into three related discussions around efforts to tackle this situation:
* Dispatching and backend selection discussion
* Array API adoption progress and discussion
* Dataframe compatibility layer discussion

High Performance Computing
Room 5