Humans are good with spatial things.
Now, this guys gets it, but fails to connect it with the original article.
Programming is all about algorithms and numbers, meaning that good programmers will be those who can think in term of algorithms and numbers. And that's the problem.
The examples of pictures and objects to relate algorithms to a spatial model is spot-on. For programming to be accessible by the 'normal' human, it must be made spatial; and not just in explanations, but in practice.
I am sure that many will argue that the nature of programming is numbers and algorithms, so that's just how it is. Not true though. Programming is a layer on top of the physical world (material, time, electrical potential) that maps it to something that can be dealt with logically. Of course the people who did the mapping were those who were smart and thought in terms of numbers and algorithms. This is the first generation of computing though, and though it may last until the end of the human race, I hope not. I would like to see the next generation be a format that is more widely accessible, even if I don't live to actually 'see' it.
There are any number of fuzzy logic problems that the computer will never be better at solving as fast and correctly as a human is, simply because the data will be missing. Everyone who claims that the new robotic car overlords will be better and safer at doing everything for us are hopelessly naive.
I look forward to the day that this post will be dug up from the archives as a jocular look back at how the ludites almost prevented the new age of safe commuting.