As with everything else, if you want to learn how to code or improve your already existing coding skills, you have to practice. And how would you go about that, exactly? Well, arguably, the best way to practice coding is by solving various types of challenges. Coding challenges are tasks meant to put an engineer to the test. Basically, they serve as an evaluation of their coding skills. Similar to how IQ tests work.
Codewars is the first coding challenge website on the list. The short tasks it sets you are called “kata”. The nice thing about Codewars is that the kata is made by the community, and for the community. Everyone was once a beginner in coding, so the exercises that you can solve were done by people who were once in your place. It supports more than 55 different programming languages, so you are sure to find the one you are looking for.
This site makes it competitive, so you have that extra push to get better at coding. The challenges are ranked. They go from beginner to expert, and you level up your profile as you complete more difficult tasks. Don’t forget you also level up your coding skills.
CodeChef can provide you with both beginner challenges, as well as those for more experienced programmers. It has many challenges that are incorporated into contests. At the beginning of every month, CodeChef hosts coding competitions. It also has 2 lesser competitive events in the middle of the month and the end of it. It also supports more than 55 programming languages, the most popular being Java, Python, C, and C++.
The tasks are sorted by levels of difficulty and popularity. If you get stuck, you have hints at your disposal. If you are looking for something more than just challenges, it also has tutorials to improve your algorithm game and a forum for discussion of various coding problems. In the contests, you get points and move up the website’s ranks. You can check out their archive of previous challenges, too.
LeetCode is one of the most popular platforms to test your coding skills. It has almost 200 different tasks you can practice on and offers you the chance to work on more than 14 different programming languages. Unfortunately, you do not have the option to see how other people have solved the challenges, but you do have the insight into your own solutions and how you compared to others time-wise. They offer weekly and biweekly contests, which last about an hour and a half. Its community is quite active, too.
Not only can you participate in various competitive events, but you can also make use of its interview preparation. So, if you level up and earn enough points, you might just get a job in a respectable tech firm. You get a place to discuss problems and ask questions as well.
Exercism offers a whopping 61 programming languages for you to improve yourself in. It’s completely free and will stay that way. It combines learning, exercises, and guidance to make your way to coding mastery as easy as possible. Not to mention it’s fun, too. Around 3,500 well-constructed challenges is more than enough for you to practice your heart out. The tasks are set up like games, so you won’t be bored, either. Exercism provides you with an instant review of what you have done in the form of in-depth feedback.
The analysis helps you determine what to keep your eye on for the next time. You can get a mentor, or become one if you are experienced enough. This way you get help from real people whom you can efficiently communicate with. And that’s surely the best way to learn.
TopCoder is not only one of the most popular coding challenge websites, but also one of the oldest ones. It aged well though since they still keep the site as vibrant as ever. There are a ton of engineers actively participating, and it covers almost the whole world with about 1.5 million members. Apart from coding, it also offers contests in algorithms, SQL, web design, algebra, and so on. A few times a month, you get a chance to get into full competitive mode and see whether you can solve tasks quickly and accurately.
The user at the top of the ladder gets their own blog, where they get to write about math, algorithms, and so on.
Coding challenge sites are definitely one of the best paths to take if you want to practice your coding and get some more experience. You can also compare yourself to other engineers and get some valuable advice from the best ones. Whichever of these 5 sites you choose, you can be sure you’ll thrive as long as you put in enough effort.