Preface
It’s 2012-ish and I’m in the middle of bootstrapping Typesafe, the company behind Scala. I get a call from Manning about more book ideas for Scala. At the time, I was working on one of the least understood and most important tools in the Scala ecosystem: sbt. sbt was a build tool that had some rough edges, but was amazingly powerful and elegant in its core idioms. After a quick chat with Michael Stephens at Manning, we decided to put a proposal together and see if we could find a second author. While I really wanted to see an sbt book, as the community desperately needed one, at the time my commitments at home and work were too much for a new book. This lead to us eventually finding Matthew as a second author, and I’m very glad we did. Matthew has been great to work with and brings his own unique humor that I very much appreciated throughout the book writing process.
For some reason, I tend to wind up as “the build guy” for my day job. This inevitably happens due to two “flaws” in my personality:
- A desire to understand everything I use
- A desire to improve my daily workflow
At Typesafe, this meant I was thrown into using sbt. At the time I was a “Maven guy,” having fallen in love with the notional simplicity of lifecycles, plugins, and declarative builds. In fact, I had forks of most major Maven plugins at my company to tweak/work around issues we discovered. When I first picked up sbt, I didn’t like it.