Those programming challenges are silly, completely unrelated to real-life programming. Staying awake for 24 hs, writing ultra-optimized snippets of code that barely compile with zero documentation. Training exactly the kind of programmer that is useless in any organization except for programming challenges.