Here's a common example: Have you ever met someone when you were out walking in a mall, in a business meeting or a school reunion that you recognize but you can't recall his or her name at the moment? That's weird isn't it? You recognize the person, you know that you've met that person in the past and you can even recall memories where you've interacted before. The weird thing is you know that you know his or her name, but at that moment you don't know what that name is. After situations like that, sometimes after a few minutes or hours the name just pops up in your mind, or sometimes it takes longer or even not at all.
The internet, search engines, communities, social networks, games: Can you come up with THE next great idea or concept? The good news is that most people in technical industries have a great deal of untapped potential when it comes to coming up with new ideas. Here are some tips and techniques to unlock that potential.
Tuesday, December 21, 2010
The model of your mind
Here's a common example: Have you ever met someone when you were out walking in a mall, in a business meeting or a school reunion that you recognize but you can't recall his or her name at the moment? That's weird isn't it? You recognize the person, you know that you've met that person in the past and you can even recall memories where you've interacted before. The weird thing is you know that you know his or her name, but at that moment you don't know what that name is. After situations like that, sometimes after a few minutes or hours the name just pops up in your mind, or sometimes it takes longer or even not at all.
Sunday, October 31, 2010
What to expect with these tips and techniques
What gives you the right to teach these techniques?
Have you gotten rich from any of your ideas?
Will I get an idea on how to be richer than Bill Gates?
Will these techniques work every time?
...
Let's clear it up. These are tips and techniques I've learned through the years primarily because when I was Head of Research and Development, I've had to try to find ways of answering the question "So what new ideas do you guys have now?" consistently. These are techniques I've used myself and these are techniques I've taught to others as well. These are the ones I've found to help software developers answer questions like the above more easily.
It doesn't guarantee that you will be richer than Bill Gates, or that it will help you find the next great idea that will shake the world. Everyone has different creative abilities, so the results will vary. What I can say for sure is that because of the way software developers train and work, these abilities are not being tapped. And these techniques are the ones that actually help software developers use more of their creative abilities.
Through the years what I can say is that these techniques have helped a number of people solve problems, come up with ideas and create new products. Some of these products have been successful while others have not.
Getting rich from an idea? I can't guarantee that part. It's still a long process and we're not going to tackle that But before the process can start you have to find and believe in an idea, and that's what these techniques are about.
Saturday, October 30, 2010
Exercise # 1: The Magic Laptop!
Let’s try a simple exercise in imagination. Imagine you have a magic laptop in front of you. The magic laptop can give you an answer to any question you have in mind. It's also voice activated so you can command it by just speaking. The screen is now blank and any answers the magic laptop gives will just appear on the screen. Now give the magic laptop this command: "Show me how I can be richer than Bill Gates." Imagine looking at the blank screen. What does the screen show? Does anything popup?
Well? Did the magic laptop show you the answer? Ha ha ha. :-)
As far as I know, there’s no such thing in reality as a magic laptop that can give you all the answers. This type of exercise, however, is important in creative thinking. It forces you to think in a manner that your conscious logical mind isn't used to.
Here are some questions that you need to ask when you first tried this exercise:
1. What did you feel / think when you first read the description of the exercise? Did you think along the lines of "What the heck? This doesn't make any sense." "What's a magic laptop look like?"
2. When you were made to ask the magic laptop a question, how did you feel / think? Did it feel weird even in your imagination that you're asking such a ludicrous question to a magic laptop?
3. What did you feel / think about the question itself? Did you feel the question was "too big"?
4. What did you see in the screen after you asked the question? What were you feeling / thinking then? Did anything pop up in the screen? Did you notice yourself thinking or asking yourself about what should appear in the screen?
There are no right or wrong answers to any of the above questions. The important thing is that you become aware of what you feel and think at the time. We will be doing more of these types of exercises later and don't worry, there will be explanations to follow.
Aren't software developers creative already?
The better news is that software developers still have a lot of room to grow in terms of creativity. There's that part of the brain that software developers aren't usually trained to use. Because of the nature of software development itself, people are trained to be logical and analytic in the industry. System analysis and design, computer programming, software testing and other tasks mainly require a systematic and logical way of thinking.
There were two types of questions we were faced back in my days in research and development:
1. There's a problem. How do we solve it?
2. Have you come up with any new ideas that will be useful?
The first type of question is what software developers face day to day. Design a computerized system for a company's new division, upgrade a banking system, implement a video game, etc. etc. These are the types of things software developers are trained for.
The second type is more difficult. But we have seen ideas developed that have a great impact in the industry like the internet, the world wide web, search engines, social networks and many others. So who had these ideas? People in the software development industry of course!
Almost everyone takes it for granted that such ideas and developments will always be produced by someone in the industry as time goes on. But the hitch is, most people don't believe they have the ability to come up with those ideas. I disagree with that. What I believe in is that a lot of great ideas are present in the minds of many people, but they just don't recognize it. They just need to be trained to be conscious of these ideas that they may have, and that's usually the training that's not normally provided in the industry.
Tuesday, October 26, 2010
The Beginning ...
I just realized I've been a software developer for more than a quarter of a century! After all these years I sure can say that there seems to be no end to all the new stuff being created. Just when you think technology is at a peak, something new comes up that wows the entire world.
I have done a lot of technical training before but recently I found myself giving more and more talks on the topic of creative thinking and problem solving in software development. I now offer this as a full seminar and workshop but I've also decided to write this blog as well in order to share to share the techniques I've learned through the years to everyone who may be interested in it.
This all started in 1997 when I started work in an animation company as Head of Research and Development. It was a great job for me since I'm a natural tinkerer and I enjoy looking into new technologies, but when the company grew and I had to hire programmers to work in my department, there was a question that I kept asking myself. The question was "How do I give the members of the team the skills to fulfill the department's mission?" In my boss's terms, the department's mission was simple: "Come up with new ideas to make the things we do better, faster or cheaper."
There were a number of techniques that we used from time to time to help the creative process, like brainstorming, for example. All of these techniques were helpful in some way. The great thing was during that time I worked with both software developers and artists and that was when I realized something.
The artists were able to pull ideas from thin air much faster and easier than software developers. It didn't mean the ideas were better or worse, it was just faster. For example, I ask people from both groups to draw a box. I asked the software developers how they came up with their idea. They said they'd have thoughts of size, type of material, etc. before drawing the box. I asked artists about their process and it's basically "Well, it's the first thing that popped into my head".
Software developers, because of the nature of their training and work have a logical "voice" that kicks in during their thought processes. This is of course a necessary skill that we use in our work, but I also found that a lot of times this auto-censors and prevents certain ideas from coming through.
Because of that I started to develop some simple exercises and techniques tailored to the way software developers work to help my team use more of their creative abilitie. So how do these techniques that I'll write about complement all the other creative thinking techniques out there?
Imagine if creative thinking were a sport like basketball. If in creative thinking, there are techniques like brainstorming, mindmapping, storyboarding, etc. then in basketball these would be the equivalent of techniques like jump shots, lay-ups, dunks, free throws. But in basketball, there are things a player needs to do in order to improve a technique like a dunk. If the player is fat then the player needs to diet. If the player is skinny, the player should do weights to improve the lower body's muscles in order to be able to jump higher.
The techniques I teach are more of the latter class of techniques. These are various methods tailored to the way a software developer / programmer normally works, that improve the results when they do brainstorming, mindmapping, storyboarding or some other existing creative thinking or problem solving technique.
