1) Лично на мой скромный взгляд, скала для всяких web API - overkill.
Для таких вещей не нужна функциональщина, монады, функции высших порядков и т.д и т.п.
Т.е, как академический язык - он превосходен, на этом языке можно "мыслить".
Но, как мне кажется, лучше писать максимально просто (то, что, например, пропагандирует язык Go).
2) Курс на coursera, конечно же. Сам его проходил - остался очень доволен.