I have to say something here. Programming as an artform is SOLELY in the arms of the programmer. I'm paid a salary, but with OT incentives. Given that, it's very easy (and a number of the developers I work with do so) to just hack'n'slash your code and produce 100 kinds of crap. On the other hand, if you, within yourself, are an artist, then your code will be beautiful, regardless of whether money is an issue. In fact, having the luxury of being paid hourly, I can see the possibility of taking the time (cause you're getting paid for it) to truly "Do Things Right"(tm). If you're paid salary, then you just want to get things done in the minimum amount of time possible while still looking like you're working the maximum amount of time possible. Thus, you create whatever works and you don't care.
The art in programming, I've found, is in how maintainable you strive to make your code. If you write with that in mind, then you will improve your code and (generally) come up with near-optimal code. If you code solely for speed or memory, there is art in that, but not in the same way. (In my opinion, of course.)