Yes, but the coding part is usually the easiest party about being a programmer. All the other skills and knowledge you mention are what makes me far more valuable than when I started 14 years ago.
I think there is a huge distinction between learning how to program, and becoming a valuable programmer. We need to decrease the barrier to entry, so that the more valuable skills (such as abstraction, optimization, security, etc.) are reachable for everyone and anyone.