This is one of the better definitions of art that I have come across:
"Painting is a craft. Interactive design is a craft. Writing is a craft. Art is merely craft applied with conscience and care."
From Greg Costikyan.
For years I've been struggling with the idea.. is programming is an art or not? I've been switching back and forth between yes and no, and I'm still undecided.