Duolingo cannot do Mandarin, but there's very much alike and free http://chinese-skill.com/cs.html [only for android/ios].
IMHO there is obvious parallel here — “average person”-proficiency driving isn't that difficult at all. As well as writing some average buggy code. The truth is both of them are utterly crap at what they do and both are easily forgiven for errors.
Duolingo cannot do Mandarin, but there's very much alike and free http://chinese-skill.com/cs.html [only for android/ios].