River is a Python software for doing online machine learning. It’s the result of a merger in early 2020 between creme and scikit-multiflow. Saulo Mastelini, Jacob Montiel, and myself are the three core developers. But there are many more people who contribute here and there!

This week Saulo Mastelini and I got to meet in person. This is worth mentioning because Saulo is originally from Brazil, whereas I’m based in Europe. We connected and I’m glad to think of him as a good friend from now on. Of course we were not alone: some friends of mine from university also joined the fun. These are people who initially contributed to creme, back in what we already call the old days! Each one of them has their own areas of expertise, and contributed to various parts of the codebase.

We all met on the Île d’Yeu, which is an island off the French Atlantic coast. The only way to get there is by boat, and everyone gets around the island by bike. This creates a special atmosphere, perfect for spending a good time between friends for a week.

This wasn’t what you would call a software sprint. We mostly leasured and enjoyed the beaches. We did however get some work done. Saulo and I sat down and wrote benchmarks to compare all our models across several tracks. Then we all got together and got mypy to pass on the River codebase. This was a team effort of 130 commits that would have taken me so much longer all by myself.

We’ve also tidied up the module layout, which will pave the way to making NumPy/SciPy/pandas optional dependencies. Aside from this, we spent a lot of time discussing various topics and planning for the future. River has never been so alive and kicking!

We definitely want to do this again. We’re thinking of organising it in a more official way. We would like to collect some sponsorships, which would mainly pay for the transport that is required to bring us together. We would also like to include more people and plan more topics to work on. The group work you can get done IRL is different in nature to what you can do when you’re remote. There’s this indescribable group energy that moves mountains 🚀

Here are some pictures to wrap up 💫

This is a picture of all of us after playing frisbee for the umpteenth time 🥏
This is a view from the top of my favorite beach, the Plage des Soux.
This is Saulo and I in front of the Plage des Vieilles.
Another group picture with the Plage des Vieilles in the background.
This is Antoine and Raphaël. Raphy is finishing a PhD in NLP, he contributed the LDA and Naive Bayes algorithms to River. Antoine is a friend of his who acted as our DJ for the whole week 🎶
This is Geoffrey. He is working at Volvo Cars, and before that did a stint with the scikit-learn team in New-York. He worked on River's factorization machine and knows his way around the Python tooling ecosystem.
Here we have Robin. He is finishing a PhD in speech recognition. He wrote our first recsys model. But more than, he made us delicious deserts all week long 🤤
This is Adil. He's pursuing a PhD in reinforcement learning. He worked on River's popular stats module, as well as helped me on the time series models. He also made us laugh and smile all week 😊
Last but not least, we designed a new logo to mark the occasion!