The Werewolf of Invisibility
Updated: Feb 2, 2019
Like my GRASPnetwork colleague Guenter writing here in his blog post of 26 March 2018, I fell under the spell of computer software in my college years in Berkeley, California. If architecture was frozen music for Goethe, then software is frozen imagination. That’s hard to resist.But it’s also hard to do – and the more I worked with it, the more I realized (along with everybody else) how hard it really was. In his blog post, Guenter alluded to the problems and their causes. I’d like to say a bit more now about where this all came from.By the mid-1980s, when Guenter was building up his software company, there was a full-blown crisis in the software industry. Software projects that seemed tame and simple would suddenly morph into horrifying werewolves that terrorized their developers with missed schedules and defective products. Everybody was hoping desperately for a silver bullet to slay the werewolf.Then, in 1987, along came Fred Brooks, who laid it all out for us in a landmark essay: there was No Silver Bullet – and there never would be.
Brooks reached back to the philosophy of Aristotle to explain the problem to us in a way nobody had quite considered before. He divided the difficulties in software development into two categories: the essential (those inherent to the nature of software itself) and the accidental (those that are associated with producing software, like having a bad programming language, but not essential to the nature of software). The accidental difficulties can be managed (you can use a better programming language). But the essential difficulties will never go away – they will be with us forever. Now that’s frightening.So, what are these “essential difficulties” of software that Brooks described? Well, one of them is complexity. Some of the best minds in the world have stated that nothing – nothing – so complex has ever been undertaken by humans. It is an “intellectual challenge without precedent in the cultural history of mankind.” Brooks named other essential difficulties, too, like the infinite changeability of software.But I’d like to dwell on one in particular he named, the one we care about: invisibility. Here’s Brooks again: “Software is invisible and unvisualizable. The reality of software is not inherently embedded in space. In spite of progress in restricting and simplifying the structures of software, they remain inherently unvisualizable, thus depriving the mind of some of its most powerful conceptual tools. This lack not only impedes the process of design within one mind, it severely hinders communication among minds.”When No Silver Bullet was published, the evident truth of his analysis came crashing down on the software development community, causing not a few bouts of depression, but at least it only affected a small segment of society.Until it didn’t.As Peter Thiel famously said, “We were promised flying cars, and instead we got 140 characters.” It turned out that the great advances of the last decades weren’t the visible ones (although we may still get those flying cars), but the invisible ones. All around us, everyday life is dematerializing – thanks in large part to the immaterial services offered by our invisible software. In the 1980s we had Madonna, the Material Girl; today we have Her, the Immaterial Girl. Now the werewolf is stalking all of us, all the time. Now we have no choice: we must find a way to cope. We must find a way to communicate in this new immaterial context.Brooks himself suggested a path forward in that same essay: “The central question of how to improve the software art centers, as it always has, on people. Software construction is a creative process. [The most creative minds produce the best software.] The differences are not minor – it is rather like Salieri and Mozart.” Note what he is saying here: dealing with our invisible, immaterial software is a creative, human experience, an art.Is it out of place to mention art in this context? Not at all. It has always been the job of art to study the human experience. It has always been the job of art to open alternative channels of communication. Nor is it odd to see a mention of Mozart. There has always been an affinity between software creatives and music. The Pulitzer Prize-winning book Gödel, Escher, Bach was written by computer scientist Douglas Hofstadter. Artificial intelligence pioneer Marvin Minsky was an accomplished musician. A friend of Minsky noted that his favorite composer was Beethoven: “That says something. You cannot truly appreciate Beethoven if you cannot embrace emotion.”So one of our greatest rational minds had a great respect for emotion. In fact, Minsky wrote in Music, Mind, and Meaning that “I think that the problems [of reason and emotion] are the same.”Software, invisibility, communication, art, creativity, emotion, the human experience – to paraphrase Hofstadter, we in the GRASPnetwork also think that there is a thread that weaves its way through all of these concepts. Brooks taught us that the immaterial experience being driven by software today is a product of human creativity, and that is where we can look for solutions to its difficulties. Minsky taught us that reason and emotion go hand in hand. We believe that art, with its emotional power and ability to illuminate the human experience, opens another important channel of communication among minds, and therefore can open another path to coping with our dematerializing world. We might not quite slay the werewolf, but we might at least give him fewer occasions to come to visit.