With the release of the iPhone 4 today, my attention is on Facetime. Every time Apple has launched a new product in the past decade, they’ve shown their brilliant ability to execute by rethinking everything from the ground up and asking themselves, for every engineering step and every button of a product, why is it done this way anyway? How does the user think when he wants to do this? How can we improve the experience?
In the early days of the Personal Computer revolution, people have associated Apple with simplicity without necessarily thinking of simplicity as a quality of a technology product. Behind the curtains, the philosophy, or rather the self-imposed constraint of simplicity at Apple have forced them to consistently, and for every product, focus on the content manipulated by the product and not the product itself and study a broad universe of things and thoughts surrounding products: the state of mind of the user (“this is how I think it should work”), the supporting environment (“this is the network bandwidth we have available”), as well as pushing the gears behind the screen: if you want to show less buttons but still give all the great features, your application need to be smarter in order to guess what are the only things a user would likely want to do on a particular screen.
I apply the same philosophy doing Web Development, and it is getting so important in this Industry as users are (rightfully) getting lazier, submerged with information and having less time to deal with your product. I believe great engineers think of themselves as artists, and in my opinion this got to be the way Apple think. Rare are large companies that think things thoroughly like Apple. Obviously Steve Jobs is driven by what he is doing, not by money, and so must be a lot of Apple’s employees, and this is why Apple is so successful.
Will Facetime be the beginning of videocalling finally being widely used? Very likely. Now let me add my two cents to what have been said recently in the press and in comments on Facetime and ask a few questions.
“Forget about it, this is only iPhone 4 to iPhone 4”
This is a bit like HTML5 vs Flash. Apple relied on open and modern technologies to design Facetime (and is on its way to standardize with an open-body the glue they added to make it work together), and so far the iPhone 4 is the first device to support the combination of these technologies in one bundle. What it means is that anyone will be able to design applications compatible with Facetime’s protocol and add support in their own device or application.
What it means for applications like Skype
On the long run, I think proprietary chat/video applications like Skype won’t survive, even if they add Facetime compatibility. They are limited to their user base, and although their interface look polished, their technology is outdated and closed, they just can’t compete. Personal users are going to use more and more SIP initiation which doesn’t requires any setup/registration/discovery, and the chat/video features integrated with their E-mail service provider, which require very little discovery (for example gChat in Gmail uses the open Jabber chat protocol, automatically archive your conversations in your mailbox, and already uses H.264 SVC, which delivers significantly better video quality than Skype). Businesses are going to want to use a combination of SIP (compatible with their VoIP systems), Jabber (which they can run in-house and over SSL), and videoconferencing/live collaboration solutions, which in the future, can be also be made compatible with a Facetime gateway for participants on the go.
What it means for networks
First, both Internet and cellular networks are going to need evolving faster towards close-to-symmetrical bandwidths, this is not a new requirement. Second Facetime is only allowed on WiFi by AT&T at launch (and on most foreign carriers too), probably for a combination of reasons:
- Their network (especially AT&T) sucks and obviously won’t handle the traffic
- As it is made by Apple, they expect rightfully everyone will actually use it, and they can’t ignore those users like if they were Skype users
- There are no pricing policies and maybe even pricing technologies for it yet
Let me develop a bit the third point: Facetime being somehow an extension of voice calling (uses SIP), and given that carriers obviously cannot delivers unlimited traffic if everyone becomes a heavy user (let alone unlimited traffic for AT&T), the billing method that makes the most sense is deducting it from your calling minutes. Actually, these smart asses carriers are probably thinking right now they should try to charge even more for it.
Is Facetime using Scalable Video Coding?
Having worked briefly on the UX engineering behind Vidyo, I wonder if Facetime use H.264 AVC or SVC? I haven’t read any mention of SVC in relation to the iPhone 4, does anyone know about this? I am certain that even if Apple is not using SVC in Facetime currently, then they will, as they rarely miss an opportunity to use the best technology available. There IS a BIG difference by using SVC. If AT&T cannot even handle normal calls in San Francisco, can you imagine it handling an (almost) constant data rate?
Videoconferencing: When 2-way is not enough
Seeking to do meetings with some of my business partners and friends on the go, I recently tried Webex and all the others decent Videoconferencing collaboration solutions around. I realized there is not a single good hosted Videoconferencing service (Vidyo is really good but has been designed for in-house setup). And as Vidyo understood it well, hosting videoconferencing requires a strong local network presence, and this is currently better accomplished with some control over the hosting. Yet, Videoconferencing and collaboration is getting more and more important for businesses (and will be for schools and families). As we work with people from everywhere, two-way is already not enough. There has been rumors of Google working on a Videoconferencing product. They understand the technology, they know how to make simple and good UIs and they have the network of servers. It would be a good addition to Google Apps for Businesses, wouldn’t it? They bought a videoconferencing company last month. I predict their solution is going to be a huge success.