Don't get me wrong, making programming a core competency is a novel goal and everyone should do it like everyone should do some chemistry in high school or do a physics project (I for one built an awesome bridge of balsa wood). It is an important skill that people should be exposed to at some point but the idea everyone should 'learn' to do it is a misnomer.