Sunday, August 30, 2015

My Response to Whatsapp's (?) Cease and Desist Notification Against Me

I'd received a letter in legalese from someone who claims to be WhatsApp's lawyer asking me to do certain ludicrous things. Here's my response.

Dear RAB,
This is in response to your email on 4th August titled "WhatsApps’s Cease and Desist and Demand Against Python-whatsapp-bot, pyWhatsapp, and QRtoWhatsapp". Let me make it clear to you at the outset that your email "threat" was completely inappropriate and wrong for various reasons which I shall elucidate in this mail. 

I understand that you have not even gone through my code and rather just did a search for "whatsapp" on my github repositories before sending me this stuff. I understand it because you tell me that "QRtoWhatsapp expose[d] WhatsApp users to anonymous messages that others may use to deliver solicitations or malicious software to WhatsApp users." A cursory knowledge of Android programming and the patience to first go through my code before accusing me of something should have let you known that QRtoWhatsapp was a program that scans a QR code and starts an Intent, which is the official way for inter-process communication on Android, thus allowing someone to easily share the message behind a QR code to WhatsApp.

Like QRtoWhatsapp, python-whatsapp-bot and pyWhatsapp both had whatsapp only in their names. They could as well have been called python-bots and most of the code in those programs were not even mine, but copies of others' code released in permissive licenses. They were of generic nature and could have been used to build a program which responds to commands. Of course I also gave links to instructions to connect it with Yowsup. But the following accussations in your email is totally wrong.
you will not attempt to reverse engineer, alter or modify any part of the Service;
I haven't attempted to reverse engineer, alter or modify any part of your service. I love free and open source software. And I love FOSS precisely because I can understand how it works without struggling through reverse engineering or whatever. If you gave me three months of holidays, I wouldn't spend a minute on trying to figure out how a proprietary software works.

The most I have tried to understand how WhatsApp works is by being a power user and testing all the features WhatsApp provides. When WhatsApp introduced blue check marks, or voice call, or groups of 50, or 100, I was probably among the first few users to notice or use those features. Because I used to care for WhatsApp.
you will not duplicate, transfer, give access to, copy or distribute any part of the Service in any medium without WhatsApp’s prior written authorization;
I haven't done any of these because I have only as much access to WhatsApp's "Service" as any other user. I have had no connection with anyone who develops WhatsApp and I do not have the magic power to obtain access to your "Service" through any other medium.
you agree not to collect or harvest any personally identifiable information, including phone numbers, from the Service;
You (and WhatsApp) are being ridiculous. WhatsApp's entire business is on connecting people through their phone numbers. I cannot communicate to someone on WhatsApp without first knowing their phone number. If I already know someone's phone number, why would I "harvest" it from WhatsApp?

Also, when I am added to a group on WhatsApp, it shows me phone numbers and nickname of everyone whom I don't already have in my contacts. What am I supposed to do with these phone numbers? If I save them to my phone's contacts using WhatsApp's own "add to contacts" option, am I harvesting their personal details?
you will not interfere with or disrupt the integrity or performance of the Service or the data contained on the Service; and
I have not. Since WhatsApp wouldn't allow multiple clients to connect with the same phone number, I couldn't even run my own bots on WhatsApp.
you will not attempt to gain unauthorized access to the Service or its related systems or networks.
I haven't attempted this because I don't care and I don't think I can gain access even if I try (because WhatsApp should have set up some really strong security in there).

You accuse me of:
using the names “Python-whatsapp-bot, pyWhatsapp, and QRtoWhatsapp” and “WhatsApp” which creates confusion about the origin of Python--whatsapp-bot, pyWhatsapp, and QRtoWhatsapp; 
But this is unfounded fear. People who use Github probably know the difference between free software and proprietary software. They know that WhatsApp has no love for free software and therefore wouldn't ever have any source code open to scrutiny. Therefore, this confusion you describe is imaginary.
using (and/or facilitating the use of) the WhatsApp registration system to generate credentials for and authenticate unauthorized clients and services in violation of the WhatsApp Terms of Service;
reverse engineering, altering, modifying, copying, using, or redistributing WhatsApp code, and/or circumventing certain technical measures put in place to protect WhatsApp’s Service, IP, and WhatsApp users; and
enabling users of unauthorized clients and services built using Python-whatsapp-bot, pyWhatsapp, and QRtoWhatsapp to circumvent technical measures to protect WhatsApp’s Service, access the Service without authorization, and violate WhatsApp’s Terms of Service.
These are all wrong accusations as explained earlier.
Python-whatsapp-bot, pyWhatsapp, and QRtoWhatsapp willfully exploits WhatsApp’s Service, undermines the goals of WhatsApp, and intrudes upon and undermines the service experience of the community of WhatsApp users.
This is where I have serious disagreement with you. If bots worked properly, they would only add to the experience of the community of WhatsApp users. This can be easily seen from how Telegram messenger introduced an official API to build bots. Maybe WhatsApp should stop thinking that it is the best messaging platform on Earth right now.

Your demands and my responses:
Cease all promotion and distribution of Python-whatsapp-bot, pyWhatsapp, and QRtoWhatsapp at all distribution points, including GitHub repositories (e.g.;;, websites (e.g., and social media accounts, and confirm you will not in the future develop, sell, offer for download, and/or distribute Python-whatsapp-bot, pyWhatsapp, and QRtoWhatsapp or like code and resources;
I have removed the repositories from github on the day you sent me the email because the very act of sending such a mail offended me. I used to think WhatsApp was a cool software but now I realize it isn't. I do not care about WhatsApp any more to be developing anything related to WhatsApp.
Confirm you will not in the future develop, sell or offer any unauthorized code, resources, services or products that interact, or enable other to interact, with WhatsApp services, products, or users;
Like I said, I f***ing don't care any more. You can be assured that I will not even talk good about WhatsApp any more, let alone interact with it.
Cease using the terms “Python-whatsapp-bot, pyWhatsapp, and QRtoWhatsapp,” “WhatsApp” and any other terms or logos confusingly similar to WhatsApp in connection with any code, resource, product or service you currently offer and may offer in the future;
I'll continue using the name WhatsApp when I mean WhatsApp. I shall make sure that nobody is confused which WhatsApp I mean when I refer to WhatsApp in sentences like "WhatsApp sucks".
Account for and disgorge all profits you have obtained from the development and distribution of Python-whatsapp-bot, pyWhatsapp, and QRtoWhatsapp;
I have not obtained any profit from the development of these programs. I have only incurred losses of time and energy.
Compensate WhatsApp for the damages it sustained from your distribution of Python-whatsapp-bot, pyWhatsapp, and QRtoWhatsapp;
Compensate WhatsApp for damages associated with Python-whatsapp-bot, pyWhatsapp, and QRtoWhatsapp’s infringement of WhatsApp’s IP; and
You should rather give me compensation for the insults and threats you hurled on me and for the effort I have wasted on making WhatsApp any usable.
Immediately take steps to preserve all documents, tangible things and electronically-stored information potentially relevant to the issues addressed in this letter, as those could be potentially relevant and discoverable materials in connection with any legal proceeding WhatsApp may choose to pursue against you or Python-whatsapp-bot, pyWhatsapp, and  QRtoWhatsapp.
Yes, that is why I'm writing this response as a post on my blog.
WhatsApp and its affiliates have taken technical steps to deactivate your WhatsApp, Facebook, and Instagram accounts, and hereby revoke your  limited licenses to access WhatsApp’s, Facebook’s, or Instagram’s websites and/or to use any of their services for any reason whatsoever. This means that you, your agents, employees, affiliates, or anyone acting on your behalf (“You” or “Your”) may not access the WhatsApp, Facebook, and Instagram services, websites, apps, networks, platforms, or otherwise (“Platforms”) for any reason whatsoever.
Please feel free to delete all my accounts on these platforms. Also I demand that you (or your client) do the following:
  • Delete all the data you have stored with or without my permission on the servers of Facebook/WhatsApp/Instagram.
  • Delete all the metadata you have collected from me with or without my permission.
  • Publish the details of all the data about me that you have handed over to any third party (NSA, advertisers, or anyone who is not Whatsapp/Facebook/Instagram). Take all steps possible to remove the data from those third party servers.
  • Delete all the groups I have created on WhatsApp/Facebook.
  • Remove the accounts of or give a warning to all users who have joined WhatsApp/Facebook/Instagram through an invitation sent by me.
  • Stop interfering in the Internet experience of millions of Internet users in India and other countries through programs like Internet org. (More about this later)
WhatsApp's log from their site. Probably a TradeMark violation by using it here.
Some friendly advice to WhatsApp and its new boss
WhatsApp was a cool thing when it was born. So was Facebook. That's why people like me started using those services. That's why we asked our friends to start using those services. That's why some of us continue using WhatsApp/Facebook even now.

But that doesn't mean these things will continue to be cool no matter what you do to it. In my opinion, WhatsApp is no longer cool. It does not support multiple devices, cloud sync, or sending files. It does not have a proper desktop/web client that works on its own. (Copy some good things from Telegram, maybe?).

To be a programmer is to automate things. Programmers have built automation on top of every popular communication medium (Jabber, IRC, diaspora, even facebook). WhatsApp cannot be an exception to this rule. Yet, unlike other instant messaging services, you continue to staunchly believe that automation shouldn't be possible on WhatsApp. That makes WhatsApp uncool too.

Services like WhatsApp relies on power users to gain traction. I am a power user myself. I am among those who start using your app before 1% of the world have heard of it. We are the people who bring traction to your apps. We are the people who dare into the unexplored and explore choices to their fullest. By sending hate mails to people like me, you're alienating the very people who made your service a success. I understand that you have gained the critical mass required to sustain without power users like me. But should you continue doing such hateful things, we will make people switch because we can.

So with Facebook. If you cannot continue to innovate, you'll fail. Just because you can change the algorithm at will to push posts from pages down, you shouldn't be asking pages to pay dollars to make themselves heard to their own hard earned fans. You shouldn't arbitrarily censor people. You shouldn't try to suppress social revolutions. You shouldn't interfere in people's social lives. The very fact that you continue doing these harmful things to the society means that you've become arrogant. You've forgotten your modest beginnings. And people will find out. They will switch away from you just like they switched away from others to you.

Maybe you understand. Maybe that's why you're now trying to restrict people's access to what services they can access on the Internet. Maybe that's the reason you push for misnomered schemes like Internet org which gives people easier access to your own services.

But I warn you and challenge you. You cannot continue being successful with strategies like this. You will fail. Walled gardens like yours will be replaced by open, vibrant spaces. Diversity will become the norm and monochromatic services like yours will become history. The Internet is not your property and it will not be. And we will protect that rich, diverse, free Internet.


If you like what you're reading, subscribe!

Get posts via email:

One more time, subscribe via email: