Michał Matłoka - My Scala Story
Today in our special #scalaversary series, Michał Matłoka, an experienced Software Developer, architect, and advisor working at SoftwareMill, shares his Scala story!
How did you first get introduced to Scala, and what did you think about it?
My Scala journey started around 10 years ago when I joined SoftwareMill. Initially, I was mainly using Java, even on my first project there. However, as time went by, I noticed Scala being used more frequently, and I decided to give it a try in one of my projects. At first, Scala seemed like magic, but with time, it became much clearer to me.
Tell us about a moment when you realized, "Aha! Scala is awesome!" What Scala's features and capabilities made you feel that way?
Small things matter. I once worked on a project where Java POJOs had hundreds of lines, and then I discovered Scala case classes, which were a game-changer. While I later learned about more advanced features, these small things initially made our programmers' lives much easier.
What are your go-to tools and libraries when working as a software developer?
Definitely IntelliJ, cats or zio (not pure Scala), chimney.
Tell us about a time when Scala proved to be a game-changer in a real-world project
Akka Streams and the whole reactive programming approach were a game-changer. We did the rewrite of the project which attempted to do parallel processing in PHP. Code based on Akka Streams was simpler, easier to understand, and significantly sped up the processing by hours.
Did you have any hilarious or embarrassing moments while learning Scala?
Oh yes, definitely. Long time ago I had a failure where we used map
instead of flatMap
, which resulted in Future[Future[Unit]]
being assigned to Future[Unit]
. It caused random runtime behavior.
What advice would you give to someone just starting with Scala?
Don’t overcomplicate things. Great power brings great responsibility, Scala can do awesome things, but that does not mean you have to do all of them in every single project.
What are your predictions for the future of Scala in the next decade?
I believe Scala is moving more towards the enterprise direction. An early indication of this is the LTS release. Right now, the focus isn't necessarily on new and exciting features, but rather on achieving broader adoption and ensuring stability.
Celebrate Scala's 20th anniversary at Scalar 2024!
You can keep up with the latest news by following #scalaversary on X and Mastodon. And, if you're interested in Scala programming, don't miss the Scala Fiesta at the Scalar Conference 2024. This two-day event will allow you to connect with a fantastic community of functional programming enthusiasts, learn from experienced IT experts, and gain valuable insights. So, mark your calendar and join us for this exciting opportunity.