I’m always highly skeptical of any product that comes my way that’s supposed to solve all my problems in a particular area. Cloud computing was a great example of this as I had already gone through most of the marketing spiel previously with Software as a Service and was stunned when it made its triumphant return with a few additional bells and whistles. Granted I’m coming around to the idea since the services have matured but I still don’t believe its the panacea to all of your IT woes as many of its advocates will have you believe. Of course this kind of hype talk is always around and the current buzzword du jour is the coming of the “Post-PC era”, a time where the personal computer is replaced by tablets and smartphones. Needless to say I’m highly skeptical of this kind of marketing malarkey,which in no small part is due to the fact that Steve Jobs has been the one to start spruiking the term.
The idea seems to be steaming from the recent growth in non-PC devices that replicate certain PC functionalities. For example the mobile web experience has matured significantly over the past 3 years with many web sites (including this one) creating separate sites designed for the mobile platform. Additionally native applications on phones are becoming increasingly more capable with many functions that used to take a fully fledged desktop or laptop now available in the palm of your hand. Truly the capability explosion that mobile devices have undergone in the past few years is quite extraordinary and extrapolating that out would have you believe that in a few short years these devices will be as capable as their PC cousins, if not more so.
However I just can’t see a future where the PC isn’t around.
You see these mobile devices (phones, tablets and what have you) are primarily consumption devices. This is because the platform lends itself to this quite readily as creation on these devices is quite a chore when compared to its bigger, tethered brethren. For instance I’ve tried several times to write blog posts on the run using my smartphone (even one with a physical keyboard) and the experience has been nothing short of atrocious. Sure hammering out a tweet or 10 is easy, 140 characters doesn’t take long at all, but any long interaction with my phone is quite a laborious exercise. Thus most applications on these devices are centered around consuming something rather than creating, simply because these devices aren’t really made for using longer than 5~10 minutes.
But I can the post-PC crazies saying “but wait you could pair your tablet with a keyboard and mouse thus solving this issue!”. Well yes, of course you could but in reality aren’t you just replacing your laptop for a tablet/smartphone with a giant dock attached to it? Realistically you’re just replacing the innards of your current PC with something that’s, I’ll admit, far more portable but also a whole lot less capable. You’d probably find that there would be beefed up versions of these mobile devices available, sacrificing battery life and weight to give you a little more power. That or they’d rely on massive back end infrastructure, in essence going back to the good old days of mainframes and thin terminals (defeating the whole post-pc era idea completely).
Are there things that PCs should give way to? Of course, the fact that mobile devices are limited primarily to consuming content rather than producing it means that the consumer experience on these devices is quite good. Whilst I may use several services from my PC the vast majority of my time spent on social media is through my iPhone simply because it’s easy and available. It also makes for a great travel companion when I don’t want to lug my Macbook Pro around and only need access to a few files like itineraries or other information. Does that mean they can replace my PC outright? Hell no, but there are many use cases where I’d prefer to be using my mobile rather than a desktop PC.
I think there will be a few people who will be able to replace their current PCs, whatever their form factor, with the new wave of “post-pc era” devices. Similarly there are also a similar number who will never have a need for such a device and will continue along as they are now. In the middle there will be those who use both, supplementing their PC with additional devices that suit a particular purpose they have in mind. That middle sector is where I believe most of the future users will reside, using the most appropriate device for the task at hand. Over time I believe our view of what constitutes a PC will shift but there will always be a place for a dedicated computing device, even if that ends up just being the horsepower driving the services behind the post-pc devices.
Market research is a great way to procrastinate. I’ve spent quite a lot of time getting to know what platforms I should be targeting just so that I don’t waste my actual development time on building something that no one will bother using. In this time that would have been better spent actually coding something I’ve come to notice an interesting trend in the world of mobile applications: everyone seems to be ignoring the biggest market of them all, Symbian. Owned by Nokia Symbian smart phones still dominate the market with over 45% market share which dwarfs all of its competitors to the point of being more than RIM (Blackberry) and iPhone combined. So why isn’t every other developer jumping at the opportunity to exploit this market to the point that they have done for the likes of Android and the iPhone? The answer, to me at least, has its roots in simplistic ideals but overall is quite convoluted.
At its heart the neglect of the Symbian platform can be traced back to one thing: money. Symbian has been around for quite some time (its ancestors can be found as far back as the late 1980s) although its current incarnation in the world of smartphones made its first appearance back in 2001, opening up a world where a phone’s capabilities could be expanded by the installation of third party applications. Its release was closely followed by the first release of PocketPC (later renamed Windows Mobile) that supported smartphones but Symbian still had the upper hand thanks to its uptake with many of the large phone manufacturers. As time went on Symbian found its way onto nearly all of Nokia’s advanced handsets which, coupled with their easy to use interface and overwhelming feature sets, led to astonishing popularity with the 100 millionth Symbian handset being sold only 5 years later with total shipments today exceeding 390 million.
Still unlike the iPhone or Android platform there really wasn’t any incentive to develop for them. The segmentation of both the Symbian and Windows Mobile market was and still is quite vast with no real guarantee of what features or specifications one phone might have. Whilst there are still many applications that can be developed despite these limitations many developers shunned the mobile space because apart from corporate applications there was no tangible way to monetize their efforts. Then along comes the iPhone with one standard set of hardware, a large fanbase and a distribution channel with built in monetization for any developer willing to shell out the $99 fee. After that the mobile space began to open up considerably but Symbian, even with its giant market share, has yet to capitalize on the mobile application market.
This means that whilst the Symbian market might be the largest of them all its also the least likely for any developer to be able to profit from. Symbian handsets cater to a much larger market than any other, including the lower end that even Android fails to capture. Unlike Apple, which deliberately targeted a market with cash to spare, Symbian users are the least likely to pony up some cash for an application. Additionally since there’s been no real central, easy to use medium for users to get applications on their Symbian phones (I know, I tried it on my N95) the vast majority of them won’t be in the mindset to go after such an application, favouring web based applications instead.
There is also, of course, the technical challenge behind building an application on these platforms. Whilst I’ve only dabbled in Windows Mobile (which for a C# developer was incredibly easy) recent reportsshow that Symbian is not only the hardest it also requires two to three times the amount of code to complete the same application on an iPhone or Android handset respectively. Whilst learning another language is really just a lesson in semantics it still slows your development time down considerably and when you’ve got your eye on making some money from your venture a steep learning curve will be a major barrier to entry. There has been some work to reduce this somewhat with the integration of the S60 platform with the open source cross platform library QT, but my previous experiences with that framework don’t make me so hopeful that it will make developing for Symbian any easier.
The ignored giant Symbian is an interesting phenomenon as intuition would tell you that the largest install base would drive the largest secondary markets. As a developer I still find it hard to ignore the call of almost 400 million devices that could possibly run my software but knowing a few people who own Symbian devices (read: they use their phone as a phone, not much else) I still feel like my effort would be better spent elsewhere. As time goes by it will be interesting to see if Symbian can continue to hold onto its dominance in this space or if they will eventually lose out to the young upstarts Android and iOS.
I’ve had a good share of Windows Mobile phones over the past few years and, up until recently, never really liked any of them. My first was an O2 XDA Atom Exec which I bought because I’d become one of those super smart IT admin-type guys and I should have a phone to match. It worked well for the first few months before starting to show problems like dropping calls and freezing at random times. After replacing the screen on the Atom it developed the fun problem of randomly turning off if it was bumped in any way and I ended up replacing it just on a year later with a HTC Touch Diamond. I thought that it was a brilliant phone until it decided to mute my speaker every time someone called me so I couldn’t talk to them and no amount of ROM flashing or hacking could convince it not to do it otherwise. My Xperia X1 has managed to avoid developing any show stopping problems thus far, but the hardware keyboard seems to be on the way out, missing keystrokes or repeating them 25% of the time.
I’m not alone with these gripes either and that’s why there’s a massive community dedicated to improving Windows phones by any means possible. Companies like HTC have allowed these things to flourish as they usually end up using many of the improvements that the forum generates (rumour has it their Touch-Flo UI was apparently born out of there). However this just shows how rife with systemic problems the Windows Mobile Platform is when people are that dedicated to making the devices more usable. It’s been the norm for the past 5 years and up until recently Microsoft had shown no signs of changing.
That was however before they announced the Windows Phone 7:
Microsoft really has changed nearly everything. Most obviously, the user interface is new. Touch is mandatory for all 7 Series devices, and the user interface reflects that; it’s touch-driven through and through. No longer will phone users have to use small, fiddly, desktop-oriented scroll bars; smooth finger scrolling with inertia is the order of the day. The finger-friendliness is exemplified by the new start screen. There are large panels in a smooth-scrolling grid. The look is clean and crisp, balancing at-a-glance information—counts of unread text messages and e-mails neatly displayed in their squares, for example—with simple thumb-sized accessibility. Each panel represents a particular “hub”—a place where all related information (be it contacts, photos, music and videos, etc.) is brought together and managed. As you move between the screens of each hub, smooth animations rotate and slide information into place, giving the user interface a kind of cohesive “joined up” feel.
This particular paragraph of the Ars Technica article really hits on the points that have frustrated us Windows Mobile users for years. At its heart any Windows Mobile device is really just a scaled down version of Windows, including the UI. For something that will predominately be used without a mouse and keyboard such a design drastically reduces the usability of the device, relegating many users to a “hunt and peck” style of interfacing with their device. HTC and others tried desperately to improve this by creating their own UIs that were more targeted towards mobile usage but if they didn’t include a certain application in their redesign you were straight back into mobile hell. I won’t even bother with the poor attempts at virtual keyboards.
With the coming of the iPhone and its finger friendly design Microsoft obviously began to reconsider it’s mobile design. Just as the iPod served as a testbed for some of the UI elements that made their way into the iPhone Microsoft is using a similar approach with the Zune. The extremely minimalistic design lends itself much more easily to use without a stylus and is a drastic improvement over what is available now. They’ve steered clear of many iPhone-esque features in order to create their very own look and feel for when you’re on a Windows 7 phone. Additionally they’ve also provided a fairly strict set of minimum requirements for any phone that might run the new mobile OS, which leads me onto the crux of the matter.
Whilst the biggest player in the smart phone market still isn’t Apple (it’s RIM, because of their corporate market capture) they are the largest direct competitor for Windows mobile devices. Additionally with Android on the up and up Microsoft is under incredible pressure to innovate or die and of course they’ve taken the route they always take: clone their best competitor. Sure on the surface the new OS doesn’t look anything like the iPhone but in reality the differences are quite deep. A minimalistic and finger friendly UI definitely resonates with Apple’s design philosophies and the strict platform requirements, whilst not as closed as Apple’s, are yet another Apple trademark. The icing on the cake is the recent launch of the Windows Marketplace for mobile applications, a direct competitor to the App Store.
For me however all of these are secondary to the biggest feature that the new mobile OS will bring: Silverlight to the mobile market. I was excited at the prospect of them bringing it to all Mobile 6 devices and above however they canned that idea sometime last year in favour of focusing on support for Mobile 7. The introduction of this tech to mobile handsets makes it possible for me to maintain a single code database for both web and mobile application version of Geon with only minor modifications, a significant reduction in coding time. It might sound like I’m just being lazy but the development road map I have requires support for the iPhone, Android, Windows Mobile and Web. If I can combine 2 coding streams into one that’s a reduction of almost 25% of my work with the added benefit of additional features that might not be available in platforms that don’t run Silverlight natively.
The unfortunate thing about this however is the release date for Mobile 7 is “holiday 2010” which basically means the end of the year. I’m sure there will be beta versions of it all over the Internet well before then but I can’t really devote anytime to coding for a product that’s not released and with an unknown user base. So it seems for now I’ll be stuck with my good old Xperia X1 running 6.0 and maintaining 4 separate code bases for my pet application. Still it’s something to look forward to and who knows if Geon takes off maybe they’ll even swing a phone my way for free (oh come on Google did it, why shouldn’t Microsoft!) 😉
I love virtualization, really I do. Ever since my first encounter with it back in university when I didn’t have the spare cash to build another PC to run Linux so I could compile my projects at home I’ve had a fondness for it and the flexibility it provides. This web page is coming to you from a virtualized Server 2008 instance on VMware’s vSphere 4 and the switch from workstation was both painless and fruitful. So when VMware announced a while back that they were planning to do the same thing with smartphones I was excited, but back then with Android still being a small player I wrote it off as cool but probably not something I’d want or need. Recent news however has changed my mind:
VMware has flagged smartphones as the next platform in the evolution of virtualisation, but at least one major competitor, Microsoft, says that it sees no demand for the technology.
Speaking to Computerworld, Srinivas Krishnamurti, VMware’s head of mobile phone virtualisation said the company’s vision for virtualisation on smartphones went beyond the basic dual-boot prototypes currently in development to one that ran both a private and work operating system and profile at the same time.
“We don’t think dual booting will be good enough – we’ll allow you to run both profiles at the same time and be able to switch between them by clicking a button,” he said. “You’ll be able to get and make calls in either profile – work or home – as they will both be live at any given point in time.”
Bringing virtualization to the smartphone platform opens up some very interesting possibilities. The first thing that comes to mind is that for developers like me who want to target all the major platforms (Windows Mobile, Android and iPhone) we have the potential of loading up several phone OSs on our hardware, allowing us to quickly test against real hardware. Whilst I’m sure that Apple won’t release an iPhone image to use with it there’s still quite a bit of value in being able to quickly test on real hardware. The simulators only go so far.
The other interesting thing that might be possible would be the integration of this virtualization with some of VMware’s current line of products, like VMware View. In essence view decouples the OS from the underlying hardware and the bulk of the hard work is done by a backend server. It’s reminiscent of the old days of dumb terminals hooked up to a giant mainframe however it has the benefit of user’s data being centrally located (and protected) whilst giving them the flexibility to say, move from office to office and take their desktop with them. The same could potentially be done with smart phones which would give admins unprecedented control over their user’s mobile environment. RIM and Microsoft give you a pretty decent amount of control over your user’s phones already, but something like this integrated with view would allow you to see what you’re user is seeing on their phone (like RDP for phones). I can bet there’s more than a few admins who would like that.
It’s also one of those products that lets you get more out of your hardware, something I’m very fond of. Whilst I’m not going to be constantly switching between OSs I can easily see myself hearing about a new cool app on the Android marketplace and wanting to switch over to try it. VMware are currently marketing it as having one image for work and one for home which is a damn good idea when you consider that many companies will require encryption on your device if it has work emails on it. If I could avoid having to put my PIN in every time I wanted to use my phone by having a second OS then I’d be all over it.
As with most of VMware’s products it will take a while to find its place in the world. I’d be guessing that the first few versions will work as advertised on certain handsets until they get some real demand for it. Right now it seems to be firmly stuck in the developer’s plaything market but as it matures I can see quite a few awesome possibilities that could turn your regular old smartphone into something that could almost qualify as a pocket desktop replacement.
I’ll be keeping my eye on them for the next year, that’s for sure.