The Art of Software Development
It kind of makes sense to assume that software development is purely a science and developers are these super technical people typing in hieroglyphs. In my opinion, and many others agree with me, software development is more a form of art.
The purpose of software development is in its nature is very scientific. The reason why we build software is to solve a problem, then we iterate and optimize the processes that solved the problem and we keep innovating.
The artistic part of software development comes in the way on how we get to solve the problems. There are many ways to architect the software to solve any given problem, this is where the creativity and methodology of each individual writing the code becomes an art.
Abilities and Perceptions
If I were to ask someone to draw me a picture of a dog, some people might love huskies or rottweilers or golden retrievers. Each person will draw a unique picture not only depending on his/her drawing abilities but also with his/her preferences in a dog. Two people might draw a husky but one could be dark haired and the other one red haired.
Writing a Story
Software development is more like writing a book, each chapter has its own meaning and it is contained but when combined with other chapters they all complement each other. Code should be written in a way that each piece functions independently from each other but together they composed the overall solution. The same process that a writer would use to write a book, a developer should strive to write clean and understandable code, not only being optimized for the computer to run efficiently but also for another developer to read and being able to follow easily. As a book tells a story, code should be written as if you were reading a story book.
I hope that per the examples presented in this post, you can have a better picture of the artistic characteristics of software development. In my opinion software development is an art of doing science.