Most recently used programs list not updating
But she's peeking through a pinhole, only seeing a single point in time at any instant. To illustrate what I mean, here are two representations of a trip around my neighborhood, one where the neighborhood itself isn't visible, and one where it is. In the following example, the program flow is plotted on a timeline.
Likewise, guessing the third argument of the "ellipse" function isn't "learning programming". In a modern environment, memorizing the minutia of an API should be as relevant as memorizing times tables.
It offers a set of tutorials based on the Java Script and Processing languages, and features a "live coding" environment, where the program's output updates as the programmer types.
Because my work was cited as an inspiration for the Khan system, I felt I should respond with two thoughts about learning: A live-coding Processing environment addresses neither of these goals.
Alan Perlis wrote, "To understand a program, you must become both the machine and the program." This view is a mistake, and it is this widespread and virulent mistake that keeps programming a difficult and obscure art. We turn it into something that's understandable by people. The programming "environment" is the part that's installed on the computer.
A person is not a machine, and should not be forced to think like one. The programming "language" is the part that's installed in the programmer's head.
Here's a trick question: How do we get people to understand programming?