It’s hard to keep up with the vast array of programming languages available today, especially when new programming languages are popping up almost every week. Exercism wants to help. Exercism is an open-source project designed to help new and experienced programmers get up to speed with programming languages quickly.

The project allows developers to experiment with more than 30 languages through practice problems.

“Learning to program is exhilarating and challenging… and also frustrating, exhausting, and overwhelming,” according to the project’s website. “Exercism provides countless small wins. The exercises are achievable mini-quests: small and well defined, and with enough complexity to uncover bite-sized knowledge gaps.”

Programming languages include C#, C++, CoffeeScript, Elm, Erlang, F#, Go, Java, JavaScript, Kotlin, Objective-C, PHP, Python, Ruby, Rust, Scala and Swift. The project will have support for languages such as Bash, C, Nim, Object Pascal, R and Windows PowerShell soon, along with plans to add languages like Ceylon, Julia, and TECO in the future.

Practices are aimed at helping developers gain fluency, ramp up their skills, and develop skills such as code review, refactoring and mentoring. Once developers solve an exercise, they can discuss it with other Exercism users. Feedback includes reading code and sharing experiences.

“Exercism’s tiny toy problems, in the form of automated tests, provide a balance of constraints and freedom,” according to its website. “The exercises encourage you to explore tradeoffs and best practices. Each solution you write is an occasion to ponder readability and code smells. Each solution you review challenges you to articulate your experiences and gut feelings. Each discussion is an opportunity to strengthen your instincts for clean, well-factored code.”

Top 5 trending GitHub projects of the week
Clean Code JavaScript: Clean JavaScript concepts.

#2. Alacritty: A cross-platform accelerated terminal emulator.

#3. FreeCodeCamp: If you haven’t heard of FreeCodeCamp yet, what are you waiting for? Everyone else has heard about it… It’s been trending for weeks!

#4. Prettier: An opinionated JavaScript formatter.

#5. Grumpy: Google’s experimental Python runtime for Go.