We have another Scala eXchange review for you!
Whether you attended or unfortunately didn't get the chance we think reading conference reviews is one of the best ways to dig deeper into other engineers and developers knowledge and learn from their experience.
So check out Software Developers Maria Livia Chiorean ScalaX thoughts.
A couple of weeks ago Signify Technology gave me the opportunity to attend Scala eXchange for the 4th time. From going there as a complete beginner to being a speaker in 2017, I was happy to have been given the opportunity to attend again. After this time, I realised I’m not only enjoying it for the talks, but also because I get to catch up with friends I made long ago. It’s a good reminder of how friendly the community can be.
When it comes to the quality of the talks, this year was no exception. From recursion schemes to new features in Scala 3 and comonads there was something for everyone to enjoy. I won’t go into much detail, I’ll just call out a few of my favourite talks (had many others!). If you didn’t get a chance to attend, I’d recommend watching as many as you can online, there’s plenty to learn from.
- Together with a couple of my colleagues, I’ve been trying to understand recursion schemes for a while. We even started reading the “Functional Programming with Bananas, Lenses, Envelopes and Barbed Wire” paper and while we had some break throughs, we still got confused quickly and gave up. That’s where Tamer’s talk “Factor Recursion Out of Your Codebase” comes in. Tamer used a JSON data structure as example and provided the audience with a step-by-step-guide to introduce recursion in your program. It was cleverly animated and very well explained, I’d recommend watching this talk no matter the level you are at.
- One of the things I found difficult to get right over the years was configuration. It’s a topic we keep coming back to and we still haven’t come up with a perfect solution. That’s why I was interested in seeing Viktor’s talk on “Ciris: Functional Configurations”. I haven’t yet used the library, but after seeing his presentation I’m tempted to give it a go. Ciris provides a way to write configuration as code and promises separation of concerns and configuration validation. Viktor introduced refined types in his examples and showed how to handle secrets and accumulate errors. It’s a hands on talk, it consists mostly of live coding and great explanations.
- Sofia’s talk, “Into the New World”, walks us through the transition to a more functional approach to programming: starting to use things like http4s, fs2 or Cats. She mentioned how some of the reasons why the team chose to make this change were more learning resources, easier testing and community support. On the other hand, the price to pay came in the form of a steep learning curve and a higher barrier to entry. I’ve always wondered how this kind of transition would feel like and it was nice to hear an honest opinion including both the good and the bad.