Introducing Kalix - High-performance microservices and APIs with no operations required. Start for free.
activator scala

Activator Template of the Month: Atomic Scala

As readers of the Typesafe newsletter may know, every month we promote an Activator template that embodies qualities we look for in tutorials and topics. This month’s template is a return to first principles of Activator as an experimentation and discovery tool. While the selection may be below your level, gentle reader, I will bet as an existing Scala developer, at least someone has asked you at some point how to go about learning Scala from the ground up, or even better, how to go about learning to program.

When the Atomic Scala book first came out, co-authored by my friends Bruce Eckel and Dianne Marsh, it was a different kind of book from all of the others available at the time. Instead of being an “Introduction to Programming in Scala,” it is an “Introduction to Programming, in Scala!” The comma makes all the difference — other texts on Scala assume some knowledge of programming, while Atomic Scala is aimed at people learning programming in general for the first time, presenting the examples in the Scala language.

The Atomic Scala Examples activator template, authored by Bruce Eckel (one of the book authors) is a companion to the book but is useful in its own right (i.e. while I recommend the book, you don’t have to buy it to find the template useful). The template takes each of the examples in the book and provides them in an executable and easily runnable form. If you want to help someone to learn to program, and even better to do so using Scala, here’s your template. You can also download the first 100 pages of the book for free if you want to as well.

In martial arts, it is accepted that you might reach a plateau in your skills and one way to overcome that plateau is to begin to teach others. I believe the same is true for programming, and teaching is fun anyway. Next time someone you know asks you about learning to program, perhaps you will remember this template and use it as a basis for teaching.

The instructions for the template are short and easy to follow. There is one potential gotcha on the second page where the activator tool has changed a little since the template was first written. It talks about selecting ExampleRunner from a pull-down menu and then hitting start, in fact that pull-down is gone, If you simply hit the start button on the Run page, it should run the correct ExampleRunner anyway. I have submitted a pull request to correct this in the template.

Happy experimenting and happy teaching.


The Total Economic Impact™
Of Lightbend Akka Platform

  • 139% ROI
  • 50% to 75% faster time-to-market
  • 20x increase in developer throughput
  • <6 months Akka Platform pays for itself