Sign up ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free.

Always, when I try to start new project, with what I think new ideas, first of all I search the web to try to find some thing same, most of the time (if not all) I find that my ideas of new project have been implemented hundred of times.

I think everyone in software industry feel this every day. The question is:

  • when should I approve an idea and start building it, although it's implemented hundred of times around the world?
  • how I can make my way in trying of build something new?
share|improve this question
For learning purposes you can start any new project. It also allows you to be better suited to choose a replacement project when you find that you would like to use something else. – user1249 Apr 4 '12 at 7:12
If nobody ever reinvented the wheel, we'd be rolling around with round chiseled rocks on our cars. – Craige Apr 4 '12 at 20:55

7 Answers 7

up vote 11 down vote accepted

In entrepreneurship, there is one basic rule that says this:

  • Make it better or make something new.

The fact there is hundreds of similar projects online is a pretty good news.

Here is an extract of a blog post I wrote on the subject of competition:

It’s true with existing competition, before you enter the market. When I tell my elevator pitch for new venture, most of the time I’m asked something like “but doesn’t it already exist?“. The existence of competition is a pretty good indication that there are fish to catch. If you are fishing and you see many wealthy fishing boats in an area, it’s a wise decision to go there. In fact, in many cases, the market is big enough for everybody. A given market can be under-exploited (new areas to fish) and only a small share is taken because of the lack of alternatives (new ways to fish). Ten years ago leading companies such as Palm, Nokia, Microsoft or RIM released the first smartphones on the market. Apple and Google revolutionised the market just 7 years later capturing 60% market shares alone in less than three years. They did not invent the smartphone, they just did it better and more importantly: differently.

I will take another example you know well: there were many online Q&A for programmers since the 90s, but Stack Exchange was only created ten years later. They did it differently and better then quickly became the leaders.

share|improve this answer
  • When you feel you can do a better job
  • When you want to learn from the experience, rather than just producing the program

Honestly, that's one reason many of us prefer using open source software. We will use it for awhile and then discover there are problems with it that we'd like to fix. Since we have the source code, we can do so.

share|improve this answer
as a sub of better (when existing products are not what you need). e.g. I have bugzilla, but really I just needed google tasks... it's better for what you're doing but not necessarily better in all cases – xenoterracide Apr 3 '12 at 21:29

If your idea is already implemented, you can still try coming up with something new :

  • Change the target, try to make your software available to different people
  • Change the point of view, focus on other sides of the problem (for exemple, SO focuses on the "questions and answers" part of a discussion, whereas a forum will put emphasis on self-expression)
share|improve this answer

I'd like to add :

  • Try to stay up-to-date with the offer/request principle with the nowadays market if your idea is a little bit commercial. I think that "People need, developers provides." and it comes closer to the best/hit/buzz application.
share|improve this answer

If you want to create something new focus on your particular interests and hobbies. If you focus on areas you are familiar with it will be easier to think of new ideas. Plus you will understand the user so it will be easier to dog-food the application.

If you want to create something that makes money, then you need to find a pain point and solve it.

share|improve this answer

There's nothing wrong with reimplementing existing projects/ideas. If you think about it, most of the successful software today is a better implementation of an already existing idea :) So my advice would be: go for it and build anything. If you like and need what you are building, you will create something that other people would want to. Innovate by doing, not by finding something that's not built yet.

share|improve this answer

There has to be one feature existing applications don't have that you want. Build that into a version that has the existing critical features you like and omit the ones you don't.

Inteface it with an application or service. At least you'll learn something about the other app's api.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.