Physics of Software
This is something I read recently, that I think sums up rather nicely what programming is:
“The physics of software is not algorithms, data structures, languages and abstractions. These are just tools we make, use, throw away. The real physics of software is the physics of people — specifically, our limitations when it comes to complexity, and our desire to work together to solve large problems in pieces. This is the science of programming: make building blocks that people can understand and use easily, and people will work together to solve the very largest problems.”
~ Peter Hintjens et al., ØMQ - The Guide