Hacker News new | ask | show | jobs
by bendtherules 3935 days ago
"WhatsApp doesn’t talk much about its engineering work" - Wrong as hell. They first talked about this in erlang conf about 3 yrs ago, in 2012. [Youtube Link]( https://www.youtube.com/watch?v=wDk6l3tPBuw ).

I hate how tech blogs take a thing thats quite well known and old and spins into a "did you know?" post like it was just unraveled (Oh, maybe your staff just heard about it, doesnt mean no one knows shit.)

2 comments

Reading through comments, I think there is an undercurrent of slight envy or resentment (perhaps unconscious) both towards WhatsApp and Erlang. We are rational people so we'll never admit to that, so it comes out in other objections "It is a simple system", "I could do the backend in a weekend"...

There are a lot of startup people here, who work at a startup, bet their time, money, life? on one, and talking about a successful lean startup sold for 19B probably bring feelings of "How come it is not my startup?".

And then for Erlang, it has different syntax, and have to think about concurrency, functional programming, and it is hard for someone used to curly braces. Maybe many tried it, but dismissed it, or bet (time, money, life?) one something else so it is easy to say "But it is not about the platform or technology". Because other conclusions might mean "heck, maybe I made a mistake, I should have that up as well for my problem domain", nobody like to feel that way. Of course, nevermind that engineers from WhatApp have mentioned Erlang was one of their strategic advantages.

Managing 2-3M connections per machine means needing to have fault tolerance (so Erlang is a good choice), but also means managing an order of magnitude less machines! One of the deeper insights we can learn in general is that at scale no matter how cool the concurrency mechanisms, how fast, and new, if they don't go hand in hand with fault isolation then it will just be a very fast system until it starts crashing and its throughput drops to 0. Of course you can do fault isolation with separate servers and OS processes (containers,VMs...) but in this case they do it at a finer grained level.

They surely excel at picking the right tool for the right job.

One aspect of this trend of resentment you describe is that having comparatively less robust and using less efficient languages (like js with nodejs) in the servers would make them require more cloud resources.

We as humans tend to rationalize our past choices, probably a fair amount of the dismissal is from developers who think their "secret sauce" is using AWS with auto-scaling.

And the only one who wins something from this trend is Jeff Bezos and other cloud shareholders.

I resent them because Whatsapp is terrible, terrible software compared to Facebook Messenger yet somehow made $19B.

1. No web interface, I'm forced to use a tiny mobile keyboard

2. Identity tied to my phone number which changes every month

3. Ugly (subjective)

4. My friends are already on Facebook, why have another service that does the same thing but worse.

5. No chat bubbles.

6. No meme search

I could go on and on. They just got lucky and hit the lotto with foreigners who couldn't afford decent phones and are now locked in to their platform.

Edit: formatting

> 1. No web interface, I'm forced to use a tiny mobile keyboard

Not a problem for most people. On the other hand it works well on pretty much every phone out there. In comparison Facebook messenger runs terribly on my iPhone 4. I'd hate to try and use it on a lower end android phone.

> 2. Identity tied to my phone number which changes every month

I've had the same phone number for over 10 years. Everybody understands and is familiar with phone numbers and have been for a long time. My 70 year old mother has no problems using whatsapp. Many more people have my phone number than have my email address.

> 4. My friends are already on Facebook

Good for you. Many of my friends aren't. Most of my family and relatives aren't. I'm thinking of leaving it myself as it's just a big time waster.

> I resent them because Whatsapp is terrible, terrible software compared to Facebook Messenger yet somehow made $19B.

Except it's really only bad for your particular use case. For most people Facebook messenger was late to the party and doesn't have any real draw.

Facebook messenger still doesn't have basic functionality I want. For example if I scroll to a particular point in a chat conversation and later come back to the conversation FB Messenger has not kept my scroll position. Basic basic usability problems.

> For most people Facebook messenger was late to the party and doesn't have any real draw.

Facebook Messenger has been around since the launch of Facebook. I've personally been using it over 7 years in various forms. WhatsApp is the one that was late to the party.

> On the other hand it works well on pretty much every phone out there.

Of course it does, because it has no features. You can't send money with it, you can't send stickers or GIFs, you have to physically open the app to send a message, it doesn't have link previews, and so on and so forth.

> Facebook Messenger has been around since the launch of Facebook. I've personally been using it over 7 years in various forms.

And it was a crap experience on mobile until it was pulled out of Facebook into its own app.

> Of course it does, because it has no features.

It has the most important features for good individual and group chat.

> you can't send stickers or GIFs

That's a feature.

> you have to physically open the app to send a message

I'm not sure what that means. I have to open the FB Messenger app too? Maybe it's different on android.

> it doesn't have link previews

Again another point in whatsapps favor. I hate link previews in FB Messenger.

> You can't send money with it

Not really much of a feature because of all the setup involved. It's got potential and if it could tie in with the host operating system or payment providers etc on mobile it could be really great.

Number 4 means you don't have to use the service at all, and no one is forcing you.

The only reason I use Whatsapp is for contacts that don't have Skype (even your fancy Facebook is too new and webby for me).

Video calls are a must for me, but they seem to be a thing of the past now.

Of course nobody is forcing me, it just boggles my mind that they have any market share at all. It feels like watching a six year old randomly throw paint at a canvas and selling it at auction for $50 million.
What boggles my mind is that MS could have it all but simply neglected Messenger until it died.

WhatsApp success is built more on MS failure than anything else.

> 1. No web interface, I'm forced to use a tiny mobile keyboard

No idea how recent this is, I discovered it a couple of weeks ago: https://web.whatsapp.com/

Why does your phone number change every month?
Because I travel a lot and use local SIM cards.
Whilst abroad, I've used foreign sim cards in my phone and all Whatsapp does is prompt to keep the existing number or change to new number.
But how do you tell people to add you on WhatsApp? I don't even know my phone number. Phone numbers are a poor replacement for email addresses or usernames.

Edit: not to mention the security implications of having authentication tied to one's phone number. Any telecom employee, foreign government agent, or skilled social engineer can impersonate one on WhatsApp reasonably easily.

I'd say one talk at an erlang conference three years ago falls into the umbrella of not talking much. The article doesn't say "they never talk about engineering."
It is an hour talk and it specifically mentions how Erlang was used and how it gave them a strategic advantage.

I have found other mentions about it, perhaps on Erlang mail lists, here is an interview with Eugene Fooksman:

https://pdincau.wordpress.com/2013/03/27/an-interview-with-e...

"""

And the consensus in our team is that it is largely because of Erlang. We’re managing to serve huge amount of connections from single front-end server (this is from last year’s Erlang

"""

I don't know how much clearer can it get.

Here is another directly from their website:

https://blog.whatsapp.com/196/1-million-is-so-2011

It is a bit older they clearly indicate that FreeBSD and Erlang are key and critical elements that let them operate they way they do.