However this weekend I came across brilliant.org and it left me awestruck at the way they have tooled it. Just to give you an example:
1) they have a maze with a robot and a target and kids need to program with simple instructions like move fwd, turn right which kids can assemble and see if their program helps them reach the target.
2) To teach loops and conditions - they have added conditions like [off target, fwd is clear, etc] to tackle complex maize with obstacles...
Now this certainly worked for my kid as she got engrossed in solving the problems. But my highlight was when she assembled her program --> she ran through all the steps like an interpreter would and verify if this would do it right before shooting the "Run" [she did this as I had attached negative TV time with every miss and incentivised with TV time on everytime she gets it right]