Ask HN: What do i need to build an instant messeging app from scratch

2 points by Abolfazl ↗ HN
As a young developer I want to know what concepts/technologies are necessary to know fro building a full-featured instant messaging app. Thanks for your answers :)

7 comments

[ 3.2 ms ] story [ 31.7 ms ] thread
It depends on a lot things:

What platform do you want to target? What languages do you know already.

Are you building this IM app as a learning experience? Or are you hoping to compete against the likes of Facebook, Whatsapp, Telegram, Signal etc?

I want to do the server side by Python or Go.

My main concern is building a secure, free and open source platform for messaging.

It's somehow impossible to find a solution that combines both great features and privacy, so it's a good idea to create one.

> a secure, free and open source platform for messaging.

Free and open source is relatively easy, "secure" is a very hard problem

> It's somehow impossible to find a solution that combines both great features and privacy

what great features are missing from the likes of telegram and signal?

Please don't take this personally, I'm not trying to pick holes in your statements, I just want to understand what is driving you to try to build your own IM client.

It's important to realise that 1. There's a lot of competition 2. building something like this is a huge commitment and will take up all of your spare time for at least a number of months 3. People are happy using what they already use

I imagine you're hoping that you'll build an IM client thats free, open, secure, has all the best features of others and respects privacy, and that all of your friends will then switch to using this client.

Getting user traction is perhaps the hardest part of this equation. If you're lucky, you'll build an open, free, working IM which has a handful of the features you want, and you'll convince a few friends to install it. But the majority of the people you know will still use whatsapp, or snapchat, or whatever, and you'll end up splitting your conversations between those apps and this new app that you yourself created.

As always, there's a relevant xkcd comic for this situation, and this is it: https://xkcd.com/927/

> what great features are missing from the likes of telegram and signal?

I miss their features in free ones!

> 1. There's a lot of competition

Maybe it doesn't make sense to you but censorship in my country forces people to jump from a messenger to another frequently. Facebook, Whatsapp, Viber, Line and many others! Attracing people isn't that hard, because people need something good and reliable.

> 2. building something like this is a huge commitment and will take up all of your spare time for at least a number of months

That's right, it's not possible to do anything good in a night!