High Performance People
“Imagination is more important than knowledge.” Albert Einstein
Software development is an inherently human endeavour. It is not a process (although process helps), and it is not a science (although science also helps). If it simply were a process, then anyone could in a very short period of time learn to do it. If it were a science, you could give the same problem to a dozen programmers to solve and you would get the same results from each of them. Experience tells us that neither of these things is in fact true. If it is not a process, and it is not a science, then what is it? Before answering that, consider that no two software solutions are ever alike – or at least they shouldn’t be. If you find that you are creating a software solution that is exactly like something else that already exists, you should seriously reconsider what you are doing because either you are either a) infringing on someone else’s copyright or patent or b) wasting time and money solving a problem that someone else has already solved. Implicitly this means that for each new project you begin, you must “create” a new solution. In other words, you are dreaming up a new way to solve a problem. This means that to “create” a new solution, you need – well… creativity. Creativity is an intangible. It is highly unique to each individual. It cannot be measured and for the most part cannot be taught. We often refer to this intangible as art. Read More










Software Development and Creativity
What is Creativity
Lightbulb (flickr: yikerlarooni )
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 Read More »