When are new posts released?

Once a month at the beginning of the month. I will try my best to get them out on the 1st of each month, but depending on my schedule they may be released within the next few days after the 1st.

How are topics for posts chosen?

I pick topics based on what I think is interesting and relevant. Topics will range from learning to use new libraries to algorithms or data structures questions. The goal will always be to learn about interesting libraries or concepts of programming in Scala.

Do I need to solve the challenges using the libraries or methods you suggest?

Nope! You can feel free to use any approach you want to solve the challenges. I will set the challenges up such that it will be easiest to solve them if you do use the suggest technologies. But if you do want to try something else, I fully support you in doing so.

Which version of Scala and any libraries will you use?

Challenges will almost always be done on the latest stable version (milestones and release candidates will not be used) of Scala and any included libraries. The focus here is to learn concepts and not have to wrestle with tooling or lack of documentation on the cutting edge. That being said, if you want to upgrade any of the starter code to a newer version of something for yourself, then feel free to do so!

Why are you doing this for free?

I am doing this mainly because I think Scala is a really amazing language and I want to do whatever I can to help build the community around it. I am also doing it because I love coding challenges and hope to be able to create some fun ones for everyone to enjoy.

Can I port your challenges over to another language/tool/library/etc?

Yes, of course! All I ask is that you provide attribution back to Scala Monthly if you do this.

Where can I go if I get stuck on a challenge?

Check out the Scala Monthly Discord or message me on Twitter @lewisjkl. You can also email jeff@scalamonthly.com. Really whatever is easiest for you.

By using this site, you agree that you have read and understand its Privacy Policy.