The Art of Programming
One of the most consolidated misconceptions about programming, since the early days, is the idea that such activity is purely technical, completely exact in nature, like Math and Physics. Computation is exact, but programming is not. The first is a result of a machine operation, and the latter is still a human activity.
Programming requires a lot of creativity, on top of the abstract concepts, tools and techniques that we might learn in a classroom; all that theory represents only a tiny portion of what is necessary to build a great developer.