Fathomably Aspirational Queries

We designed ScalaQuest to be useful for people who already know other programming languages.

The game does not try to teach you how to program. It teaches you how to use Scala.

So, if you / your child / your friend already know how to program, and they want to learn how to write Scala, you're in the right place.

Thanks for backing us!

We created an account for you, and you can log in here to play.

If you don't have your password, reset it.

If you still need a hand, email us at juanex at scalaquest dot com

Some concepts are very difficult to teach in our User Experience, and that are probably not useful for the majority of developers.

Some examples of topics we will likely not cover are: macros, reflection, phantom types, and type lambdas.

OTOH, there are topics we'd love to cover (such as Type Classes and Monads) for which we need more time. There is a lot of ground to cover on the basics before we can take the plunge.

Our goal is to cover enough content to get you comfortable reading intermediate Scala code.

It will take a bit longer for you to be confident writing intermediate Scala.

And it will take a lot of practice before you can become a Shapeless or Cats archmage.


According to the Phaser documentation (the framework we used to write ScalaQuest), some Chrome extensions could disable the keyboard event handling.

Examples of this are the Evernote Web Clipper and Vimium.

Unfortunately, the only solution we know is to disable these extensions while playing ScalaQuest.