In my pre-course work for General Assembly's Data Science Immersive program, we were introduced to the website CodeWars.
The first few times I practiced my coding, I was frustrated but engaged. The way the website is set up allows you to level up as you continuously progress - like a way to see where you rank among others.
Here's what I love about it:
- You can get extra practice by choosing your level of difficulty for each challenge. If you want to practice, stick with challenges at your current level. If you are looking to level up, choose something at a level above your current one. There are options for either path!
- CodeWars felt like a fun way to push me out of my comfort zone with coding. There is no risk at all to trying something that is just beyond my current level.
- There are so many programming languages available! Want to dabble in Haskell? Ruby? SQL? They've got you covered. (From what I counted, there are 29 core languages and 26 beta languages currently supported!)
- Every challenge is community-created. When folks spot errors in a challenge, they report them, and the challenges get updated - sometimes with something simple, like clarification on directions. (None of us are perfect!)
- Once you've submitted your working code, you can see other solutions as well - sometimes (as a beginner still - often) much shorter and more clever than my own code. It is an additional learning tool to see how others solve the same problem.
- A pro for me - sometimes the problem is more of a math problem than a coding problem. I love keeping those math skills flexible!