# The 7 Best Websites for Practicing Programming
NicolasBrondinBernard
Want to practice coding, algorithms, CSS, or even security? I've got just what you need!

Article published on 18/11/2021, last updated on 10/08/2026
CodinGame
Type: Algorithms (all languages)

For me, CodinGame is THE ultimate training platform, notably thanks to these two strengths: gamification and the variety of challenge types.
Most of the exercises are available in the form of games, each with a scenario and a problem you must solve with code. From landing on Mars, to piloting a spaceship, to versus combat games, all the games are incredible.
Among the different types of challenges, you'll find competitions (several hours long with a ranking at the end and possibilities of internships or job offers from partner companies), classic exercises in the form of games, but also "Clash of Code" which are ultra-fast challenges with specific rules (shortest code, fastest code, etc.).
In short, go for it!
Link: https://www.codingame.com/
Codewars
Type: Algorithms (all languages)

The way Codewars works is fairly similar to Codingame, with the difference that the platform doesn't include gamification and instead focuses on tracking your learning progress, which is precisely why it's the preferred platform for certain training centers.
On Codewars, you won't do "challenges" but "katas" as in martial arts, and even though the progress tracking is interesting, the only criticism I could make of the platform is a slight lack of clarity and simplicity in the interface, which sometimes makes navigation a bit tedious.
But it's well worth the effort!
Link: https://www.codewars.com
HackerRank
Type: Global (Databases, Algo, AI, Math, etc.)
It was while searching for database challenges that I came across HackerRank, and I was truly amazed to see the number, but especially the diversity, of the challenges/exercises available!
And for the "Database" challenges alone, you can choose between MySQL, Oracle, and SQL Server to complete each exercise, which gives you a certain amount of freedom!
Go take a look, you'll definitely find something to help you improve on a given topic and compete with everyone else!
Link: https://www.hackerrank.com
Leekwars
Type: Game and Artificial Intelligence

Leekwars is not a gamified training platform, it's purely and simply a competitive game based on programming. The goal is to develop the artificial intelligence of your character yourself (in this case a fighting leek) so that it comes out victorious in its (turn-based) battles against other players' artificial intelligences.
The game is fairly easy to pick up but it increases in complexity with the levels and requires real algorithmic mastery to progress. The language used is specific to the platform, Leekscript, and resembles most dynamically typed languages, so you should be able to manage fairly easily!
Note that the platform is French and was founded by two former students of Epitech and INSA
Link: https://leekwars.com/
CSSBattle
Type: HTML & CSS

The concept of CSSBattle is simple: you must reproduce the example provided by writing your HTML and CSS code identically with as little code as possible.
Your final score will be calculated based on the number of lines of code and the resemblance to the original example, you will then appear in the challenge's overall ranking, and so on.
The site is well designed and works perfectly!
Link: https://cssbattle.dev/
Frontend Mentor
Type: HTML & CSS

Unlike CSSBattle, which trains you to reproduce shapes and graphic layouts simply for the challenge, Frontend Mentor gives you the opportunity to reproduce page and site designs created by designers and submit the result to the community.
This is the closest thing you can find to real-world training conditions for web integration, with designs provided for each screen size.
Frontend Mentor is one of the only front-end training sites that can also let you add content to your portfolio!
Link: https://www.frontendmentor.io/
Root Me
Type: Security

Root Me is quite well recognized in the cybersecurity world because it's a comprehensive training platform with almost 400 challenges spread across many categories and for different levels.
The first exercises are generally very approachable and incorporate essential security concepts, particularly in the web field, and the level rises quickly, with technical documentation to read and concepts to study.
I think that if you want to improve your knowledge of security, this is the go-to platform!
Link: https://www.root-me.org
As a bonus
If you want to improve on technical/theoretical questions, WeLoveDevs (also a blog partner) offers many technical tests for you to practice with, but also to showcase your technical skills directly on your profile: https://welovedevs.com/app/tests (affiliate link)
Complete courses, exercises and certificates to really learn programming!
4.8 average rating
No comments yet