I think it's a great analogy--there is little like programming for opening your mind up in certain ways. Big ideas from computer science--more than those from any other single subject--have changed they way I see the world.<p>Of course, I am highly involved in computer science, so its effect on me is disproportionate. However, I think that <i>everyone</i> would benefit from at least a cursory understanding of the big ideas behind CS, particularly abstraction. If I had to choose one, single concept that has affected me more than any other it would be abstraction. Apart from this, the highly logical programming mindset is also healthy. Some of the discipline that comes from writing your ideas in a form even a computer can understand is invaluable.<p>Additionally, programming is a creative endeavor with a very low barrier to entry: this is imperative for certain types of people. In my arrogance, I view myself as a relatively creative individual; however, I am also fairly lazy. I do not think I would have pursued engineering or art nearly to the extent I did programming (I was exposed to all three at relatively early ages) simply because they required so much more. To build something, I would need materials, tools and space; the same is naturally true of drawing a picture. To program all I needed was a computer, and since they were common by the time I was in elementary school, this was not an issue. This allowed me to make cool stuff without going out of my way.<p>Computer science really is something that opens the mind. I fervently believe it should stand with subjects like math and literature, not just for practical reasons but because it is immensely valuable for personal development.