Hacker News new | comments | show | ask | jobs | submit login
WhatsApp doesn't understand the web (andregarzia.com)
174 points by t3ra 828 days ago | hide | past | web | 126 comments | favorite

This web client, even in it's current horrific form, is something I really needed.

Many a times I find myself working on my laptop, with the phone carelessly lying somewhere else in the room. It's a pain to go find it when a new message arrives.

The bottomline is, I guess WhatsApp doesn't need a Web Client to compete with other services. If you've been to India, you will realize how pervasive WhatsApp is, with or without a Web Client.

This is just an added convenience feature for some power users. So it is understandable that they went this route.

I am 100% agreed with what you said.

But I have problem with the way they have implemented it as of now. I mean to use it via web I need to scan the qr code every time.

Plus my phone needs to stay connected to internet. In India you can easily find lots of whatsapp users who wishes to use whatsapp via PC just because they dont have net pack on their phone.

Hope they remove this restriction soon.

I didn't have to re-scan the QR code when I got into work this morning after setting it up yesterday.

They didn't needed to go these route. Telegram for example has clients for most platforms and a web client that works in every browser and doesn't require your phone to be connected to the internet for it to work.

Telegram is a bad counter-example for various reasons. LINE has a desktop client that works well though

There's a Telegram desktop client... for mac at least.

There are desktop clients for Linux and Windows also: https://desktop.telegram.org/

What are those reasons?

said it elsewhere but Telegram was started on the basis of making a technically powerful chat program, with the whole open philosophy that's going along with it. It goes with that that having an open client and the like is in line with the objectives of the company

LINE and WhatsApp were started on the basis of making a useful chat program for the masses. Usability for those on FF OS is not part of their core principles.

Just curious - I remember some debate here about Telegram bug bounty from a while ago, other than that haven't seen any good/bad press about it. Why is it bad counter-example?

It's a client that explicitly about security and openness, so a lot of things are going to be "self-evidently" supported. The objective is to make a good client

The objective of clients like LINE and WhatsApp are to make good chat for the masses. This can come at various technical costs, because that's not their objective, whereas Telegram is , at its core, about technology.

> for various reasons

[Citation needed]

Me too! Sadly, as an iOS user, I can't have it.

Closed technologies succumb. It is a lesson from history. Remember that 'default' browser that had 90% of the market and now has less than 10%? Remember that über successful smartphone company that owned the market with its propietary chat/email network? How about widely used programming languages and frameworks? Flash for cool web effects anyone? The web is open, open wins. No matter how monolithic a market leader is, if it can't figure out how to be open and make money: it will succumb.

>Closed technologies succumb. It is a lesson from history.

The only lesson from history is that all tecnologies succumb at some point. General infrastructure standards (like TCP/IP or HTTP) persist longer, but that doesn't say much for application level technologies.

>Remember that 'default' browser that had 90% of the market and now has less than 10%?

If anything that's a counter-example. Netscape, that "now has less than 10%" is the open source version. It had that 90% when it was proprietary. Besides, the current 2 big players that trump Firefox in users (Chrome and IE) are proprietary too.

>Remember that über successful smartphone company that owned the market with its propietary chat/email network?

Yeah, it got pwned by Apple and Android. Of which Apple, which is proprietary, has most of the smartphone profits, and Android has a lot of the share, mostly in lower cost phones. Not really about open vs closed. Meebo, a totally open phone never got anywhere, and neither did Mozilla's phone attempts.

>Flash for cool web effects anyone?

What about it? It dominated its niche of the market for like 15 years. If it dies its mostly because of general incompetence by Adobe. They never managed to create a mobile version that doesn't suck donkey's balls for one. They also died because a proprietary platform make a decision not to include it (iOS), which is not really about "open" winning.

The fact that a given closed tech is winning does in fact support my argument: open wins, eventually. And the fact that protocols and standards prevail is precisely because they need to be open to become protocols and standards.

>The fact that a given closed tech is winning does in fact support my argument: open wins, eventually.

Huh? I fail to see the logic behind this.

>And the fact that protocols and standards prevail is precisely because they need to be open to become protocols and standards.

Well, yes, but that doesn't say much about other levels of the stack, like applications. And besides, we've had lots of succesful proprietary but de-facto standards too, from the .doc format to .mp3 (patent encumpered), to GIF and h264.

The logic is this: you are taking a picture while I see the whole movie. So, Apple is winning 'now', so is Whatsapp, but they may lose it eventuallly b/c they are closed models.

But this is a faith-based attitude; the reasoning and evidence you presented could just as easily be used to support a "closed eventually wins" argument, where any open platform that's currently winning is only doing it temporarily until a closed platform dominates.

Even if so, some closed product winning now (in this "frame of the movie") is not evidence that open will eventually win, as you said above.

Besides, how "I'm talking a picture while you see the whole movie"?

The case of browsers I mentioned, for example, spans 2 decades+ that closed browsers dominate. Or take desktop operating systems: closed ones are winning for 5+ decades.

That's a whole lot of pictures. I don't think there's a historical based argument you made for how the movie ends, besides your faith in a particular outcome.

They could fail for hundreds of different reasons, not all necessarily related to being open or closed.

We are still in the early days of computer technology. There may be thousands of examples from the last 50 years that support your line of thinking here, but I'm not convinced that this will be true, always, in the future.

I agree, mine is a naive forecast. But something tells me that users/markets don't like to be kept walled: they slowly but surely migrate to the better alternative (I guess we must thank hipsters for leading). It seems that the better alternative disrupts b/c it offers true value, real improvement. Then it grows like crazy, then it gets greedy and tries to hold the mass...but the mass is like sand.

Of course not. It's not federated and not standard compliant. It's a complete shame that they use XMPP but modified it to make it non compliant on purpose. Whatsapp is just an insult the Web and an example of the Internet's dark age mentality of walled gardens (like AOL vs Compuserve e-mail incompatibility).

  > It's a complete shame that they use XMPP but modified it to make it non compliant on purpose.
Yes, as a (former* ) XMPP advocate, this makes me sad. But it's really WhatsApp's attitude towards 3rd party clients that have me blacklisting them for myself as well as family and friends. This is the antithesis of what XMPP was supposed to bring. It's like nega-XMPP.

* XMPP as a standard and as community implementation missed to jump to mobile. Because it's open, it can eventually get there, but it makes me sad and angry how Jingle (Google's Voice & Video extension) was poorly adopted by clients for years. And now we have Hangouts...

Yes, poor Jingle support really puzzles me. It's not new, but I barely ever manage to connect two different clients without problems for video calls. That's besides the fact that most clients don't support it at all yet...

I don't have much respect for Hangouts really. If Google wanted to improve things they could propose Hangouts protocol as a replacement for XMPP. Make it an open IETF standard. They were such backers of XMPP in the past. And what did they do instead? Another walled garden and proprietary protocol. Total failure Google. That was the point when I said - you are lying about not being evil.

My understanding for poor Jingle support is that, whereas text is easy and low-bandwidth (so you can afford to send everything through a 3rd party server with easy connection semantics), voice and video are much, much much more complicated: not only do you have multiple voice and video codecs with iffy support and stability (sure, even if support library claims to support CodecFoo, it may still fail when passed data from your peer that uses this other library), but the bandwidth requirements means that you now have to deal with trying to directly connect these two clients despite any silent NAT or firewall that may be hidden around. Jingle provided its NAT-traversal algorithm, but even that required network support in the form of "superservers" for when all else failed.

All the nerds here only think about standards etc. Don't forget whatsapp is a company and it has to protect its market. Without controlling all the clients, whatsapp is worth a lot less.

Why does controlling the clients make it worth more? One of the articles key points was that it shut down good 3rd party clients and replaced them with a bad 1st party client. Controlling the clients is only a good move if you use that control to make better clients.

By that logic any e-mail service should be incompatible with the rest, but that's clearly idiotic and no one would try arguing it. Try also imagining that your mobile carrier would tell you that by no means you are allowed to call to users of another carrier, since that would not "protect their market". Would you ever use such? When it comes to instant messaging however some lose common sense and start thinking that dark ages approach is acceptable.

When communication service instead of enhancing communication tries to hinder it by intentionally gutting interoperability, one should avoid it like a plague.

You are comparing two different things. Email is a generic concept - it's not proprietary . A message sent through Whatsapp is an instance of the whatsapp application - not a standard message. Basically, if we push your analysis further, Facebook, which is a communication application, should let you send a message to your twitter account, that you could read with twitter, and reply with a comment on an Instagram picture. That'd be the same thing - I mean, they are all "messages" somehow, aren't they? See, it's - as you say - clearly idiotic as no one would open its platform that much.

> Email is a generic concept - it's not proprietary

Concepts can't be proprietary altogether. You can't own ideas. Instant messaging isn't proprietary either.

> A message sent through Whatsapp is an instance of the whatsapp application - not a standard message.

If you are talking about certain implementation of ideas being proprietary - that's exactly the point of my original comment. Making it intentionally incompatible to "control the market" is crooked lock-in tactic. Which is especially the case with Whatsapp which internally uses XMPP which was designed for interoperability and as IETF standard.

And I brought examples with e-mail. A long time ago Compuserve and AOL e-mail services used to be incompatible on purpose. But pressure from users to end that stupidity forced them to reconsider. There is no valid reason that a lot of IM services can't interoperate to a good degree. Except for greed and backwards thinking.

> Your phone needs to stay connected to the internet for our web client to work...

What? Is this true? I can't think of a reason why their devs would ever need the users phone to be online.

WhatsApp does not store messages on their servers. It's a clean passthrough from one device to the next. They only hold onto message until all clients in the group text or one-on-one text have received the sent message. So, if you have two clients using the same phone number, the system wouldn't know when it is able to delete the message. Right now the single phone receives the message and simply passes it up to the web browser. It's a simple solution that fits into their data model. They claim that they cannot get this working on iOS which prior to iOS 7 may have been true. However, on iOS 7 and above we can run code (even async network calls) when we receive a push notification so they should have been able to work with that API to produce similar results.

I believe you're wrong. This is how WhatsApp USED to work before they were acquired by Facebook. Remember how messages used to stay in the waiting (clock) state and you could delete them if the recipient wasn't online? Well now the first tick appears immediately because there's an intermediate server storing them for delivery and they can't be deleted from the client. It's similar to what Microsoft did to Skype.

The first tick appeared immediately since I'm using WhatsApp which has been long before Facebook acquired them.

And? That just means the recipients you were texting had a reliable connection to the internet at the time.

I'm 100% sure that this wasn't the case. I'm not saying that there always was an intermediate server, but it definitely was before Facebook acquired them.

Heh, so WhatsApp is the real SnapChat? The one that actually deletes your messages once read?

Did snapchat not delete messages?

OK. I thought you were getting it confused with one of the message saving snapchat proxies (which then got hacked). But whatsapp is clearly not a replacement. snapchat may have failed to delete videos from the users device, but whatsapp doesn't even try.

WhatsApp used to even save snapshots of the database, for a week(?) I believe. In a SQLite DB. And deleted messages are not vacuumed. Recovering intentionally deleted messages off a user's phone was a trivial job. At least on the Android version.

I suspect that the reason is that WhatsApp wants to make sure that the person behind using the web client is really the person behind the number. This is same reason Whatsapp has no api. They don't want the bot problem that tinder has.

People think the value of Whatsapp is that it is so pervasive. That's a big part of the value, but so much of the value is that whatsapp knows who you really are. You might have a few twitter accounts, a couple of facebook accounts. But you have only _one_ whatsapp account.

There are phones here supporting two, three and even four SIM cards. People will do crazy stunts with multiple accounts for everything. Also there are whatsapp bots, they are just not available on github anymore due to DMCA takedowns. You can still google for yosup, coseme and others to get libraries that allow you to build bots, third-party clients and stuff.

Yes, I am familiar with libraries and considered building an app on the back of whatsapp until the DMCA takedowns. The fact that whatsapp is fighting against bots is part of the reason there is so little spam on whatsapp.

Yes, people do crazy thing with accounts, and in many parts of the world there are good reasons to have multiple SIMs. People will have 1 IG for sexy photos and another for their family, etc. But there is far less motivation to do that with whatsapp, line, viber, kik, etc. The reason for the difference in motivation is that your whatsapp messages are explicitly shared with individuals rather than with groups so there is no need to partition messages by accounts. The main reason for have two whatsapp accounts is the old joke about having two SIM cards: "one for your wife, and one for your girlfriend".

In Brazil (same place as the post author), some people do have many WhatsApp accounts. New number SIM cards cost equivalent to $3 dollars and dual SIM smartphones are very popular. Many people use these SIMs in a disposable way, changing them as telecoms change their prices.

That's true, but in my experience you have one at a time. For south east asia it's normal to have one SIM for your local number and one SIM for your international number. Or just SIMs for different networks so that you can get free calls to friends who are the same network. But even then people usually have only one whatapp account at a time.

I believe the webapp retrieves your message history from the phone in real time, and Whatsapp does not store messages on their servers once they have been delivered.

>Here in Brazil WhatsApp is basically ubiquitous since its cheaper to send IM messages than to send SMS.

From this I conclude that OP has fallen for the bizarre nonsense argument I've heard in Brazil a lot of times when WhatsApp was gaining traction: "You must use it! It's free SMS!"

What? No, it is not "free SMS", it is internet messaging. Internet messaging has existed since... since there was internet. Yeah, it is "free" as long as you have unlimited internet, but if that qualifies for "free SMS" email was free SMS much before WhatsApp.

Actually there are carriers in Brazil that allow free connection to WhatsApp server even if you have a limited connection plan...

People say that it is free SMS because of some reasons such as the fact that WhatsApp transfer your whole list of contacts to their server and thus populates the application contact list to the point that it is as convenient to use as SMS. Emails require email addresses. WhatsApp contacts are matched by phone number which are already on your phone address book anyway.

Its about perception. People here tend to place SMS, WhatsApp, LINE, Telegram all in the same collection because they are used to exchange small instant messages. Email is usually used for longer text that doesn't require immediate action.

> Its about perception

It's not just about perception. In their early days, they used to advertise themselves as a "Free SMS" service, at least in Portuguese.

> Actually there are carriers in Brazil that allow free connection to WhatsApp server even if you have a limited connection plan...

This is very recent, after they got massive.

Standards defiance notwithstanding, the web client appears to work as advertised and will surely save many a neck and thumb from premature aging.

It's interesting at this point to think about identity and authentication in WhatsApp. They've never had a username or password and their use of your mobile phone number as your identity seems to have been key to their success (the other factor I'd cite is good cross-platform support).

WhatsApp authn on mobile consists of a once-off SMS verification to confirm you are running WhatsApp on the mobile device hosting the SIM card corresponding to the phone number identity you've claimed for yourself. That said, I recently saw a case of someone using a temporary pre-paid SIM card while she was traveling here in South Africa yet her WhatsApp messages from that phone still appeared to come from her New Zealand number. Not sure how that passed the authn.

The lack of username and password, I believe, is what has led to some of the unnaturalness of the WhatsApp web app. I don't think that their remarks of "the web browser mirrors conversations and messages from your mobile device -- this means all of your messages still live on your phone." reveal all of what guided their design choices. I also doubt that they "don't get the web". Instead I think they need the phone there and online because they have no username and password (or other device-independent authn) and they have thought quite carefully about protecting what got them ahead of the myriads of other perfectly functional IM apps out there in the first place.

I don't understand why you think the biggest SMS system in the world (which it is in practice) should open its API or use non-proprietary system. Moreover you have absolutely no knowledge whatsoever on their technical infrastructure or their constraints as a business and a technology company. Making this kind of blog post, based on arguments made out of thin air, is the same as putting a redesign of Amazon on Dribbble and bitch about their current design.

Can it be a money issue? Remembering that WhatsApp is not free, the 1$ for a year of service should be how they make money (I think they did a very good job there because no one that I know remembers that). Maybe the on-line phone solution suits them technically and economically, because they don't want to provide you with an alternative client that you might use for free. As they say this is simply and extension of the phone client.

I don't think it's that no-one remembers that, but I don't think WhatsApp actually enforces this seriously. I have never paid for the service and each time the deadline for doing so approached, it had been extended.

I've paid for it once, but before that I had at least two extensions, and since I paid I've had one extension.

I would be interested to understand more about why WhatsApp made some of those decisions. The requirement to keep your phone connected to the Internet seems strange, perhaps it's using some encryption key that never leaves the device? Why do they need the Chrome-only filesystem API so much? Why has iOS been left out?

> Why do they need the Chrome-only filesystem API so much?

There is nothing the FileSystem API can do that others cannot, although it might be less convenient or less optimized. Even that shouldn't be true any more, but it still might in some browsers.

Regardless, this was a wrong decision by WhatsApp. FileSystem is no longer standards track. The API document itself says

> "Work on this document has been discontinued and it should not be referenced or used as a basis for implementation." http://www.w3.org/TR/file-system-api/

Browsers should not implement it, and should in fact remove it, because it is nonstandard and never will be standardized. It is therefore dangerous for WhatsApp to use it - Google might do the right thing tomorrow and break their site, and it would be WhatsApp's fault.

However, Google has so far not shown much sign of intending to do the right thing here. As much as I admire many people at Google, and the company does many good things, this is a point that Google keeps getting wrong: Shipping nonstandard APIs, and keeping them active forever: FileSystem, NaCl/PNaCl, WebSQL, probably others I forgot.

I can only guess that Google simply finds those APIs convenient and uses them in its own websites, and has decided to never remove them. In other words, Google just doesn't care that they are nonstandard, which shows a lack of respect for the standards process. And as Google's market share rises over 50%, these are becoming de-facto standards, through an act of force.

One might say that this is an abstract "ethical" point, but WhatsApp shows exactly why it is not just that. Google keeping nonstandard APIs in Chrome for its own convenience opens the possibility of other websites using them. Either through ignorance - they don't know it's deprecated and nonstandard - or because they trust Google to not break them, and don't care about standards. The result is a web that works only in one browser.

Google, please do the right thing and remove nonstandard APIs.

> Google keeping nonstandard APIs in Chrome for its own convenience opens the possibility of other websites using them. Either through ignorance - they don't know it's deprecated and nonstandard - or because they trust Google to not break them, and don't care about standards. The result is a web that works only in one browser.

This is what happened to XMLHttpRequest, or have you already forgotten that it was originally an ActiveX control?

There is not (and there never will) a single way to define how the web is built.

>> which shows a lack of respect for the standards process.

Interesting phrasing.

Ok! All of this is my gut-feel with no data behind it. Caveat emptor. Here goes nothing Yippeekayay

The single device strategy is to keep the whatsapp network a network of people - no bots and no spam.

They are still trying to destroy Kik, Line and Viber. The war is not over (http://expandedramblings.com/index.php/how-many-people-use-c...) Bots and spam would be just the reason for people to switch. As it is, spam might be the only thing that can kills Tinder - and people are watching that.

Line and Viber are more fun and more full featured than whatsapp. The only thing keeping people on whatsapp is that people are annoyed by having too many messaging apps on their phone. If people get sick of whatsapp they will nag their friends to install Line. Once those friends are nagged a few times they will install it. How about when they hear that the voice calls higher quality (subjective of course)?

You can build bots for Whatsapp. There used to be lots of libraries and samples on github before the DCMA takedown. There were libraries in C/C++, PHP, JS and Python.

Here in Brazil we do have Whatsapp and SMS spam. Whatsapp spam is rare but it happens and it will only grow.

Of course you _can_ but whatsapp is actively trying to prevent you from building those bots, and they may succeed well enough in their goal to have a measurable impact.

It is easy for us to say that a growth of whatsapp spam is inevitable but I would bet a key part of whatsapp strategy is to take that down to as close to nothing as possible. In comparison on fb and instagram spam is embraced. I think that is part of the reason why we see whatsapp taking a different direction than other seemingly similar social networking companies.

> perhaps it's using some encryption key that never leaves the device

Don't they support multiple devices already (running the client on both a phone and a tablet)? Maybe they don't want to have this run on a desktop (either via API or JavaScript), because then curious people might reverse engineer it. Sort of like how Netflix has clients on locked-down Linux-based devices but doesn't support Linux desktops.

They don't support multiple devices/sessions concurrently. You can only be logged in on one device any given time.

Netflix now works in Chrome on Linux.

Which is a damn shame because only supporting Chrome is absurd. We've advanced so far, but now instead of "Works best in Internet Explorer 6 at 800x600" it's "Works in Chrome."

The more things change the more they stay the same...

Thats not really Netflix's fault though. Google Chrome (not Chromium) is the only browser on Linux that supports the DRM the TV/movie studios forced upon Netflix. With Windows Silverlight works in all browsers so they have access to the DRM.

Right then, does Netflix stream it's own content, which doesn't have the evil studio's restrictions, in other browsers?

Or does Netflix tout the need for "content protection"?

DRM is fantastic business for Netflix as it creates a nice barrier to entry for competitors.

It is a very simple reason. They don't want to support multiple devices login as the same time to the same account. The reason for this I think it is because of their architecture constraints: - Currently, they are storing all the messages on the phone. So once the message is received by the phone, it will be removed from Whatsapp server. This can save the storage and processing cost on the server. If you want to support multiple clients, you need to save those messages on the server for a period of time (e.g. a few weeks).

- If you allow two clients online at the same time, you need to support "carbon copy" meaning you need to send the messages to all the clients and keep the status of the messages in sync. This will take a lot of processing on the server side.

- When a client offline for a long time goes online, you also need to sync from the server all the messages that were sent during the client is offline.

So their architecture was built in such a way that the processing power on the server side is limited to the minimum. I believe that they may change its strategy in the future. However, it will take time.

> The requirement to keep your phone connected to the Internet seems strange

Somebody probably came up with this crazy and cool architectural idea. "I know Jim! Instead of having the browser communicate with our servers, have it communicate with the phone which communicates with our servers! Brilliant! Cheers! <Gulp>! Another round of beers please!"

In all seriousness, you'll probably find that having Whatsapp on your phone is somehow tied to how they plan to monetize the platform. If the web client works without the phone there is no reason to have the app on your phone.

> Why do they need the Chrome-only filesystem API so much?

Some initial investigation at Mozilla suggests it's to detect whether you're in Chrome's Incognito mode.

If all of this is true, its worse then I expected and I did not expect much. Why do all these companys wage a war against third party, even from a buissness perspective I don't get it. It creates innovation that you can copy for the offical app and its a perfect to test new features.

The same reason Apple has consistently waged war against clones?

Yes. But don't be too specific about those reasons, though, or you will be downvoted.

Hrmm I really like the web client. It's not great (image viewer is really small) but serves my needs perfectly

I agree, 90% of my serious daily communication (i.e. not IRC) is done via Whatsapp. I can't explain how horribly annoying is to have to pull out my cell phone and write in that tiny screen every time I want to send a message.

One more update to your article: several mobiles can't use that, because it seens de animation on the QR Code Scan screen is not responsive. My phone is a example, I just can't scan the QR Code:


I think your screen is to small for the message window. There is a button below it which dismisses the white window and enables the scanning.

The linked article could have been titled "andre garzia does not understand that mobile messaging is not the web" jajaja ;)

I am not going to comment on the chrome only and non standard API complaints.

The key insight behind modern mobile messaging that allows them to scale cheaply is that for most consumers the phone is persistent enough that the server does not need to store messages. Ask a 19 year old if they need their old whatsapp messages. Most will say no. In fact, many proactively delete them. Turning a mobile messaging into a CPU and bandwidth only problem is a clever hack instead of it also being a disk and indexing problem.

This is hard thing for a lot of us to understand because we come from a world where our business has message retention and surveillance requirements. We want to run quantized self and sentiment analysis reports for the last 10 years. But most people either don't know that might even want that.

The other key insight is that knowing the user's identity can be more important than the user themselves.

author here.

I don't think you understood what I am complaining about. I am complaining exactly about chrome only and usage of non-standard api.

As for storage, the web client is requesting non-standard file system permission exactly to store things. I am saying they should use a standard API such as IndexedDB for that kind of thing.

I do understand a thing or two about IM having worked on more than a client before. There is no need whatsoever for the hacks they did...

As for surveillance, thats another can of worms that is not protected by what they are doing. Traffic is intercepted at other vulnerable spots such as the carrier itself or ISP.

I do understand. One of your complaints is "Mistake three - It doesn't work if your phone is not connected to the internet."

That is not a mistake. It is a direct result of the fundamental insight that enabled whatsapp to become what is is - being stateless. Your first two complaints are technical, but the third is a business decision that optimizes their product to fit the needs of the market.

This is a by the by, but surveillence in the context of business requirements means something different. For example, financial companies need to surveil their employee's messages for illegal activity.

What does being stateless mean, in this context?

Storing your IM data & meta-data on their servers. i.e. Pending, delivered, read. If they allowed phone to be offline, that data would need to be synced when it comes online.

Wasn't Whatsapp's success attributed to their policy of inclusion (all major mobile platform/devices). This seems like coming from a different company altogether.

Not at all.

First of, these modern messaging/social/mobile-first messaging apps we see getting popular have a fundamentally different model than what most of us desktop-first are used to.

They are not centred around an account, but around a device.

If you delete your Line app, all messages are gone. Hell, even if you log into Line from a new device, messages on the old one will be deleted. A friend of mine recently lost her phone and she saw no other way than to create a new account. Another friend had Docomo help her in-store to transfer all her Line messages when she upgraded her phone.

I don't use WhatsApp, but reading other post here, it seems that they use a similar model (but not as extreme). Your phone is your account, and all your stuff is stored only locally on your phone (or at least only accessible locally).

This explains why the web-app works so poorly.

Yes, WhatsApp got big by being on all devices, but they provide the software and the software model is a "one device per user"-model. This works great in a mobile-first (or should I say mobile-only) fashion.

This is SMS on steroids, not messenger for your phone.

I don't see how this explains the poor functionality of the web client?

All a web client needs is persistent, large storage - which is provided by IndexedDB - and to access the network to reach the service's servers.

WhatsApp should be able to make a fully-functional web client.

So? Why should WhatsApp "understand" the web?

Because they are claiming that they released a "web client" that doesn't actually work on the web but only on a single browser and is not independent (it requires a mobile app running on a phone connected to the internet).

People release crippled software on the web because they don't understand what it is all about. The day we lose interoperability between browsers it will all be doomed. The fact that most of the websites work well on the top browsers is a victory that only those that lived thru the 90s will appreciate in its full glory. ;-)

That would be a problem for them only if it hurts their main business, which is their mobile clients.

I'd say a functional web client might be more of an issue for them than a broken one.

Author here, will monitor this thread waiting for feedback and general comments.

Hate the gifs.. Made the article almost unreadable.. Just have them loop once or twice when I scroll to that part of the article.

Thanks for the feedback. The gifs are the way I use to express my sentiments without reverting to cursing in all languages I know. I am aware that they are not every ones cup of tea but I liked them. I will consider not abusing gifs in the future (even though I love them and will probably use).

I love the gifs ヽ(⌐□_□)ノ♪♬

Love the Gifs. Perfect sentiment captured in each one.

Thats the spirit! :D

I liked them too. Where's the first one from? It looks familiar...

Not sure if the gif is actually from the series but the actor is one of the main characters of the famous (among geeks) IT Crowd.

I'm wondering if you're aware that WhatsApp's data store is on the phone, not on their servers. If so, how would you do away with the requirement that the phone stay online while using the web client?

Not really. WhatsApp do store messages on their servers for sometime.

Clean data and uninstall the app from your Android, uninstall the app and then install again. WhatsApp you ask if you want to recover some of your history.

I think that's due to the app making a local backup on the device.

"WhatsApp automatically makes backups every day at 4 AM and stores them in the WhatsApp folder of your Android phone."


You're right, I just removed Whatsapp and that folder and now it didn't ask me to recover.

I have mixed feelings about the gifs.

You misspelled 'disappoint' in the first sentence.

Fixed. Thanks a lot. English is not my first language.

The web doesn't understand WhatsApp.

It also works in Opera, fyi.

Operas browser user agent is basically the same as Chromes. Firefox also works if you spoof it, which makes the point of OPs article even more prominent.

Opera is the same browser for all intents and purposes now anyway

Yes. Thank you.

I've been using XMPP on my phone just fine. Why do I need WhatsApp which is not open? It offers me nothing new other than having to verify my phone number. But I can just use Google Voice if I wanted to message someone who knows my phone number. If I'm talking with someone in India there is no reason why I shouldn't just use XMPP.

>> "Why do I need WhatsApp which is not open? It offers me nothing new other than having to verify my phone number."

The common answer: because al my friends are using it. I don't understand why people don't use SMS when most smartphone contracts come with unlimited messages now. Why send your info through ANOTHER third party? But my friends are using it for the group feature so unless I don't want to be left out of the loop I have to as well.

Whatsapp is hugely popular in India where phone contracts are not popular and most people use pay-as-you-go prepaid mobile services. Very few, if any, of them come with unlimited messages. Unlimited messages are a US-only thing I guess.

I'm in the UK. That doesn't change my point though. Despite the unlimited text messages in UK/US people still use Whatsapp.

My 2 cents...

Group text via SMS is a PITA. The main reason why I use WhatsApp for certain messaging tasks.

Having Wifi but no phone signal - WhatsApp gets used again.

WhatsApp also lets you see when a message has been received and also when it has been read. Spooky, but useful.

WhatsApp has lots of features which SMS don't.

I don't use SMS because I don't pay for it. I pay only $12 a month for my phone.

Apple has ushered in a new era in which a high level of centralized control is considered acceptable to consumers.

WhatsApp is obviously trying to keep total control, like apple.

This doesn't explain all of their failings here. For example, I'm sure they will eventually find ways to address their control issues and still be usable in other browsers.

They might never do a web interface that runs in iOS, due to apple's own controling approach. Of course there is still the whatsapp iOS app.

Its the opposite - Whats App is storing nothing which limits what they can do.

That hardly makes it 'the opposite', unless you presume only the most limited interpretation of the words.

The fact that whatsapp stores nothing has little to do with their cease and desist orders. 3rd party clients can still be built on a system that stores nothing.

Using servers paid for by whats app without compensating them is stealing.


Actually, IndexedDB allows you to store large amounts of data, is standardized, and is supported across practically all browsers.


IndexedDB is an accepted web standard and can store images and files. If you try to store too much information the browser asks the users permission to do so. There is no need to use the local filesystem API because thats not a standard.

As for not storing things, that still doesn't require the phone to be logged onto the network. The web client could just be another "device". If you're logged with the web client then the data is pushed to your browser. If you're logged with your phone then the data is pushed to your phone. This hack of making the phone talk to the web client to circumvent the limitation of only a single device per user on the whatsapp network is just silly. Telegram for example allows you to log with many devices and you can remotely disconnect other devices if you want.

We have full IRC clients such as irccloud.com, we have full email web clients such as gmail.com, we have XMPP web clients. The web platform can handle instant messaging. We have desktop notifications as a web api. We have IndexedDB as storage medium. We have websockets as communication layer. There is absolutely no need for the hacks they did.

I stand corrected, IndexedDB would likely be a far better solution than LocalFileSystem.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | DMCA | Apply to YC | Contact