I got this question in a DM and I thought it made for a good community discussion (of course anyone is welcome to make a post like this, but I'm happy to take the mantle for reach).
How do you react in the situation? Is it appropriate to keep going, if so what should you be mindful of?
Oldest comments (79)
Everything already exists. Do it better (figure out first, not self-hype) or pivot but be firm.
Exactly this. Do it better along one dimension:
Yes Michael, 👍 Focus.
They can even merge. Easier to use & more fun can be one thing "better UI".
For example, my comment there is suffering from "reddit syndrome". It's a succinct masterpiece of course, but it is also more popular because it is at the top. The UI is determining content. That is influencing people which is distorting things. It's a sweet sweet comment, but there are better ones in the thread which are lower down the page so getting lower engagement. Later ones too that are better. it's not an easy fix & while devto team was making a polls feature...
Someone came along & built dev.three with the promise of machine learning predictive adaptive personalizing AI comment ranking behavior.
That's basically how it happens. If Goo search slips much more, DDG will really get in. If Chrome doesn't pull itself together, Brave gets in.
"It already exists". Kinda.
Edit, Addendum: If you people make that one my top comment again. @peter 😡
dev.four has comment edit timestamps so you don't end up liking things that people can bait & switch. 🤗
Good point!
I usually follow this rules:
If one of those rules is met, then I'd continue working on it, even if I drop it later.
If others (by contributing/publishing) or me (by learning) have earned anything, it was not vain.
I'd say my answer is that no project is static and you can think of the existing project as similar in this time and place, but you could eventually go in a different direction with the evolution of your project so it's not so bad to duplicate for now.
In terms of learning, duplication isn't so bad either.
If you really do have a finite amount of functionality you are trying to build for a library or framework and the exact same thing already exists and is being maintained well, it is probably an opportunity to get involved in the project that already exists. And if you find you want to take things in a different direction at any point, you can get back to your own idea.
As an entrepreneur I'm actually quite a proponent of a sort of "first replicate, then expand" path in terms of getting into a new space. Replicate doesn't mean generic clone, but you can replicate an existing business model that works before being more "innovative" once you've achieved parity. I think the concept of "replicate then extend" could bode well for any project.
Pizza Hut doesn't stop making pizza just because Domino's already does. Be aware of, and focus on, what differentiates you from the competition.
It's kind of a broad question, to be honest. There are many reasons why you might complete and maintain a similar project. Otherwise, why would you have hundreds of different implementations of graphics editors, source code editors, development frameworks, content management systems, ERPs, accounting software, etc.
One size doesn't fit all.
I would take want to clarify why I'm working on the project. For example, if I was creating a personal portfolio - I could use a template or use some of my own flair. Since it's my own space, I'd probably go with still working on it!
As far as business ideas, if it's already out there - I would see how well it's received, how good of a product it is, and if what I'm doing could improve it to take market share. If not, and the project isn't for learning only, I'd find a new one :)
A fair amount of the things I've made, I started because it already existed and I wanted to have my take on it. Everyone has a unique perspective, and new approaches to old tasks can revolutionize them forever. Stay strong 💗
I feel this!
Yes!
Good point.
You are thinking like an Artist.
Scientists and Hackers (the original concept) try to solve a problem once and reuse knowledge and solutions.
Also remember that it is not only about you. It is about the community that surounds the projects. They will be divided.
Nevertheles, there are always other reasons related to
Project management. For example if the owner of the other project invest few time, reject many changes, etc..
Projects are usually for fun. If it existing is enough to put you off then what were you trying to achieve?
I think that there is no idea that there isn't something at least similar out there, you have to live with it and somewhat reinvent yourself. Take Uber and Lyft for example, Lyft was founded after Uber and they have a lot of similarities, but they reinvented themselves with ideas from each other.
Here in Brazil there were already apps that connect drivers to riders, but mostly it was for taxis, when Uber came with private drivers (taxis are private in a sense, but you get what I mean) and most of the time with cheaper prices (Uber came to here around 2014 World Cup with aggressive discounts to attract visitors who were here for the World Cup and already familiar with Uber and locals alike). The companies already here had to reinvent themselves having private drivers as well as taxis. Uber responded with what is known now as Uber X and payment by cash.
I don't even need to talk about food delivery apps, there is a bunch here and I saw the same in the US when I went there, the details are what differentiate them. The key is to be creative to differentiate yourself somehow.
What would I do if I discovered another site like DevLids?
Since it's a non-commercial project it primarily would not be a big deal. I'd try to get in touch with the author and see what happens. I would try to do the old-fashioned link-exchange, where I link to them and they link to me.
I would definitely keep going since it's not a lot of work and I made lots of nice connections around DevLids, especially on Twitter. And with soon over 400 submitters after a year, it's worth keeping up!
The existence of a similar application can be a positive indicator that there is a market for your idea.
It's absolutely possibly to have similar products for the same market.
From there identify any pain points that you can use to provide a unique angle for your own product that the existing solution doesn't cover.
If anything build it out just for the learning experience.
But it shouldn't be instantly trashed due to another solution's existence. Just look at the signs and see if you can carve out your own piece of that user market.
You continue and finish.Then see how you can make it better.
If it's a money-making project, this is actually a good thing--competition means there's a market, people are willing to buy what you're making. You'll have to stand out in some way, of course, but it's much better to compete for your share of a lively market than to be building the world's best app nobody wants.
If it's a learning project, it doesn't much matter what already exists. There are thousands of to-do apps out there, but I built one anyway and learned a ton in the process.
If it's an open-source, "giving back" project, there's an argument to be made for abandoning your own project and helping out with the existing one. But there are also several examples of people building their own thing--a module bundler, a framework, a functional toolkit--that ended up having a major influence on the future of existing projects, or even overtook them to become the default solution.
Don't give up just because it's been done before. Unoriginality is one of the foundations of creativity.
I've often said...
"Unoriginality is one of the foundations of creativity." 👈🔥 100%.
Good that you have made the attempt of looking for some rule and special cases.
I am with you in that open source project should not be duplicated too much.
Big companies reuse all they propietary software code as much as possible.
We might forget the past but, the fact that we can use opensource projects today was because of the free software community and the preasure they gave to the market.
They could only achieve that because of they phylosophy of build and reuse.
Big companies don't use to make redundant solutions, they just concentrate resources on a good, competitive one.
If the opensource community has twenty projects to make the same thing, that is beauty and very dynamic, but from the economical perspective... "the resources are divided".
Also there are other costs for the community like the increase of second level dependencies with redundant functionality.
So another criteria would be.. Is it a top level (appliance) project or is it one framework that would be used by many projects?
I would say more basic dependencies sould try to don't repeat themselves.
For the propietary software and componentware marketplace it is something different. I would say.. You have the right to push the market but if you don't contribute back to the opensource projects used, a lot of complexity might accumulate in your customizations and the manteniance costs will grow up to the stress point.
If it was my case, i keep forward. At this point of the mankind there are a lot of thing already done, but you can make it better. Example: MySpace and Facebook.
Hehehe, just when you believe you're being a pioneer of the fintech business in your country Facebook announces its Libra coin. In coin-cidence offering all the benefits that you're planning to offer
You should remind yourself to do better research before your next project. Then consider this found project as though you didn't have your own yet. Avoid the fallacy of sunk costs.
If it does what you need, use it. If it doesn't, keep going. Be wart of Not-Invented-Here syndrome, but don't fall for Invented-Here Syndrome.
Some comments may only be visible to logged-in visitors. Sign in to view all comments.