sbt once simple is Scala now (and simple, too?)
Once I reached a certain level of confidence in my understanding of sbt, I’ve looked around for open source projects that use sbt as their build tool in order to get more insight on how much we could help each other. I’ve found quite a few projects that made me sad how far their builds are from what I’ve been learning about sbt for the past months. That is not to say it’s these projects’ fault. Quite the contrary, sbt was once meant to be simple (I kept hearing it here and there for quite some time before I jumped on the sbt bandwagon), however expectations seemed to have been too high on both sides.
It should come as no surprise that people are bashing sbt for its name that once meant to have reflected simplicity (as in “simple build tool”), but finally got touted as THE “Scala build tool” to better reflect its focus on Scala as the build language (that might be a reason for losing sight of simplicity during the “transformation” to Scala as the language is far from simple for some). I think it needs to change and begs for more effort from the sbt community.
As Josh Suereth has said during his talk about sbt.next – “Lot of investments going on in the documentation.” That’s quite too often a sparse resource.
Once burnt, twice shy?
Given how much sbt has changed with 0.13 and the plans ahead, it’s now the sbt community’s turn to take the stage and do the due diligence which is to help these open source projects getting better in their use of sbt (that should ultimately help both sides – the sbt community as a whole with more appreciation from the projects for how much their builds got easier with sbt). sbt 0.12.x and previous releases should be deemed highly poisonous with sbt 0.13.x the recipe.
Let’s treat it a call for action for the sbt community (or we’re going to end up as endangered species very soon with our hope and love for sbt). I think it’s about time!
Akka and the sbt build
Konrad Malawski has recently joined the Akka team (that with Grzegorz Kossakowski gives two Poles in Typesafe! Woohoo!), and I decided to celebrate the (not-so-small) change in Konrad’s career by embracing Akka in my tooling. I’m sure Konrad will like it (don’t you?)
I usually get myself engaged in an open source project by the sources (starting with compilation and reviewing the docs) and books (if they’re available). Akka was no exception and since I’m interested in sbt I couldn’t resist doing both – reviewing the Akka sources with their sbt build as the first gig. I’ve also got three books about Akka on my shelf - Akka Concurrency, Effective Akka, and Developing an Akka Edge - and there are quite a few coming (to the press or my shelf) - Akka in Action and Akka Essentials (let me know if I’ve missed any).
To make the story short – there’s room for improvement in Akka build- and documentation-wise (which again should come as no surprise as it’s a sort of fate of open source projects that usually focus on the code with community and documentation as a second thought). I know far too many people who’d like to get into Scala and one of the big open source projects, and think with Konrad aboard, Akka might be a good fit (and since there’s the sbt build they’ll learn the tool, too).
See you on GitHub!