I'm a college student studying Computer Science now, but I've been programming as a hobby for a while now. "Programming" and "understanding computers" are two very different things.
In my humble opinion, any classes taught to the younger folk shouldn't be focused on programming. The classes should teach people what functions computers serve in our society, what limitations they have, what sorts of things are happening at a slightly lower level, etc. Of course, such a class would involve some amount of programming, but programming alone won't teach people all that much about computers.
This sort of class would help give people more realistic expectations out of computers and the people working with computers.