When I took computer classes there were plenty of people who just didn't "get it". Pointers and memory addresses seemed to be a major road-block for those people. Of course, with high level languages these days pointers aren't a major concern. My suggestion would be that a computer class is mandatory, with a "Computer Fundamentals" class that just taught a little basic architecture and how to be a smart user for those who don't want to learn programming. Programming really isn't for everyone, but you need to know what a computer is and how to use it to be functional these days.