Live data from Hacker News

Why WhatsApp Only Needs 50 Engineers for Its 900M Users

wired.com

241–250 of 255 posts

Re: Why WhatsApp Only Needs 50 Engineers for Its 900M Users

#241

Basically they're a silicon valley company who've done everything that's exactly the opposite of standard silicon valley advise -- bootstrapped for first few years, complete apathy or even aversion to silicon valley marketing (if you live in the valley and have no foreign connection, you probably didn't even know what whatsapp was before 2012 or so), built for all client platforms simultaneously (including blackberry…

WA came out iPhone exclusive (then later on extended the offering to BB).

iPhone was hugely popular in North America. BB, on the other hand, is hugely popular in Asia (and probably Europe...?) that consists of 3 most populous countries: China, India, Indonesia... guess who uses WA the most...?

Support for other platforms came out very late...

Re: Why WhatsApp Only Needs 50 Engineers for Its 900M Users

#242
post #115
post #47

Earlier quoted context omitted.

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…

Well, frankly, there are plenty of open source chat server implementations (usually following XMPP standards) which easily scale to 10's of thousands, sometimes 100's of thousands of users without any modifications (OpenFire, to name one). It wouldn't be that difficult for a group/team of people to scale that into a cluster of servers and support several hundred million users at once -- XMPP packets are small and thi…

Interesting! When did a XMPP server run with hundreds of thousands of users? At gmail?

Re: Why WhatsApp Only Needs 50 Engineers for Its 900M Users

#243

"Code in Parallel In using Erlang, WhatsApp is part of a larger push towards programming languages that are designed for concurrency, where many processes run at the same time." Concurrency is not parallelism! /whacks author over the head with a Go manual

Yeah, but what's the best way to explain concurrency to a general audience?

Let me give it a non-journalistic stab:

"A method of programming where you can safely allow many different, but related computations to occur simultaneously to arrive at a desired result. Thanks to the "safety" aspect, these computations can be automatically processed in parallel (at once) by many thousands of computers to increase the speed of the program, but no collisions of data processing will occur. In other words, no two parallel processes will work at cross purposes as a result of parallelization - when the code is written correctly and concurrently."

Re: Why WhatsApp Only Needs 50 Engineers for Its 900M Users

#245

Earlier quoted context omitted.

Hang on, I _could_ write a (small) twitter or (early) fb clone in a weekend. Easily. That would probably scale to 10k tweets or feed entries. What I in _no_ way could do is rewrite fb or twitter at the scale these systems operate today with a billion users and even more posts and data points. I don't agree with the sentiment of the previous poster, but fb & twitter were initially basic CRUD apps.

I have to disagree. They were messaging brokers masquerading as or mistaken for CRUD apps, which directly led to many of their early scaling issues.

But you can just implement them(the early versions) on any old server with a nice database installed if you want to. And you can do that in a weekend.

And yes of course you will want to take a step back and change almost everything about it if you want it to scale to more orders of magnitude.

Re: Why WhatsApp Only Needs 50 Engineers for Its 900M Users

#246

(Disclaimer: I teach this stuff) Good article. It's a keeper. Touches on a lot of things I've been telling clients for years. My takeaways: - Pure functions in little composable pieces. Screw the fact you can't find programmers. With 1/20th the staff, it's not important - Zero to few meetings. Keep focused on one thing. No playing around with WhizzBang Platform 7.0 because all the cool kids are using it. Mind your kn…

Could you elaborate what is is that F# taught you, and how it changed the way you work?

I realize you're using a throwaway account, but this is really more like an essay, not a HN comment (cue up snarky observations about the length of my comments). There were four or five things that all came together at the same time for me: lean startup, functional programming, TDD, and static page web programming.

If you're interested, my contact details are in my profile. Happy to have a call/Skype. It's an important topic.

Re: Why WhatsApp Only Needs 50 Engineers for Its 900M Users

#247
post #115

Earlier quoted context omitted.

Well, frankly, there are plenty of open source chat server implementations (usually following XMPP standards) which easily scale to 10's of thousands, sometimes 100's of thousands of users without any modifications (OpenFire, to name one). It wouldn't be that difficult for a group/team of people to scale that into a cluster of servers and support several hundred million users at once -- XMPP packets are small and thi…

Interesting! When did a XMPP server run with hundreds of thousands of users? At gmail?

Google Messenger, Facebook Messenger, MSN Messenger, AOL Messenger (AIM), etc...

(note that both google and facebook use proprietary chat protocols now i believe)

Re: Why WhatsApp Only Needs 50 Engineers for Its 900M Users

#248
post #209

Earlier quoted context omitted.

Thanks, I feel dumb. Although that makes his argument "WhatsApp is good because you can use it to keep in touch with friends and family" which is meaningless.

How do you mean meaningless? What do you do with a "good" IM app, if your loved ones aren't using it? The most of the relatives and friends already have WhatsApp installed and are using it. Can't contact them with Telegram, IRC, HipChat, Viber, Skype, etc.

Well, that's a different argument. You could use hip chat to talk to your family and keep in touch, they just don't have it installed already.

Anyways, Facebook has more users than WhatsApp. Where do you live that people don't have Facebook? What is the advantage of having a WhatsApp account instead of or in addition to a Facebook account?

Re: Why WhatsApp Only Needs 50 Engineers for Its 900M Users

#249

WhatsApp seems to be a great example of designing your system with the best tools available. To go from nothing to pretty much being the de-facto modern replacement for SMS in a couple of years is an amazing achievement. I really need to sit down and spend some time properly learning a functional language. I can hack my way through Haskell code but I do it in a very non-Haskell way. I really need to change that. My p…

Try Elixir, it runs on the ErlangVM and has a much nicer syntax, plus metaprogramming through Lisp-style macros, while preserving every feature that makes erlang great. https://pragprog.com/book/elixir/programming-elixir <-- dave thomas has a great writing style.

Or LFE - Lisp Flavored Erlang - if you prefer Lisp to Rubyesque syntax. Robert Virding, one of the gang along with Joe Armstrong that created Erlang, created LFE.

Re: Why WhatsApp Only Needs 50 Engineers for Its 900M Users

#250
Does anyone know if WhatsApp uses Scrum (or similar methodology)? Also, do they do pair programming?

My company has recently learned about scrum and pair-programming, that seems like the only way to success to them. So, it would be nice to know how other successful companies are organized and develop software.

Post reply on HN