I'm completely addicted to this. Purpose is to write a solution to a coding problem and then iterate on it until you have the most elegant solution possible.
You learn more about your favorite language and get better at giving/receiving feedback.
Besides the TDD approach, what I really liked about it is that it encourages you to solve problems iteratively, on test at a time and when all tests are passing, refactor your code for a better solution.
I've been using it for a week and already received some good advices and made me learn a few things about the Ruby language :)
PlanetScale Boost
Cleft Notes
Bonsai