A programmer friend of mine emailed me a few days ago with a frustration I’ve heard often:
The projects I can think of working on are rather generic (and
probably the low-hanging fruits): File backup/restore, information
storage/retrieval, money management… I can’t seem to figure out how
to find more “niche” problems.
What can I do to find them?
I mulled this over earlier this week while at the Business of Software Conference, listening to some really sharp people talk about different and interesting ways of looking at this business we are in.
Here’s what I came up with:
(Problem / Market ) * (Passion + Disruption) = microISV app.
Problem – This is something that causes a non-programmer pain. Note I said non-programmers. Programmers are not normal people and don’t see the world the way they do. First off, we actually like tech – they do not, unless their friends like it and it’s now been made cool and safe (think iPod and iPhone). Second, we think binary – either this class works or it doesn’t: They do not.
Market – These are the people who have the problem and are ready, willing and able to change. You can’t sell shoes to a man unable to walk and you can’t sell without a 24 month sales cycle, round 2 VC money and a direct sales force an enterprise software system to a HR department already locked into a system.
People are busy and have lots of problems. When problems hurt enough, when the pain, frustration, emotional hurt or self-image damage is enough, that’s when and only when they go to Google looking for a solution.
This relationship between Problem and Market means you need to find a sufficiently painful problem to enough people ready willing and able to change what they are doing now for you to succeed.
Let’s look at the lower half of the equation.
Passion – That’s what you need to have for the Problem. Since you’re not going to get paid (yet) for creating this app to address the Problem, you are going to need a large supply of Passion. Some people for various reasons find money generates passion. Most need something more – like liking the people who have the Problem, wanting to prove to themselves and the world they can write great software. Negative emotions can tank up your Passion tank too – Anger at some dumbass company that sells you something you know could and should be better; Frustration when you are part of that market.
Whatever floats your boat – just keep in mind you’re going to need a lot of it and no matter how horrendous the problem, no matter how large the market, you have to be sold on it first, it has to be something you feel a burning need to do something about. This is a pretty high bar to jump, and why hundreds of millions of people can know about a problem (Darfur comes to mind), but only hundreds will feel the absolute imperative to do something about it.
Finally there’s Disruption. This is the secret weapon in the secret formula. Because we’re programmers we can create tools to solve problems that are not 10% better, but 100 times better. We can disrupt – taking how people did things (the Problem) and recast it in an entirely different way.
Pick 10 apps or web sites you think are really successful. How many of them built their success on disrupting the way things were done before they came along? Every single one of them.
Disruption – called innovation by the suits – is what has driven technology for some 203 years since some bloke mounted a steam engine on a set of wheels running on metal rails and upset the established order.
MicroISVs have the incredible advantage of not having to produce n+1 apps. We are in the disruption business – and very happy to be so.
So when you are mulling what app or web service you should build your microISV around, go find someone’s apple cart to turn over, go find a problem that needs a heathy dose of disruption that gets you excited and energized – that’s the app you should write.