Why WhatsApp Only Needs 50 Engineers for Its 900M Users
41–50 of 255 posts
Re: Why WhatsApp Only Needs 50 Engineers for Its 900M Users
#42> Why WhatsApp Only Needs 50 Engineers for Its 900M Users Answer: because sending short messages from A to B is basically a solved problem. There is even a programming language (Erlang) that was made with this application in mind. The prototypical "Hello World" example for Erlang is a messaging application.
Actually, over lossy links, it's well known to be an impossible problem: https://en.wikipedia.org/wiki/Two_Generals%27_Problem
Also, an army can only send so many messengers before you run out of soldiers (or operational readiness). Packets are free and plentiful. If you're on a network link so bad that you can't even occasionally receive a TCP ack, then you're very much an outlier.
Re: Why WhatsApp Only Needs 50 Engineers for Its 900M Users
#43I mean this is partly a reflection of the teams brilliance, and the foresight. But its also that the operational cost is relatively low compared to a payroll system that needs to abide by government regulations and reporting requirements (for instance).
Re: Why WhatsApp Only Needs 50 Engineers for Its 900M Users
#44I wish there were some good online resources around Erlang. Most of the content is very theoretical and not explanatory. Its hard to find implementation of common algorithms like Sorting, graphs, link-list and other dataStructures in erlang.
If you already know the language fundamentals...you'd not be asking about linked lists; you can only have singly linked lists in an immutable language (without extremely bad performance, that requires every update/insert/delete to re-copy the entire list), and they're so fundamental that the language's core has them for you. And most of the common data structures are well discussed in Learn You Some Erlang For Great Good. Sorting, eh, https://gillesleblanc.wordpress.com/2012/05/12/sorting-algor... . Graphs, you need to narrow down a bit, different types of graphs require different implementations, and due to the immutableness of Erlang will likely require thinking about in a different way than in a mutable language.
Re: Why WhatsApp Only Needs 50 Engineers for Its 900M Users
#45Concurrency is not parallelism! /whacks author over the head with a Go manual
Re: Why WhatsApp Only Needs 50 Engineers for Its 900M Users
#46> Why WhatsApp Only Needs 50 Engineers for Its 900M Users Answer: because sending short messages from A to B is basically a solved problem. There is even a programming language (Erlang) that was made with this application in mind. The prototypical "Hello World" example for Erlang is a messaging application.
Re: Why WhatsApp Only Needs 50 Engineers for Its 900M Users
#47> Why WhatsApp Only Needs 50 Engineers for Its 900M Users Answer: because sending short messages from A to B is basically a solved problem. There is even a programming language (Erlang) that was made with this application in mind. The prototypical "Hello World" example for Erlang is a messaging application.
I really dislike the arrogant attitude behind these types of comments. Have you worked at WhatsApp? Do you have any idea what they spend their days doing, what their systems look like, what their requirements are like?
WhatsApp have close to a billion users, 50 engineers and they manage to produce a near flawless experience. This is not trivial, no matter how many armchair critics claim otherwise. It used to be the case that people dismissed FB as just another CRUD app ("not even written in RoR, but in PHP, yuck" ~ 2005-2010), but given the tools they have been pushing the last few years people seem to have stopped dismissing them as casually. Perhaps in a few years people will stop dismissing WhatsApp as casually as well.
Re: Why WhatsApp Only Needs 50 Engineers for Its 900M Users
#48> Why WhatsApp Only Needs 50 Engineers for Its 900M Users Answer: because sending short messages from A to B is basically a solved problem. There is even a programming language (Erlang) that was made with this application in mind. The prototypical "Hello World" example for Erlang is a messaging application.
I'm sure you could do it in an afternoon, right? Just like anyone on HN can make a "basic CRUD app" like Facebook in a weekend. I really dislike the arrogant attitude behind these types of comments. Have you worked at WhatsApp? Do you have any idea what they spend their days doing, what their systems look like, what their requirements are like? WhatsApp have close to a billion users, 50 engineers and they manage to p…
Don't forget WhatsApp has applications on all platforms.
Re: Why WhatsApp Only Needs 50 Engineers for Its 900M Users
#49I got my first ever spam on whatsapp the other day from someone who had never been a contact, and there seems to be no way whatsoever to prevent it. So maybe they should hire 1 more engineer to work on spam.