Maybe you're new to coding (#codenewbie) needing to drill the fundamentals or maybe you're an experienced coder looking to practice with some daily challenges, you stumble upon codewars.com and it's just what you've been looking for! What now?!
Codewars is a fantastic resource and community full of challenges, or Katas, for every skill level and programming language. The trouble is, it's not always the most intuitive platform to get started in. Hopefully this post will help you dip your toe in and find what you need.
Signing up for Codewars isn't quite as simple as clicking a 'Create Account' link, but it's close!
The first time you visit the site, you'll likely see something like this: Click on your programming language of choice to begin the sign-up process.
Once you pass initiation, follow the standard sign-up steps just like on any other site. You even have the option to use your GitHub login to save some hassle. You'll then answer a couple of basic questions about your experience and languages to finish sign-up (enlistment).
Finding Kata to Complete
Your dashboard view will be your starting point from now on whenever visiting the site. Notice that there is a suggested Kata in the top center of the screen easily available to you.
Next to the suggested Kata are 2 dropdown menus: one to select the language you're working on, and another to change your challenge goal.
If you want to have more freedom to filter and select Katas with more precision, hover over the menu on the left-hand side of your screen and select 'Practice' (previously 'Kata' updated 3/2022). This will take you to all the available Katas and filters.
Now you can play around with the filters to your heart's content to find just the right Kata for you! Note you can also search for a specific Kata by name on this screen.
A few things to note:
- The difficulty levels start with 8kyu as the easiest, and increase in difficult as the kyu level decreases
- I find that sorting by 'Most Completed' actually gives me the easiest katas in a given level, not by 'Easiest' 🤷🏻♀️
- Below the main filter menu is a list of tags that you can also use to filter your results
My recommended settings for a beginner are to click the Fundamentals tag, 8kyu, and sort by Most Completed
Completing a Kata
Once you click on the kata of your choosing, you'll see an introductory screen showing the problem you must solve. If you choose to go ahead and try the kata, click the 'Train' button in the upper right.
Now you'll see a new screen with the instructions on the left, and 2 consoles on the right: the top one is where you do your work and input the solution; the bottom one lists test cases that will be passed into your function and their expected results.
When you believe your solution is correct, you can choose to run the test cases by clicking the 'test' button in the bottom right. You can also skip the test cases and click 'attempt' to run the full set of inputs. If you have errors, it will tell you.
If you pass everything, go ahead and click the 'submit' button that has now replaced 'attempt'. Note that submitting tends to take about 15-30 seconds to go through, be patient!
Joining a Clan
If you want to turn Codewars into a more social activity and add even more of a gamelike feel, I highly recommend joining a Codewars Clan or creating one with friends!
To join an existing clan you will need its name.
Hover over your name in rank in the top right of the screen and click on 'Account Settings'. On the next screen enter the name of the clan under your username. Scroll down and hit 'Update.' That's it!
Those are the basics, now get to work!
I hope this guide helped you get started with Codewars.com. If there's anything else you want to know in a future post, please let me know!