Every now and then we come across articles, anecdotes or even a phrase on the internet comparing software development to art. “It’s closer to art than to science”, they say. But are there really significant points of convergence between art and software development (both traditional and No-Code)? And another question that would be important to try to solve is: Why do we resort to this comparison? What is so appealing about it?
This last question may find an answer in the need to make software development a more attractive field for young people looking for a career path.
For years, traditional programming was linked to archetypes that even today we can recognize. Words like "nerd" were associated with it, and it was mostly white men with great mathematical abilities who approached it (with some exceptions, obviously). So it would not be unreasonable to think that, by trying to compare something historically linked to exact and mathematical processes, to art —which historically has been seen as a more "free" and a less structured exercise—, there was an intention to expand the type of audience that could be interested in software development.
Today we know that, although there are still harmful and outdated stereotypes of what a developer is thought to be, the picture of what a developer can be is now much broader, and it is possible that changes in perspective, such as this comparison between art and programming, have contributed to this expansion. And that must continue to happen!
But are software development and art similar? The answer, like art and programming, is complicated.
It is not easy to answer this question, especially when the meaning of "art" is as elusive as it is polysemic. Do we talk about art as a practice of human expression? Do we talk about art as that which we find in museums and galleries? Do we talk about art as forms of representation of reality?
Let’s suppose we talk about art as that first thing: as a process and practice of human expression. In that sense, is it close to software development?
We know that in traditional programming (and in No-Code as well), rigid, scientific and mathematical procedures must be followed, which at first glance would distance it from the arts, right? And yet, in software development we find an element of artistic expression: individuality. Each development is unique and speaks of how its creator thinks and builds. This can range from how the code is written —if it is traditional programming—, to what combination of programming languages or No-Code tools were used. This whole decision process parallels, for example, how an artist chooses which technique will best represent what a work of art wants to show. Every artist and every developer would have a different look on the matter.
And yet, we cannot claim that one is a reflection of the other, or that development is actually closer to the arts than to the exact sciences, because how could we come to that conclusion with any certainty to begin with?
What we can continue to do is to look more frequently at the other side's field. Not because the grass is greener on the other side, but because new perspectives will always enrich different disciplines and areas of knowledge. And we're not just talking about how art and the humanities enrich development, but how technological advances have enriched the art world. From NFTs (which, although controversial, are what everyone is talking about these days), to ebooks, to digital art. Heck! If it weren't for advances in technology, we wouldn't have had artists like Andy Warhol or even Duchamp. If it wasn’t in part for the invention of cameras, art wouldn’t have shifted to movements like expressionism. And we could be here all day.
At HelloGuru we believe in having teams with different training and different looks, and No-Code brings us closer to design and experimentation (which also happens all the time in art) than ever before!
What about you, are you an artistic developer?