>A programmer is given a very specific set of tasks (eg. send data from A to B, fix bug, implement X), and his problems are mostly technical.
I don't think this is a fair comparison. This is actually one of those cases where I like the distinction between "programmer" and "coder". What you're describing sounds like a "coder" or a "code monkey," not at all like what I do in my job. If you were to translate this job over to art, it would be something like tracing over lines, making very minor touchups to pre-specified areas, or perhaps mixing paint.
An artist who has complete freedom over their tools and their subjects would best translate to a programmer who also has complete control over their tools and their subject. They are not beholden to a company for specifics, except perhaps that something actually gets built. More likely this is one person who has an idea for a project and designs and implements everything themselves - and spends more time considering what features to add, the best way to add them, or otherwise experimenting with techniques, than actually writing production code.
Programming and coding are the same thing. I think the distinction you were looking for was engineer vs. programmer/coder, and programming is simply the implementation part.
What you described seems more like a managerial role and/or an engineering role that also encompasses product/UI design. In my experience, most of the design work - the actual creative part - is delegated to other people, and the actual implementation of these designs is the task of the engineer. As engineers, we're working on the least creative part.
I don't think this is a fair comparison. This is actually one of those cases where I like the distinction between "programmer" and "coder". What you're describing sounds like a "coder" or a "code monkey," not at all like what I do in my job. If you were to translate this job over to art, it would be something like tracing over lines, making very minor touchups to pre-specified areas, or perhaps mixing paint.
An artist who has complete freedom over their tools and their subjects would best translate to a programmer who also has complete control over their tools and their subject. They are not beholden to a company for specifics, except perhaps that something actually gets built. More likely this is one person who has an idea for a project and designs and implements everything themselves - and spends more time considering what features to add, the best way to add them, or otherwise experimenting with techniques, than actually writing production code.