I have been racking my brain on how to learn a new language from scratch. It’s one of the first times I’ve had to learn a new language on a new platform for years, and my experience on the .NET stack influences everything I do.

So I believe the below list best captures what I should focus on:

  1. Read a configuration value
  2. Read and write to a database
  3. Expose an API over HTTP
  4. Deploy the combination of the all the above using Docker

This, in my mind, explores a lot of the edges of a language and the ecosystem surrounding it and provides something I can build upon. What it does not do, however, is expose me to the idioms of Scala. That’s next on the agenda. My priorities, at the moment, are to get a grip on how things hang together before I dive into Scala’s version of the BCL.