Learning Scala with the team
Last April we decided as a team to follow the Coursera course "Principles of Functional Programming in Scala". We want to keep growing as a team so we wanted to follow the course with the whole team. By following the course together we could learn from each other while building the team spirit.
Coursera is an online learning education platform where you can learn on your own schedule. The Scala course ran over the course of 8 weeks, with new assignments each week. Every assignment had an introduction, where they explained the purpose of the assignment, and some video lectures where new technical details got explained. For each assignment you get a base code package, with some groundwork and a few tests. When you pushed your code, it got tested against their testsuite and graded based on the result and coding style.
Within our team, everybody did the assignments at home. During the day we discussed some of the topics and some of the difficulties we encountered, while making sure we didn't reveal a solution to each other. After everybody handed in their assignment we compared the differences in our approach and solutions, which was interesting to see, it happened more than once, that someone said: "Why didn't I think of that!"
Although it was sometimes a challenge to create enough spare time for the exercises, everybody was enthusiastic about this way of learning. In a pretty short time, you got to work with a new language while learning about functional programming in general. Most likely we will also follow the "Principles of Reactive Programming" course later this year, the follow up course of "Principles of Functional Programming in Scala".
After this experience, we recommend other teams to try something similar, to take the chance to learn a skill together while having fun! The next course starts on September 15th!