https://www.codingame.com/start I started to solve tasks (in C#) and they become more and more complex. And tasks can have not only 'proper working code' criteria but also 'most short code' or 'most quick code'. Will continue later... Edit: Plus you can participate in contests... Edit: Plus you can select from many languages...