When I first started using a mobile phone in the late 1990s, I still had a "work" phone at my desk and a landline phone at my home. Over the years I began to use my mobile phone more and more, and eventually it became the only phone I had (for both work and personal use).
But in 2007 I realized that having a single phone for work and personal was not good. The main problem was that it just had a single phone number, so the girl I met at the bar that night had the same number as a potential new client at work. I realized that I needed to separate my phone lives, and this being 2007, the only choice I had was to get a second phone and to dedicate one to personal use and one to work use.
Of course at first i just got a basic personal phone, but I found that I missed being able to have maps and Google with at all times, so I'd end up carrying both my work and personal phones with me anyway. After a few months of this I bit the bullet and upgraded my personal phone to a smart phone which meant that I only needed to carry a single phone with me during non-working hours, but I still had two phones with me at work because I didn't want to miss any personal calls.
You can imagine that when VMware bought mobile phone hypervisor maker Trango in November 2008, I was a happy guy. I was also happy a few months later when Citrix invested in a similar company called OK Labs.
I remember being excited at the idea of running two phone OSes side-by-side. "At last!" I thought, "One phone, two identities!"
Of course the initial excitement of 2008 faded when the vendors reminded us that any practical phone-based hypervisor was "years away." And probably within a few months of seeing the demo, I completely forgot about the concept of the mobile hypervisor and I moved on.
Fast forward to October 2010...
A few weeks ago, my company (TechTarget) changed their policy around mobile phones and now allows full Exchange ActiveSync with Android- and iOS-based devices. (Previously they were Blackberry-only.) Up until then, I had been using a Blackberry for work and an Android for personal use. (I used to have an iPhone, but it was pretty worthless in San Francisco, dropping about 1/3 of my calls. I switched to a Motorola Droid on Verizon.)
Once we started supporting Android, I hooked the Android phone into our corporate email. It was a pretty quick process and gave me all the usual Blackberry-like features (contact & calendar sync, push email, etc.). And since Exchange ActiveSync also allows employers to enforce device security, I had to accept their terms when linking my phone to my work email account for settings like enforcing device lock timeouts and allowing them to remotely wipe the device if I lost it.
So now I have my full work email experience on my personal phone. This is nothing new. What's new for me is that I was able to transfer my full work telephone experience to this new device too.
For the past six months or so, I've been using a Google Voice number as my primary work telephone number. Google Voice essentially virtualizes your phone number--people who want to call you use your Google Voice phone number which you configure to ring on one or more physical phones.
In this case my new Android phone can do double-duty: Personal calls can come in directly via its native phone number, and work calls can be routed to it via Google Voice. (An added benefit of Google Voice is that you can configure "do not disturb" hours, so that business callers using the Google Voice number only ring through from Mon-Fri, 8:00am-6:00pm. Outside of those hours, they go straight to voicemail.
The Google Voice integration is simple and seamless for people who call me. The problem so far has been that when I call people using my mobile phone, the caller ID always shows as the phone's native number. This is a problem for two reasons:
- If the person I'm calling only has my work number in their phone, then me calling them from my personal phone number means that I show up as an unrecognized number.
- Since I'm calling from my native phone number and not my work number, my native number is exposed to the person I'm calling. If they save that number for me, then they could call me back directly and bother me when I'm out with friends, sleeping, etc.
The solution to this is to install the Google Voice Android app. It has the ability to enhance the Android's native dialer so that it, for example, always uses the Google Voice phone number as the caller ID number instead of the phone's native number. (You can also configure options for whether you should dial via VoIP or normal cell phone.) In my case I configured the dialer to pop up a prompt to ask me which number I want to call from, essentially allowing me to select which caller ID I show when I call someone.
A great solution with no client hypervisor in sight!
So right now it would appear that I have the ultimate solution. I only carry a single device (my Android, which my company pays for). I have access to both my work email (via Exchange ActiveSync) and my personal email (gmail, which the android is able to keep separate from my work stuff). I have my calendar, my contacts, push notifications, and full device backup to my Google account. And of course, I have the ability to both make and receive work and personal calls from the single device while controlling which calls go where and when. And most importantly, since it's "my" device, I can also install whatever other apps I want on it. (This includes real work apps like Concur Expense & Travel and the Citrix Receiver, as well as time-wasting fun apps.)
Even more importantly, since I'm connecting to my work email via Exchange ActiveSync, my employer can enforce the security of my device remotely.
So I ask: Why would I ever need a client hypervisor on a phone?
The initial use case that occurs to me is for situations where I want to carry a single device while running a different OS for personal use than the OS my employer wants to use. But I wonder... does my employer really care what OS I use on my device? My guess is "no." I assume that as long as my device is compliant with what they need to do (in this case the ability to be managed as an Exchange ActiveSync device which allows for remote security enforcement), then I would assume that my employer couldn't really care less about which OS (or even which make or model) my mobile phone is.
Running many different apps side-by-side on a mobile phone is simple compared to running multiple apps on a Windows desktop. The mobile apps (whether they're for iOS, Blackberry, Windows Mobile, Android, Symbian, WebOS) all share the trait of "playing nice" together. And they're all now available via mobile phone app stores that handle the complexities of provisioning, updating, data storage, and deprovisioning. So IT departments don't really have to worry about app management on mobile devices like they do on Windows desktops.
Combine that with things like the Citrix Receiver and the concept behind Citrix's Project Golden Gate, and the actual device becomes even less important. It seems that the only real sticking point for folks is how to handle multiple phone identities on the same device, and services like Google Voice take that challenge out of the mix too. (And for the record, there aren't even any mainstream phones that could take multiple SIM cards to allow a mobile hypervisor to mix & match identities.)
So while Citrix and VMware work on their mobile hypervisors in the labs, it seems that the world has moved on. I personally am enjoying everything I thought I needed a mobile hypervisor for today without one.