When trying to come up with a new idea for an application, I never actually sit down and brainstorm. Being a one person software development company, there are no others to win over with my idea, it’s only me. Usually I assume that if an idea doesn’t come to me on its own, then it’s not good enough to develop. I am starting to think that this might not be the best way to approach the situation.
I’m going to list out the pros and cons of having a formal brainstorming sessions to generate new app ideas. I’m starting with cons because before writing this blog entry, that’s all I could think of.
Forcefully trying to generate ideas can cause you to come up with something that you won’t actually use on a daily basis. For example, adding bar code scanning to a shopping list app as the way to remove items from the list at the store seems like a great idea. This only becomes a bad idea once you realize how annoying it would be to hand scan every item before you put it in your cart. Most people want to spend less time at the grocery store, not more.
Too many ideas for new software can lead to a mental block of its own. If you maintain a list of these ideas and try to conquer them one by one, it doesn’t leave room for that truly inspirational idea you come up with while riding the bus. Truly great ideas nag at you until you finally push all your other projects to the side to work on them.
The creators of Gowalla or foursquare didn’t think about the infrastructure that would be required to support their location based apps. Nor did they think about the complexity of managing thousands of check-ins every second. Instead they thought about something simple that would be cool, a way to see where your friends were hanging out in real time. Extended brainstorming sessions could lead to complicated and unwieldy solutions to non-existent problems.
Coming up with ideas that you didn’t already have. This one may be obvious, but sometimes we don’t even realize when we are in an idea drought. We sit around for months at a time, working on projects that don’t bring us happiness. Sometimes a full work stop is the only way to actually discover something that would be much more enjoyable to be working on.
It’s easy to forget ideas that you have when encountering a problem that you face daily life. I know that if I don’t write down an idea within a minute of having it, I usually forget it until the next time the same problem occurs. I now try to keep every app idea I have, no matter how small, in an Evernote note.
Not to be confused with complicated ideas, creative ideas are still simple solutions to problems that we encounter ever day. These problems don’t have obvious solutions that smack us in the face when we encounter them. The idea for Exit Strategy NYC didn’t come to its creators the first time they rode on the subway, but rather after many hours lost to sub-optimal exit choosing.
Brainstorming of new ideas isn’t to be confused with critically thinking about an idea you’ve already come up with. I am a huge fan of spending hours writing out features that the prospective app will contain and critiquing them. It is much easier and faster to fix problems in the early design rather than trying to correct those problems at the end.
If you have any opinions on application idea brainstorming, please post them below. I’d really like to hear how other developers handle generating new ideas!