A software engineer at USU Software AG, Sören works on the Katana platform, helping companies to understand their industrial big data. He’s a contributor to Almond and maintains the almond examples, a growing collection of Scala-based Jupyter notebooks you can try in your browser. He also writes about machine Learning with Scala in Journals and on his blog.
In advance of his talk Interactive Computing with Jupyter and Almond at Scala Days Lausanne, we spoke to Sören about the Twitter challenge that granted him a “golden ticket” to Scala Days, his transition from academia to working on Katana platform and why he encourages using simple, working solutions in Scala.
What is your most favorite Scala Days story or memory?
I guess I’m really lucky when it comes to Scala Days. Two years ago, I participated in a Twitter challenge with the chance to win a ticket for Scala Days Copenhagen together with a Lego Mindstorm robot. And I won! I went to Copenhagen and had a great time at the conference. On the way home I met Heather Miller who had missed her flight due to a very bad airline experience. Seeing the Mindstorm Heather had this idea of a 🦂 as a Scala mascot. The idea stayed with me and after some time I built this robot (which runs Scala of course):
My time in Copenhagen also encouraged me to submit my own talks in the following years.
What’s your background and what does your current role involve?
Currently, I’m working as a software engineer on the Katana platform, a data science platform that helps companies in manufacturing and mechanical engineering to analyze their machine data and to do things like predictive maintenance and optimization. We use Scala mostly in our backend but we also started to introduce some Scala.js into our frontend logic.
Before my current role, I worked as a research software engineer in various positions on big data, search and machine learning projects. I discovered Scala while working at NUI Galway and have gradually been using it more and more since. I also have a university degree in software engineering.
What’s the biggest highlight of your career so far?
I’m very happy that even after leaving academia my current job allows me to continue working with things I find interesting like Scala, Jupyter and machine learning. I’m part of a great team which enables me to constantly learn new things.
Why did you choose Scala and what kind of problems does it solve for you?
I originally chose Scala due to its expressiveness and type safety. Having previously used Java as well as Python, Scala offered both the expressiveness of Python and the type safety of Java, which was the perfect mix for me. Over time, I have learned to appreciate the functional side and other strengths of the language.
Nowadays I use Scala for all kinds of tasks and I really like how it enables me to iterate fast, but still produce robust code I can be confident in. It also offers me a lot of flexibility in choosing the appropriate level of abstraction for a given task.
What is the most important challenge Scala developers are facing today?
Scala’s powerful building blocks give developers many choices how to solve a problem. That’s a strength because it has allowed a wide variety of interesting approaches and libraries to emerge. Sometimes though that power is overused, leading to cryptic code, cryptic error messages and long compile times. It also makes it harder to navigate the language and its ecosystem and it can be overwhelming for beginners.
What is one thing that could address this challenge?
Being more opinionated in some areas. Besides the language simplification happening in Scala 3, we should highlight and encourage best practices and simple, working solutions where possible.
Who should attend your talk at Scala Days and why?
Do you like to experiment with code or data and try out new things fast? Do you use interactive shells like the REPL or Ammonite? Then you’re already doing interactive computing. Come to my talk to see how Jupyter notebooks take it to the next level.
You should also attend if you’re doing data analytics or data science, or if you’re a library author or an educator interested in creating and sharing interactive, executable documentation.
Whom would you like to connect with at the conference?
I’d love to talk to anyone who has experience or an interest in interactive computing and notebooks, using Jupyter or other technologies. I’m also hoping to find people interested in creating framework/library integrations for almond so that we can offer a better experience using them within Jupyter notebooks.
Personally, I hope I get the chance to chat with Holden Karau to learn more about Spark on Kubernetes, Kubeflow and how to give amazing talks.
Anything else you would like to add?
I love how Scala Days is making an effort to include lots of different people. I hear that there will be childcare during the conference this year, which is great. I won’t be able to bring my family this time, but maybe next year?