MIT Scratch is amazing. Much better as an educational tool than CMU Alice -- its 3D-without-gravity environment is unnecessarily complicated yet inaccurate.
I'm surprised no one's been talking about Blockly's educational applications. My professor and I are using it in a course this fall for non-majors, to get them scaffolded through their first coding experience. After all, it lets you generate Python code directly.
It would be interesting to create a full course to teach anyone all the fundamentals of programming without any syntax. They could switch to python or javascript when their ready. However, Google Blockly only seems to support the vary basic control structures of programming but not more advanced parts such as Classes.
If you're interested in using this yourself or just frustrated that you can't see it, check out the library that it's built with, Blockly. It's a really neat way to introduce people to programming, and you can also use it for "real" applications. At my previous job we talked about (but never implemented) a business workflow application using it.