Quote Originally Posted by Minde View Post
Also, knowing how things work internally helps a lot when you're dealing with, um, upper layers, I guess.
Underlying functionality can be quite separate from the upper layers, so for the most part learning to code won't make you understand a computerised world any better. Also there is a big difference between hobby/academic programming and "professional" programming - the former lacking a lot of the realistic pressures to produce something useful, competitive and on time in an organisation; pressures that greatly influence the end product.

Labcoat best outlined the personal/intellectual benefits of programming.