Learning a new programming language can be hard and challenging. Especially if you are new to programming.
An interesting open source project I found to solve this problem is called Exercism. Exercism gives you hundreds of practice problems in over 30 programming languages and is a place where you can get feedback on your solutions.
Exercism is specially useful for:
- gaining fluency in your first programming language
- ramping up in a new programming language
- developing the skills to be a great lead developer: code review, refactoring, and mentoring
Exercism is written in Ruby and has 363 contributors who have contributed to the codebase. If you are interested in this project and want to learn more about this project its GitHub is https://github.com/exercism/exercism.io and their website is http://exercism.io/.