There is a restaurant in my neighborhood that has been around since 1922. They serve the most delicious Indian food you could possibly get. When I want to pick up some food to-go that is my default destination.
When I am with my office colleagues or people who I do not know really well however, I might choose a different place with a brighter ambiance.
The restaurant owners don't worry as much about opening an Italian restaurant in the same block where there is another Italian restaurant because they know that there are so many things that sets each restaurant apart from the other one.
The dishes you serve. The chefs you hire. The ambiance you create. Your menu. Your price. Your secret ingredients.
Even the kind of people who eat (or hang out) at your restaurant can be a deciding factor into who else eats there.
Every single factor complements every other one to decide who walks into your restaurant on a Sunday evening.
And invariably, each restaurant that stays around finds it's own niche and enough customers to keep going, within the couple of years of it's inception.
Software programmers, it seems, are different than restaurant owners.
We obsess about if our idea has already been built. And if we stumble upon someone who is doing something even remotely close to our idea we quit building stuff. We bitch and moan about all ideas having been taken. "Anything worth building has been already built", you say. "I had a great idea once, but there were already two huge companies out there doing exactly what I had thought of".
That's like saying that there is already an Italian restaurant round the corner and that means there is no room for my restaurant, even if I can serve the most delicious, thin crust crispy pizzas and build an ambiance where young college students will love spending evenings. So what if the other Italian restaurant does deep dish pizzas and caters to families.
When you think of building something, the only essential question you need to ask yourself is not if someone else is already working on the problem. The only essential question you need to ask yourself is, can you see the problem from a completely different perspective.
Can you add a little bit of you, to your solution?
The user interface, the feel, the number of clicks, the features (and even the non features), the people who hang out on your website, the niche, people who build your website, how your website feels. Just like the restaurant business, there are way too many factors that complement way too many other factors, which will decide who logs on to your site on a Friday evening. Can you tweak just one or two factors really hard to make your website stand out.
If you can, you should think of serving us your delicious crispy fresh software or service.
You don't need everyone. Just a few of us will keep your site (and your organization) going.
Go on. Start something, even if someone else is already doing it.
If you do it well, if you do it differently and if you keep doing it with consistency, we will come and we will keep coming.
I wish you good luck.