Wednesday 2 November 2022
Anatolii Kmetiuk, Scala Center
Scala is one of the few programming languages that was born in academia and proceeded to become an industry standard. Scala stands for “Scalable Language”, and with its scaling to industry, the workload on the core team also scales. In the academic environment, research is the primary focus, not language maintenance. So, to cope with the emerging challenges of scale, new solutions must be explored.
The Scala 3 Compiler Academy
One such solution is the Scala 3 Compiler Academy. In Summer 2021, the Scala team at EPFL conducted the first iteration of the Scala 3 Compiler Issue Spree. The online pair programming event featured small teams of 2-3 people working together in Zoom breakout rooms to fix various Scala 3 bugs and learn the art of the compiler one from another. The aim of the event was to foster knowledge transfer between the compiler maintainers.
A lot changed over the past year. We’ve successfully conducted over 20 iterations of the Spree, gradually opened it to motivated learners from outside our core teams, polished our workflows, and started a YouTube channel where we regularly post educational videos about how the compiler works.
Moving to Discord
The Compiler Academy started to gain more presence in the community, and more people became interested in joining. Today, we are taking a logical step towards growing this community of compiler enthusiasts even further. We’re moving all the organization and communication around the Compiler Academy to the Scala Discord server. Now, you can follow the Spree at the #scala-contributors channel of that Discord, where all the Spree announcements will be regularly posted.
If you’re a lifelong learner passionate about all things programming, you may have wondered what happens when your favorite language compiles your code. Maybe you have aspirations to contribute your ideas and solutions to the compiler one day. Or maybe you’re eager to understand how a modern cutting-edge compiler works because you’d like to develop a programming language of your own.
The Scala 3 Compiler Academy is your chance to become a part of a community of like-minded people and learn the compiler together!
Rules of Participation
The Spree is organized by the Scala Center. We are committed to keeping the Spree community professional and friendly, so before you can join any of the Sprees, you will need to complete the one-time onboarding process including an interview with a Scala Center representative.
While participating in the official Scala spaces, including the official Discord server and the Compiler Academy community, you are required to follow the Code of Conduct. The Scala Center reserves the right to refuse your participation in the Compiler Academy at any point at its sole discretion.
The Scala 3 Compiler Academy Issue Spree is an online event that takes place every 3 weeks, on Tuesdays at 17:00-19:00 CE(S)T. Before your first Spree, you will meet with a Scala Center representative for a short onboarding interview. After that, you will be able to register for each event separately, possibly specifying your preferences about the issue you’ll be working on. You then will be assigned to a team of 2-3 people, and during the Spree, you’ll be working on the same issue (not necessarily the one you specified in your registration) in a Zoom breakout room.
To register for participation and schedule an onboarding call, fill in the following form.
The following resources can be useful to get started:
We strongly recommend taking a look at those guides before the Spree you’re participating in. The issue you were assigned should have helpful material as well.
At all times, you can ask compiler-related questions on the #scala-contributors channel of the Scala Discord. You can also use Discord direct messaging to keep in touch with teammates.
We are looking forward to working with you during the Sprees!