I wonder if programming should be taught the same way. Not with writing programs. But reading real ones that you use every day.
You'd have to be careful about what programs you start a beginner with, but I think their might be value to this approach. I at least know I have reached the point in my own development where I learn more from reading others code than I do from reading textbooks. And learning to read others code, trace through programs, etc. is an incredibly important skill that I think is blatantly overlooked in most introductory level books on programming.