Software Development and Creativity
What is Creativity
Lightbulb (flickr: Julius Narkunas)
Don’t think. Thinking is the enemy of creativity. It’s self-conscious, and anything self-conscious is lousy. You can’t try to do things. You simply must do things. – Ray Bradbury
A hunch is creativity trying to tell you something. – Frank Capra
What does creativity have to do with software development – actually a lot. Software development is the process of creating software solutions that have never before been created. If your solution has already been created, then you shouldn’t be doing it because you are either plagiarizing, or you are needlessly reproducing work that you should be reusing. Not only should your work be original, it should also be useful. Clearly if you are creating something that has never before been created, you are well… doing something creative, and thus knowing how to be creative is clearly a good thing. But before discussing creativity as it applied to software we must first set a foundation and define what creativity is.
Creativity is more than just being different. Anybody can be plain weird; that’s easy. What’s hard is to be as simple as Bach. Making the simple, awesomely simple, that’s creativity. – Charles Mingus
There is nothing new in the world. Actually there is very little that is new, and the things that many of us consider to be new are not in fact new. The iPhone at its introduction contained little, if anything that was truly new. There is no denying that the iPhone was a revolutionary product when it was introduced, but its genesis was that of evolution, not revolution. Wireless phones, digital cameras, touch screens, GUIs, MP3 players, SMS clients, and installable applications have all been around for years. What the iPhone brought us that was new, was the combination of all of the aforementioned technologies (and more) in a way that had previously never been seen. There were countless other things that could have been included in the iPhone, and many devices already included most of what the iPhone offered. In fact as a phone, the iPhone wasn’t even a particularly good phone. What made it unique was there was so much capability in one package, and it was so elegant and simple to use. Examine innovation in any field be it art, science, theatre, and even software, and you will find that most great innovations were mostly evolutionary, not revolutionary.
So what is creativity? Creativity is a difficult thing to define. You can’t see it, hear it or measure it in any way, yet we know it exists and we often (not always) recognize and appreciate its results. It is that bright light bulb that pierces the darkness, illuminating a solution that is often so simple that you wonder how it could have ever been overlooked. But these solutions are overlooked every day, and it is because we all view the world with our own set of filters that prevents us from seeing what other see.
Many people believe that so called “Creative People” dream up new ideas and new products out of the blue. While that may be true in a few rare cases, it is remarkably uncommon. Creativity is the process of breaking out of established patterns. It is an accretive process that builds upon the many innovations that have already occurred over the millennia. It is the reorganization, recombination or reinterpretation of any number of entities, concepts or ideas [elements] either by altering, removing, or adding new elements to the existing set in new and different ways. The result is something unique and previously unknown to the person or people creating it. It has nothing to do with aesthetics, practicality, usefulness, whether or not you or someone else likes or dislikes the results or even whether or not it has already been done by someone else. All that matters is that it is different than what was previously known to the creator. What is created does not even need to be manifested in the physical world. Physical manifestation is only evidence to the rest of the world of the uniqueness of the creative idea.
Picasso did not invent paint, canvas or even the techniques for laying paint onto canvas. Instead, he simply asked “What if on a single two dimensional canvas I could represent more than one view of a person or object?” Monet’s failing eyesight caused him to use larger blocks of colour so that he could actually see what he was painting. The principles of flight were well known long before the Wright Brothers first took to the air. What they did was find the right combination of bicycle parts, weight, wing surface, engine power, wood and canvas and the right balance point to make the first flight possible. Edison’s introduction of the light bulb to the world was no different. There were actually many people working on the creation of artificial light starting with Joseph Swan who obtained a UK patent for the first light bulb in 1860. Canadian Henry Woodward created his own version and obtained a US patent in 1874. Woodward’s invention was considered crazy in Canada and he sold the patent to Edison who saw the commercial potential and refined the design so that it became a viable product. There is no question that each of these individuals were highly creative and innovative people who were able arrive at solutions that had eluded so many. None of these creations rose out of nothing. It was their specific and unique organization of elements in a way that allowed them to arrive at the solution that had eluded so many that made them successful.
Creativity has more to do with the elimination of the inessential than with inventing something new. – Helmut Jahn
It is one thing to be creative, but is another thing to create something that is unique and also useful or wanted. We live in a hyper-competitive world where the race to have the next creative innovation has become extremely intense. Hundreds of billions of dollars are spent worldwide every year on R&D. Even with so much effort being expended by so many organizations, and with creativity itself being nothing more than discovering new combinations of existing elements, it is clear that creativity – the ability to find that magic combination that is both unique and wanted or needed is very difficult, and something that few of us do well.
Vincent Van Gogh was unable to sell a single painting while he was alive, but seven of his paintings are now among the 40 most expensive paintings ever sold at auction. Pablo Picasso with ten of the top 40 is the only artist to have more. Together, these two masters hold 17 of the top 40 spots – nearly half of the total. Two people are creators of nearly half of the 40 most valued pieces of art in history (at least the ones that have come to auction). So why was Picasso’s work revered during his lifetime, and Van Gogh’s work considered near worthless when created, yet now command prices in excess of $100 million. Why do some creative software ideas succeed, while most never see the light of day? In Van Gogh’s case, his timing was just lousy; the world was not ready for his kind of creativity. No doubt timing can also be lousy for technology innovators; Apple failed with the Newton and succeeded with the iPhone. Business factors are certainly relevant, but putting business factors aside, most creative efforts that do not catch on are because the idea is just not sufficiently useful to enough people. Sometimes timing is the issue, but more often than not, the idea is just not of value. The difference between the two is Productive Creativity.
People who are productively creative focus their effort on bringing something of value to the market. Van Gogh and Picasso were both brilliant artists, and each was passionate about his own work. While Van Gogh did not understand how to convert his brilliant paintings into a commercial success (spending time in an asylum and cutting off part of his own ear didn’t help); Picasso did. Certainly there are also artists with little or no artistic talent who understand how to commercialize their work, and some with neither talent or business acumen. Parallels can be drawn with software developers because in many respects, software development is at the intersection of Art and Commerce. Sadly, this intersection is not understood or appreciated as such. I have also encountered more than a few brilliant developers whose contributions are marginalized because they didn’t know how to frame their ideas in a business context or because the business itself regards that software development as purely a technology effort with no art involved. To some degree, I think this attitude is because software development entered the world in large corporations to run payrolls, manage accounts receivable and many other important, but nonetheless mundane tasks. Software development now has very little to do with the data centres, servers and networking that enables it and has more to do with things like human perception, human cognition, language, ontology and taxonomy. Software development is the art of abstraction of things, processes and interactions in the real world into structures in code resembling sentences, paragraphs and chapters of a book. There is an infinite number of ways to develop any software application and none of them are either right or wrong unless the numbers don’t add up. Product Creativity is the art of figuring out ways to create software that are better than what anyone else creates. Anyone who doubts the importance of creativity and inspiration and its intersection with commerce need only look at the mobile space where the Android and iPhone platform each have more than 200,000 unique and innovative applications available.
Fostering Creativity in Your Team
But the person who scored well on an SAT will not necessarily be the best doctor or the best lawyer or the best businessman. These tests do not measure character, leadership, creativity, perseverance. – William J. Wilson
The truly creative people in this world are the outliers – they are rare. They are not identified by résumés that say they have ten years of Java experience, or perhaps the equivalent in .Net. These are simply measures indicating that they continued to show up for work each day. Sadly, these metrics are the primary filters used when recruiters and HR specialists begin the search process. The creative people you want on your team are unique in their ability to see the world differently from the rest of us. That unique vision is essential, but it is not enough. What is also needed is the ability to practically apply that unique vision within the structure and processes that are necessary to support the act of developing complex software projects. To be certain, an important part of that is experience. Very experienced people have a body of knowledge that gives them a distinct advantage over less experienced individuals, but the very filters we tend to use end up filtering out the people with the more important broad experience in favour of people with less useful narrow experience.
And it has become a kind of a truism in the study of creativity that you can’t be creating anything with less than 10 years of technical knowledge immersion in a particular field. – Mihaly Csikszentmihalyi
I don’t entirely agree with the previous quote because there are people who have decades of experience who will never be creative, and there are those who simply “get it” far sooner than most. That being said, a sound technical background is important – not measured in years, but measured in how they’ve used their experience to innovate. Sometimes lack of experience can even be an advantage because the lack of preconceived notions can make obvious solutions that are missed by people who are used to the status quo. Experience inherently builds patterns of efficient behaviour; creativity necessitates the breaking of patterns. Understanding “why” leads to new solutions; just knowing “how” simply leads to more of the same.
Not only is it important to find and hire people who develop productive creative solutions, you need to provide them with an environment where they can be productively creative. The onus for this is on your company and on you as the person leading the team. Finding the unique combination of elements that produces the innovative new solutions requires experimentation. Experimentation means trial and error, and thus some of what is attempted will not work. Many corporations discourage such things, but if you and your organization really do want to innovate, there is no alternative path. Innovation does not come from process, protocol, structure, long status meetings or administrative trivia. While structure and process are important (without them anarchy reigns), do your best to free your team from such things and instead, spend that time experimenting and innovating. The benefits will far outweigh any any that could come out of the meetings and administrative noise. Help your team by giving them some structure within which to succeed. Set some objectives for them such as each team member must present their innovation work once per quarter to the whole team. It’s amazing what this kind of peer pressure can produce. It can create a competitive environment where each team member tries to produce the best they can dream up. You will be amazed at what comes out of this.
If creative people are rare, the person who can be creative and function well within a structured process is even rarer. To their great loss, many organizations also have a difficult time working with creative people. Some companies fear creativity, and some simply don’t want anything to do with it. I’ve had conversations with several recruiters who say that employers have come to them and said “Please don’t send me anyone with ideas. I just want someone who is going to sit in his/her seat and program what I tell them to.” Without a doubt, there are other companies that are innovating, while companies like these stagnate and die. If you’ve gotten this far in the article, you are clearly not of that mind, so what do you do?
Here are some things you can do:
- Try to find and hire those creative geniuses. I would rather have a small team of inspired out of the box thinkers that may be hard to manage than a team of drones. My team of creative geniuses will be more work for me to manage, but we will always finish first, and we will always have the best solution.
- Make your team as diverse as possible. Try to find the best group of people possible that includes the broadest range of backgrounds as possible. Mix Java programmers with .Net programmers; seasoned pros with the kid just out of school; web developers with main framers; and financial application developers with smart phone developers. The greater the diversity, the more ideas people will be able to bring to the table.
- Look for people to bring into your team with backgrounds in something completely different like art, literature, philosophy, music or languages. The more things they have done (particularly creative things) the more ideas, unique approaches and experience they have to offer. They still need to be excellent programmers, but excellent programmers with a broader range of experience have more to bring to the creativity table.
- When hiring your team, pay little attention to things like the number of years a person has spent with a particular technology or worked in a particular industry. Instead, ask them about their innovations and inventions. Find out what they’ve dreamed and created, and why it was successful and what they’ve learned from the things that were not successful. When asking questions like this during an interview, be sure that you explain why. People are trained to filter their responses in interviews to provide what they think the corporation is looking for. Rarely is creativity one of those things, so help your candidates help you to uncover their creative talents.
- Give creativity a home and a place to thrive. Creativity is a fragile thing that must be nurtured. Give your team one afternoon per week where they get to work on their own idea. Even better, give them an entire day each week. What they produce must be related to the business you are in, and they must present their idea to the rest of your team for possible inclusion in your project, or maybe something entirely new. Either way, it must be something its creator believes has value to the group and the organization as a whole. Celebrate the successes, and have some fun (not ridicule) with the ones that are odd or off the wall. Countless studies have shown that the companies that formally support creativity through such programs are consistently the ones with the best new idea, the highest productivity, and the best morale. Google is one of them. If you are running an Agile team – actually any development team, then schedule the creative time. The work that comes out of this time is important (it could be the big break your company needs), so don’t let all of the other urgent things encroach on it.
- Encourage experimentation, and yes, failure. Most organizations tend to have little tolerance for failure of any sort, and this causes people to take the safe route, to not experiment, and to not be creative. Failure means that something new was tried, and not all new things succeed. If nothing new is tried, then all you are doing is repeating what you’ve already done, and you can bet that while you continue to do the same thing, the competition will be innovating while you are not. Minimize the downside potential of the failure by limiting the scope of what is being attempted to a series of smaller pieces that can each be assessed to determine if continuing down that path is worthwhile.
- Always ask Why, and then ask Why again. Keep peeling back the layers of onion until you find the real Why. You will often find that this makes the right solution evident, and this will provide your How.
Clearly the companies that innovate are the ones that win. This is especially true in the field of technology. For a company to be innovative requires both innovative people, and a company that encourages and even helps their people to be innovative and creative. This means you as a manager need to hire the best, most productively creative people you can find, and you need to create an environment in which they can be creative. Do this and your company has a decent chance of being a leader; not doing this means that you and your company will always be followers.
As always, I look forward to your comments.
I am an independent consultant who has been leading software teams, designing, building and delivering software for nearly three decades. It’s still as exciting and enjoyable for me today as at was when I wrote my very first Hello World program and saw it spring to life in front of me.