I'm all for free learning tools (if you ignore the donation nag screen every few lessons or so) and admire their dedication to provide this. Using this site is not too bad, but not a top notch experience. The online editor is a bit clunky and doesn't provide niceties like predictive text (so you're copying/pasting variable/function names or having to type them out char by char). There is, however, one fairly major problem: your answers must be literally identical to what the lesson expects, even if your answer is perfectly, functionally correct. For example: I submitted "(var1 + (var2 * var3))", which was reported as incorrect. What was expected was "(var1 + var2 * var3)!! It's a pain as it makes you think you've made a genuine mistake so not particularly conducive to the learning experience.