Many people are asking why we’ve stopped supporting the iPhone 3G. It’s because Apple has stopped supporting old iOS versions and old iPhones in their most recent version 4.5 of Xcode, which is the tool (the only tool) that engineers use to make iPhone apps.
The iPhone 3G has a special place for me in my heart – it was the first smartphone I bought in January of 2009 and it was the first phone on which we started developing WhatsApp just a month later.
Then as now, however, we must follow Apple’s lead on all things related to the iPhone. Their pace of innovation has a price of forced obsolescence.
Advertising has us chasing cars and clothes, working jobs we hate so we can buy shit we don’t need.
– Tyler Durden, Fight Club
لقد أمضينا أنا وزميلي “براين” قرابة العشرين عاماً في ياهو (إن أضفنا سنين العمل مجتمعة) حيث بذلنا الجهود لكي يستمر الموقع. ونعم لقد عملنا جاهدين لبيع الإعلانات لأن هذا ما كانت تقوم به ياهو. كانت تجمع البيانات وتعرض المواقع وتبيع الإعلانات.
ولقد شاهدنا جوجل – وهو من تجار الإعلانات الأكثر فعالية والأكثر ربحا ً- يغطي على ياهو لناحية الحجم والاستعمال. فهم يعلمون عمّا تبحث، ويمكنهم بالتالي جمع بياناتك بفعالية أكبر وبيع الإعلانات بشكل أفضل. اليوم باتت هذه الشركات تعرف الكثير عنك وعن أصدقائك واهتماماتك وتستخدم هذه المعلومات لبيع الإعلانات.
عندما بدأنا نفكر بمشروعنا هذا منذ ثلاثة أعوام، قررنا ألّا نفتح المجال للإعلانات. فأردنا أن نبذل جهدنا في بناء خدمة يود الناس استعمالها لأنها فعالة وتوفر عليهم الأموال وتغيّر حياتهم نحو الأفضل وإن بشكل بسيط. وكنا نعرف أنه بإمكاننا أن نفرض رسوماً مباشرة بدلاً من اللجوء إلى الإعلانات. وأردنا أيضاً تقديم منتج لا إعلانات فيه لأن الناس لا يحبون الإعلانات.
فلا أحد يرغب في الاستيقاظ صباحاً لمشاهدة الإعلانات ولا أحد يحلم مساءاً بالإعلانات التي ستعرض في اليوم التالي. أما الناس فيسرهم التفكير بالأصدقاء الذين تحدثوا معهم اثناء النهار ويأسفون إن فوتوا فرصة التحدث إليهم. فنحن نريد من واتساب أن يشكل أداة التواصل التي تبقيك مستيقظاً خلال الليل وتحثك على النهوض باكراً لمتابعة الدردشة. فلا أحد يستيقظ من قيلولته مسرعاً إلى جهازه ليرى الإعلانات.
لا تشكل الإعلانات تشويشاً على الجماليات فحسب بل إنها إهانة لذكائك وانقطاعاً لسير أفكارك. في كل شركة تعمد إلى بيع الإعلانات، يقضي جزء لا يستهان به من المهندسين يومه منكباً على ضبط البيانات ومعالجتها وكتابة برمجيات أفضل بهدف إحصاء معلوماتك الشخصية وترقية الأنظمة التي تحفظ هذه البيانات والتأكد من تنظيمها وترتيبها لاستعمالها لأهداف إعلانية. أما حصيلة هذا اليوم المضني من معالجة البيانات فتتمثل بشريط إعلاني يعرض على هاتفك أو على حاسوبك لا يختلف عن شريط اليوم السابق إلا قليلاً.
تذكّر! عندما تكون الإعلانات جزءاً من أعمال شركة ما تكون أنت المستخدم “السلعة” المتداولة.
أما في واتساب، فيمضي مهندسونا وقتهم في تحسين التطبيق وإضافة خصائص جديدة عليه ومعالجة الأخطاء السابقة لتقديم وسيلة غنية للتواصل، وأداة موثوقة ومتاحة للجميع بسعر معقول. فهذا هو منتجنا وهذا هو شغفنا حيث أن بياناتك لا تعنينا أبداً ولا تهمنا الاستفادة منها بأي شكل من الأشكال. عندما نُسأل لماذا نفرض رسماً مقابل استعمال واتساب فنجيب “هل تفضلون الحل البديل [أي بيع بياناتك للإعلانات]؟ “
Today we wanted to write a blog post about two new exciting features we have recently introduced. We hope you will enjoy them and use them frequently.
First feature is an improvement on the current “Share Location” functionality. Historically our “Share Location” functionality allowed you to send your location to your chat partner or to your group chat. It is useful if you want to share your approximate location on a map. We got a lot of feedback asking for ability to share a specific place – for example, when you waiting to meet friends in a bar, at a restaurant or some other physical place. We have added this feature on top of the existing “Share Location” functionality. Now when you use “Share Location”, you can either send your Current Location right away or wait a few seconds for places near you to load and pick from. If you haven’t used “Share Location” before, this graphics shows you how to get to Share Location menu on iPhone, BlackBerry or Android devices:

Once you enter “Share Location” menu, you will be presented with an option to send your Current Location immediately as you have always been able to in the past. Alternatively, if you wait a few seconds, you will be presented with a list of places nearby. Once you select the place to send, it will appear in the conversation. You can tap on the name of the place to get more information about it or you can tap on the map thumbnail to view the place on the map. This is what selecting places and viewing places looks like on the iPhone:

This is what selecting places and viewing places looks like on the Android:

This is what selecting places and viewing places looks like on the BlackBerry:

Second new feature we want to talk about is ability to set a Group Icon for your group chat. We wanted to give all of you the ability to personalize your group chat by attaching a custom icon to your group. For example, if you have a group chat about soccer, you can use a photo of a soccer ball as the group icon.
Anybody can set or change the group icon when viewing Group Info. This is how you get into the Group Info:

Once you enter Group Info, simply tap or click on the Group Icon to set it or change it:

Thanks for reading and stay tuned for more cool and innovative features as we continue to iterate and improve our product.
We have been getting a lot of emails and questions from you about this chain letter message circulating in our network:
WhatsApp is going to cost us money soon. The only way that it will stay free is if you are a frequent user i.e. you have at least 10 people you are chatting with. To become a frequent user send this message to 10 people who receive it (2 ticks) and your WhatsApp logo should turn Red to indicate a frequent user.
Please understand that this is a hoax and there is no truth to it. While we are flattered that we made it to Hoax Slayer, we would rather work on cool new features instead of debunking silly stories like these.
UPDATE: this is a hoax message as well:
“Whatsapp is shutting down on 28th jan Message from Jim Balsamic (CEO of Whatsapp) we have had an over usage of user names on whatsapp Messenger. We are requesting all users to forward this message to their entire contact list. If you do not forward this message, we will take it as your account is invalid and it will be deleted within the next 48 hours. Please DO NOT ignore this message or whatsapp will no longer recognise your activation. If you wish to re-activate your account after it has been deleted, a charge of 25.00 will be added to your monthly bill. We are also aware of the issue involving the pictures updates not showing. We are working diligently at fixing this problem and it will be up and running as soon as possible. Thank you for your cooperation from the Whatsapp team”
Happy 2012 everyone!
A few months ago we published a blog post that talked about our servers doing 1 million tcp connections on a single box: http://blog.whatsapp.com/?p=170
Today we have an update for those keeping score at home: we are now able to easily push our systems to over 2 million tcp connections!
jkb@c123$ sysctl kern.ipc.numopensockets
kern.ipc.numopensockets: 2277845
Best part is that we are able to do it with plenty of CPU and memory to spare and do it sustainably:
CPU: 37.9% user, 0.0% nice, 13.6% system, 6.6% interrupt, 41.9% idle
Mem: 35G Active, 14G Inact, 18G Wired, 4K Cache, 9838M Buf, 27G Free
This time we also wanted to share some more technical details with you about hardware, OS and software:
hw.machine: amd64
hw.model: Intel(R) Xeon(R) CPU X5675 @ 3.07GHz
hw.ncpu: 24
hw.physmem: 103062118400
hw.usermem: 100556451840
jkb@c123$ uname -rps
FreeBSD 8.2-STABLE amd64
jkb@c123$ cat /boot/loader.conf.local
boot_verbose=""
kern.hwpmc.nbuffers=32
kern.hwpmc.nsamples=64
kern.ipc.maxsockets=2400000
kern.maxfiles=3000000
kern.maxfilesperproc=2700000
kern.maxproc=16384
kern.timecounter.smp_tsc=1
net.inet.tcp.tcbhashsize=524288
net.inet.tcp.hostcache.hashsize=4096
net.inet.tcp.hostcache.cachelimit=131072
net.inet.tcp.hostcache.bucketlimit=120
and the last important piece of our infrastracture is Erlang:
8> erlang:system_info(system_version).
"Erlang R14B03 (erts-5.8.4) [source] [64-bit] [smp:24:24] [rq:24] [async-threads:0] [kernel-poll:false]\n"
P.S. – we are hiring in both client and server teams, so send your resume to jobs at whatsapp dot com if you are interested (.. and we are also looking for summer interns)
Coinciding with our planet crossing the 7 billion population mark this week, last week WhatsApp crossed its own milestone for the first time by sending just over 1 billion messages in a single day. Similar to the awe we feel that our planet will now hold over 7 billion people, all of us at WhatsApp are extremely humbled and excited about the future.
Just how much is 1 billion messages? That is 41,666,667 messages an hour, 694,444 messages a minute, and 11,574 messages a second.
1 billion messages a day is a significant milestone and also a small step closer towards our goal: providing a great mobile messaging system for a global market, regardless of your handset.
The loyalty and passion consumers have for our product leaves us feeling great gratitude, we really couldn’t do it without you.
On Saturday September 25th, after months of hard work, our Windows Phone client went live in the Marketplace!
WhatsApp Messenger for Windows Phone is available to those running version 7.5 (Mango) release on their device. We are sorry if you don’t have Windows Phone 7.5 yet, but very soon all of the current Windows Phone 7.0 devices will get upgraded to 7.5 and you will be able to download and enjoy our app.
Also, Windows Phone client release brings our total supported mobile platforms to SIX! Just to recap, they are:
- iPhone (OS 3.1 or newer)
- Android (OS 2.1 or newer)
- BlackBerry (OS 4.5 or newer)
- Nokia Symbian S60 (3rd Edition Feature Pack 1 or newer)
- Nokia S40 (6th edition or newer)
- Windows Phone (OS 7.5 or newer)
We are extremly excited to add Windows Phone to the list of supported platforms. Stay tuned for more features and improvements…
We usually don’t use this blog to talk about the technology stack behind WhatsApp, but today we wanted to share with you an awesome milestone we have reached.
Over the past few months we have been making a lot of improvements to our servers to increase the performance, uptime and scalability. Today we have tuned some knobs, shifted some traffic around and achieved 1 million established tcp sessions on a single machine (and with memory and cpu to spare!)
$ netstat -an | grep -c EST
1016313
We are extremly proud of this achievement and wanted to share with other tech minded people out there. For those curious how we did it, the technology on the backend is simple: FreeBSD + Erlang
P.S. – we are hiring in both client and server teams, so send your resume to jobs at whatsapp dot com if you are interested.
Today we are happy to announce the public beta release of WhatsApp Messenger for the Nokia S40 platform. You can download it by visiting http://www.whatsapp.com/s40/ from your Nokia S40 phone (we are only supporting Nokia C3-00 and Nokia X2-01 phones at the moment, but we plan to add support for more S40 devices in the future)
As with any beta software, we need your help finding and reporting bugs – so please email s40-support at whatsapp dot com if you run into any problems with WhatsApp Messenger on your Nokia S40 phone. You can also contact us directly from the app via Options > About > Contact (that is preferred method when reporting bugs)
Please keep in mind that the product is still in beta and has limited functionality when it comes to multi-media or group chat. We plan to continue development efforts to further improve the application by fixing existing bugs and adding new features. Stay tuned…
It took us slightly longer, but group chat is finally here. If you have an iPhone, BlackBerry or Android phone, simply upgrade to version 2.6 of our software to enjoy group chat. If you have a Nokia Symbian S60 phone, we are working on adding group chat to our Symbian client and hope to release it shortly.
Here are a few important notes on group chat:
- currently group chat is limited to 5 people. in the future we will increase this limit.
- you can exit a group chat that you are in at any time. simply delete the group conversation from the main Chats window to do that.
- you can control group chat alerts and notifications separately from individual messages.
we are continuing to work on adding more cool group chat features and fixing bugs… if you have any group chat feedback, let us know.
- WhatsApp Team