Scala Learning Roadmap

Hi all,

The Scala Roadmap is now officially published at roadmap.sh/scala. It is a learning roadmap designed to help beginners decide what to learn and in what order, and to discover relevant resources. It is one of the largest roadmaps on roadmap.sh, featuring over 150 nodes, each accompanied by descriptions and links to articles, videos, and code examples.

This project took several months of gathering information, brainstorming sessions, iterating over different designs, soliciting feedback, and more. While I believe a project of this size can never be perfect, I am confident in its quality. During my time as a Scala educator, I often received questions about where to start and what to do after learning the basics. I hope that people like me will now be able to point to this roadmap to answer such questions, as well as use it as a visual aid in their educational projects.

Of course, Scala is evolving, and at some point we will need to update the Scala Roadmap. That is expected. However, many nodes cover concepts fundamental to both functional and object-oriented programming, as well as tools unlikely to become outdated in the near future. Maintenance should not be a significant burden.

Finally, a word about the design: The purpose of a learning roadmap is to present resources in a linear or near-linear fashion, relieving students of the burden of making too many decisions. That said, this does not mean you must follow the path strictly. Rather, feel free to jump ahead, revisit earlier topics, explore related areas, and move in any direction you prefer. The path is meant to help you, not to restrict you.

I hope it will be valuable to you. Cheers,
Maciej

6 Likes

Very nice :heart:

The libGDX stuff near the bottom in Video Game Engines is 14 years old unmaintained, maybe exclude that one :wink:

LibGDX? LibGDX is very much an active project: GitHub - libgdx/libgdx: Desktop/Android/HTML5/iOS Java game development framework · GitHub

Oh I see, the link in the roadmap is a repo 14 years old so I was confused. Would it still apply? LibGDX must have changed a lot since then (along with Scala itself of course :smiley: ).

1 Like

Ah, right.

I guess I could propose to update the article on the LibGDX site.

1 Like