"Khan Academy released their Introduction to Programming modules today and they're really great. Go play. Here are my favorite pieces:
Changes to the code affect the output dynamically.
No rendering, no compiling, no reloading. Change the width parameter of a rectangle in the code and the rectangle changes without any extra effort on your part. You can hover your mouse over any parameter and a slider appears, letting you change that parameter smoothly over a range of values. (Bret Victor modeled this kind of programming environment in his Inventing on Principle talk. Try it out on the tree generator.)
Contrast this with Codeacademy where you have to click "Run" or press "Enter" to see the result of your work. Or just now, when I was working on my front-end web development final project, I would make a change to my code in one window, click over to my web browser in another, and then click "Reload" to see the result. That friction may not sound like much but it often makes programming feel less creative and more mechanical."