The public release of Scala was 17 years ago today.  The language and its community are certainly not standing still, so I've put together a list of my favorite active Scala blogs.

Blogs are a great way to stay on top of what is happening in the language.  Many important figures in the Scala community are active on Twitter, and many projects have excellent documentation. Still, if you want in-depth coverage of a topic, a blog is the best place to look.

Criteria

My main inclusion criteria for this list is that the blog has had an exciting post about Scala that I have read in the last year.  I'll highlight the piece that I found most interesting as we go through each one.

What is an exciting post? For me, an exciting post will introduce me to a new concept, deepen my understanding of an existing topic, or share a story about solving a problem.

So, here is my top 5 list.

#5 Alexandru Nedelcu's Blog

Alex is the creator of Monix and a Typelevel contributor.  His blog posts sometimes cover the ins and outs of these libraries, but more often they are about Scala in general.

One of my favorites is I like Option.get. If you've ever gotten feedback that your code isn't total even though it's clear from looking at the control flow that it is then, you'll love this article.

#4 Software Mill

Software Mill is a custom software development shop with an excellent technical blog.  The blog has several writers, and the quality of writing is always high.

My favorite author is Adam Warski, their CTO. My favorite post by him is "Java 15 through the eyes of a Scala programmer".

Adam shows which new features are notable and which are inconsistent with the rest of the language. He also covers how they compare to Scala equivalents.

I'm not always abreast of the latest changes in Java.  A lot of enabling features have appeared in the language in version 15. I love this post because it gives me the CliffsNotes version the changes.

#3 Dean Wampler's Scala 3 Series

For years, I have been putting off getting to speed on Scala 3.  Well, the time is now.  Scala 3 is here, at least in a developer preview form.

Dean Wampler's series on Scala 3 is an invaluable resource for teaching an experienced developer what is changing in Scala 3. I particularly enjoyed his two-parter on type-level programming.

#2 47 Degrees

47 Degrees has a great blog, covering Scala, Haskell, Swift, and functional programming.

Their blog is a go-to destination if you want to learn about recursion schemes, optics, or other functional programming topics.

One of my favorite posts is on Zippers and Comonads using Conway's Game of Life. In it, you will learn to build a console-based version of the game of life, and you'll learn about comonads, zippers, and streaming as you do so.

For Kotlin users, 47 Degrees is also behind the great Arrow project. Arrow is a library for applying the patterns of typed functional programming to Kotlin.  They also have in-depth coverage of it on their blog.

#1 Haoyi's Programming Blog

The #1 Scala blog in this list is Li Haoyi's Blog.  Li is a staff engineer at Databricks and author of the new book Hands-on Scala Programming.

The depth of detail that goes into each post by Li is outstanding!  When Li writes about a topic, even the language creator slides into the comment section to provide his commentary.

His most talked-about post was The Death of Hype, which has this great quote:

"I think the way we 10x the Scala community is not by spending 10x the effort bikeshedding over the existing language syntax, 10x the effort arguing about functional vs. object-oriented programming, or 10x the effort trying to make our already-very-type-safe code even more type-safe. It is instead by inclusively expanding the language to reach those developers we could never reach before" - Li Haoyi.

But, my favorite post by Li is How an Optimizing Compiler Works. Compiler optimizations let us have both understandable code suited to reading by humans and efficient code that will run performantly on actual hardware.  His post shows how to achieve that using program optimization.

Conclusion

Blogs are a great way to keep up on what is new and exciting in the Scala community, and I hope this list of some of my favorites is helpful. If you want to get notified about new Scala blogposts, The Scala Times is a great option. It's how I found many of these articles.