DEV Community

Chaitanya
Chaitanya

Posted on

There's a new Kid in town "The Clone Purgatory"

Hey Folks! I have created a YouTube, Facebook, WhatsApp, Reddit, Twitter, and Snapchat clone!!!

Alt Text

Was this clickbait? Absolutely!! Read on...

TL;DR;
Building clone apps is robbing you opportunity to gain intuition and there is a queen reference at the end.

Before you proceed, this is a huge post. Might easily take 5 min. There is a dangerous trend that nobody is talking about and this has to be said.

Huge Disclaimer:
I appreciate the effort and skill people have in building these clone projects. This is now way trying to undermine the efforts of these folks. This trend is setting a bad example for the community and the individuals themselves.

Start of my Rant:
One of the biggest challenges I had to face when I was getting started with frontend dev was avoiding the tutorial purgatory. I am glad I came out of it and when I am trying to help devs to come out of this, I saw another new challenge... I call it "The clone purgatory"

Recently, I came across a post in this group where someone posted and I try to quote "Why can't I clone Facebook or Instagram and build my product" something like this and he got bashed. If I try to think from his perspective, I would get the same feeling. These clones are almost identical, some are so good that I can hardly tell the difference. This is where the problem starts.

When someone new is getting started with the whole frontend dev and comes across these clones, they would feel "Wow! I can build Facebook in 4 hours.. That's pretty cool". They might proceed and build this and voila... I made Facebook in 4 hours... But, what if I tell you this has not helped you but in-fact "Robbed" you the opportunity to acquire something amazing.

It's Intuition or the "Ahaaa" moment.

This is something very important and critical in your journey as a developer. Without this, you will never be confident about your skills. This is the biggest factor that determines how good of a developer you are.

These big apps that people are making clones of solved one of the biggest problems. If we try to forget the negative sides of it, here's how much impact these products created.

Facebook - Trying to solve the issue of connecting people. I can find my childhood friend and can connect with him... Thanks to Facebook.

YouTube - Provided opportunities for countless people to showcase their skills to millions.
The list goes on. They are popular because "They solved a problem".

When you try to make clones, you cannot clone these achievements. You just robbed yourself of the opportunity to solve something. Now if you tell me you did it for practice, this is not helping you either. These products tried to solve some of the biggest tech problems and you are trying to do that again? If you try to clone something as is you are not learning anything but just trying to validate your coding skills. There are many better ways to do that.

Take a problem statement that motivates you: "I have 1000 images, how can I show them to the user in the fastest and most efficient way". Problem statements like these make you "think", the choice of your library, the choice of your database, stack, all of this helps you gain intuition to solve a problem and by implementing it, not only you solved a problem but also learned a lot in this process. Making mistakes should be part of the process. If you build something already available and solved all the problems, you are robbing yourself of the opportunity to gain this intuition.

If you are motivated by building these clone apps, why stop with that? Why not add your flavor to that.

Something like this?
https://dribbble.com/shots/9383451-Facebook-Redesign

1) How would Facebook look if there was a horizontal slide instead of a vertical?
2) How about auto slideshow that stops whenever you hover on a post.

Problem statements like these will force you to think and gain that intuition. Try to make something unique, that will help you in the longer run.

End of my rant:
Once again, I am making this clear that my intentions were not to undermine the efforts and skill it takes to build these projects. If you can make a replica of Facebook, why waste your skills building the same thing? Why not make something unique. Do you need views, validation? You can still call it a Facebook clone but add your twist to it.

If there is a bohemian rhapsody clone would you listen to it? How about bohemian rhapsody remix? Maybe...TC darling!

Top comments (1)

Collapse
 
yellow1912 profile image
yellow1912

I think most of the clones do not tackle the scaling issue. They can be used as a starting point to get a quick start but may not sustainable growth.