I guess to more simply articulate it, there are levels of creativity. Being tasked with making something function correctly or making a UI look like a psd is more of a technical problem and involves way less creativity than creating something more open-ended like an original work of art. It's like designing a board game vs. being handed the designs and building it.
Disclaimer: Have been writing music for almost 20 years, programming about the same.
"I want a picture"
"I want a picture of a bridge"
"I want a picture of this bridge that I built"
"I want a picture of this bridge that I built, in these colors"
"I want a picture of this bridge that I built, in these colors, from this angle"
"I want a picture of this bridge that I built, in these colors, from this angle, in this scale, made on this canvas, with these materials, painted with oil"
Do you get my point? The creative decisions could be endless, even with restrictions. Sure, not all programming is creative, but that's true about any creative field. Most of it is creative though, or rather, it's as creative as you are.