Is Software a Science or an Art?
As we approach software today, often through web or mobile applications, people generally appreciate the elegance of the interaction or lack thereof. But as software engineers know, there is a lot going on behind the scenes. Of course, with user interfaces for the masses becoming a necessity for modern applications, designers and more artistic–oriented folks have been contributing to the practice of software development. That leads to the question: Is software more of a science or an art?
Of course, science is based on logic, with a hypothesis, experimentation, results and conclusions based on the outcome. To some degree software fits this role with predetermined algorithms for processing and analyzing information.
However, a strong argument can be made for the artistry in software. Take for instance the wide variety of expression allowed via websites such as Facebook, YouTube and Twitter. These services have empowered user creativity and fostered new forms of communication. If I told you someone was ‘tweeting’ five years ago you’d think they were doing their best bird imitation.
User interfaces in general have more recently adopted a more visceral approach to presentation. Websites are instruments of personal expression. Most popular applications today have a game-like interface or are in fact games themselves. This drives my bias (generally) towards the interpretation that software today is leaning closer to art than science. I wouldn’t have felt that way ten years ago.
What do you think? I’m interested in hearing and responding to your comments.