Monday, April 21, 2008

Symbian and Windows on the same device - what the hell?

I've just finished knitting the brows after reading it in the news that IBM launches an initiative that has something to do with the mobile world. "It seems", I thought, "that there's so much money in mobile business that even the Big Blue could not resist".

But now I'm totally down on the floor with the idea of having more than one, potentially completely different, operating systems on the same device. I've just read that Motorola invests in VirtualLogix, Inc. whose "VirtualLogix VLX enables multiple operating system environments to run concurrently on shared hardware and provides a range of performance, fault tolerance and security options to address specific market requirements".

In my opinion, the whole solution abounds with challenges. Technically, from usability/business point of view, whatever. The thing is that each member of the value chain must learn/tackle something new. For example,

  • Device manufacturers must be prepared for having to integrate such hardware elements in the same device that enable multiple operating systems to run in parallel also considering the cost of virtualization (in terms of time, but money-wise, too). These pieces of hardware must give the best performance so that the user experience is constantly good on all platforms. For example, whilst a ~500MHz CPU performs well on a Windows Mobile-powered device, it's a dual 330MHz CPU that gives the same performance on an Nokia N95 8GB. Of course, this applies not only to the CPU, but to memory, persistent storage, etc., too. Thus, hardware costs will definitely be higher than for regular phones.
  • Of course, there will be a constant fight for giving the same performance as on a normal device and also keep the price of the device as low as possible. As to software vendors,
    • Writers of guest operating systems (each operating system will be guest, by the way) must prepare for a new challenge, namely that scarce system resources will become even busier and harder to get access to.
    • Some weird situations could also occur, for example, when a resident background application would be waiting for an incoming call, which would eventually be "stolen" by another virtual device with a higher priority.
    • In addition, it would result in a much better user experience if commonly used resources, such as persistent storage, were shared. For example, the file system:
      • One use case would be to allow the user to seamlessly move files between OSes.
      • Another to allow browser applications of the same type running on different platforms (e.g. based on WebKit on Android and S60) to share cookies, forms data, etc.
      • On the other hand, mobile OS vendors should be careful about what they would give access to: a secure platform cannot afford making a security hole by letting other platforms access sensitive shared files (such as DRM-protected content) unless a satisfactory level of protection is applied.
  • I'm not sure as to how network operators could be affected by the introduction of a multi-OS mobile device other than having to adjust something in their administration system. Oh yeah, a seamingly not so important question: branding should apply to ALL operating systems running on the same device. Anyway, I think these issues would be less important and easier to solve than the challenges described above.
  • Not necessarily a content provider issue, but it rather concerns the content consumer who would not like to pay for the same content twice in order to be able to use it on the same device, but on a different platform. For example, I wouldn't like to pay again for an MP3 music that I've already downloaded to my Windows Mobile device, but would like to listen to it now on my S60 phone (remember, we're talking about the same phone!).
  • Finally, the user: I think the experience, as such, would be new to the user. The feeling that she can choose which device she'd like to work with today. However, it's uncertain at what price this feeling would come: in terms of user experience, reliability, price of the device, etc.
Personally, I think it's not the right time to introduce such an advanced technology, not as if it was a question now. When smartphones are still often considered as a toy used by mobile geeks, when most people still want to use them only for voice calls and text messages, when enterprise infrastructures rely on/users committed to either Windows Mobile or Symbian, but not both - there is simply no business demand and serious reason to hurry. It must be a long-term plan, though I still wonder if/how/when it will work out.

My two cents,


Friday, April 11, 2008

True emulation for Symbian development - when?

Though I've already heard that Windows Mobile SDK offers true phone emulation, however, only now have I got to the point that I ask for your opinion: why cannot we do the same during Symbian software development?

Note that you might have also heard that iPhone developers can also rely on this useful service. Nevertheless, don't forget to bear in mind that they must be working on the same platform, i.e. MacIntosh OSX. That is, there's not too much to emulate there.

But Windows Mobile is different: you develop on Windows presumably on an x86 architecture and produce binary code for another processor architecture (ARM) that you can even debug on. How? Why on Earth cannot we do the same?


Thursday, April 10, 2008

Apple as an MVNO

Very interesting patent from Apple (thanks to Unwired View), I wonder how it would work in practice.

Generally I can see it's a viable idea, however, also wondering how roaming charges can compete with any networks' own tariff. I understand that there would be a competition between available network operators, however, roaming charges still remain roaming charges.