Boosting Python with Rust

By Raphaël Gomès

Summary of sessions

Intro slide

A basic mercurial command was benchmarked after being rewritten with Rust which showed exciting improvements.

Raphaël was excited to take this forward. However, initially this was not successful. Problems included data friction when passing data between languages. As well as missing features in Rusty Python. Work is going on to implement features in hg with mercurial with the aim to attaining the potential speed improvements that have been demonstrated.

Slide Python Love

Extending sudo in Python- Best of both worlds

By Peter Czanik

My first session at FOSDEM is brought to you by Peter Czanik.  Videos and live streams are available on the FOSDEM website.  Here is the session summary.

Need to restrict or monitor sudo access on your servers? Well sudo will be soon supporting Python based plugins and reporting.

Did you know it already supports recording sessions?

Session slide
Summary slide
Questions slide

Machine Learning as a Service – Anand Chitipothu

This talk is about creating a simple end interface for running your machine learning code.

Anand is the co-founder of https://rorodata.com/ a Platform-as-a-Service,
designed for data scientists, for running machine learning code.

Machine learning libraries that were mentioned that I had not come across before:

PyTorch – https://pytorch.org/ – a deep learning framework for fast, flexible experimentation.

joblib – https://pypi.org/project/joblib/ – is a set of tools to provide lightweight pipelining in Python.

The Rorodata firefly tool creates a RESTful API for your client defined functions.

The config format is YAML and not unlike defining a Bitbucket pipeline.

The end user only needs to a Python function, define API with firefly, deploy and an endpoint on the paas is created.

You can add further system requirements to the runtimes available in rorodata.

It also supports configuring CORs domains.

You can define the size and scale of platform your code will be run against.

You can also use the power of rorodata on your own servers or cloud infrastructure using https://github.com/rorodata/rorolite NB: size/scale config are not available but otherwise can use the same code.

Assume the worst – Alex Chan

If your system allows a user interaction, say a chat function, ensure you can block people.  Gave an example about a payment platform which was abused to harass an ex.

How to build services to reduce being open to abuse online.

# Diversify the team

Interestingly you cannot change your name in the history of git say.

# Real name policies

This does ensure people will be civil, truthful, is helpful for protecting vulnerable groups

# Robust privacy controls

Have the ability to ban/block malicious users (individual/platform)

Consider shadow blocking or muting / so the blocked user cannot se they have been blocked per say.  As blocking can trigger retaliation.

This could be changeable in the past.

# Human moderation is best

Think about your moderators – they need access to counselling etc before burning out.

# Design with abusive personas in mind

Navigating the magical data visualisation forest

Speaker: Dr Margriet Groenendijk from IDM

Margriet is a tech enthusiast at IBM and gave a lightning talk at the Django Bristol Bath meetup as well.

Slides are online here: https://www.slideshare.net/PoleSystematicParisRegion/a-beginners-guide-to-weather-climate-data-margriet-groenendijk

This talk is about using Jupyter notebooks, https://jupyter.org/, for data analysis and visualisations.

NB: These can be run on the desktop and is available in the cloud as well.

Libraries Margriet has used:

PixieDust package, https://github.com/pixiedust/pixiedust is an addon for Jupyter notebooks https://www.ibm.com/cloud/pixiedust

– is an open source package developed by David Taieb and Margriet Groenendijk.  It is a a wrapper around various libraries, which turns into GUI options in the Jupyter notebook.  This is an amazing useful tool for data scientist and others that would like to explore their data without learning as much code and the various differences between each library.

It can load pandas and spark data frames.  It can also load data via URLs, very helpful for cloud based notebooks.

PixieDust provides a serious amount of options and less code for busy people or those exploring data or data science newbies.

seabourne has a nice map based visualisation.

PixieDust integrates with google, mapbox, and seaborne

PixieApps – https://dataplatform.cloud.ibm.com/docs/content/pixiedust/pixieapps.html

The technical lead for PixieDust, David Taieb https://twitter.com/dtaieb55, has also published this book: Thoughtful Data Science – https://www.safaribooksonline.com/library/view/thoughtful-data-science/9781788839969/