This is an interesting discussion, and there are many points that I need to think about.
Just to chime in with my own ideas:
1. Regarding the "use" of computers (the confusion that comes with word use being graphically illustrated here ;), I agree with both of you. I think that it's not really necessary for every person to know how to code, but it's worth having a basic understanding of how a computer works. For example, there's a teacher at my school who came to me frantic because her iPad wasn't working with an app she often uses in her classroom. I:
- Restarted the app
- Checked that she'd signed in properly
- Checked her app store to find that she had 87 pending updates, including several for the app in question
- Downloaded the update and handed her the "fixed" iPad
That didn't require coding knowledge, but I think that's what the article is getting at: even if you can't code, you should be able to troubleshoot. It's the difference between being able to take apart a car engine (I can't) and pump your own gas, check your own oil, and know what all the buttons and dials on your dashboard do/indicate (I do, and if I don't, I look them up).
Digital literacy is becoming so important these days. In the MOOC I just finished at Coursera, they made a really neat observation about how students who use technology to further learning are usually the ones who have that modeled for them -- their parents use technology to learn or work, or their teachers do. The kids who use it "just for fun" are similarly the ones who have it modeled for them, usually by parents or friends.
So sadly, I think we have a cycle of technological illiteracy that will last until we start deliberately teaching this sort of problem solving/troubleshooting in school.