Thursday, October 29, 2009

On Google's move in navigation

It's been announced a couple of days ago that turn-by-turn GPS navigation would be supported soon on devices based on Android 2.0 platform. Free of charge. The new Google Maps Navigation offers free turn-by-turn navigation garnished with Google's core business (search by voice and in plain English, search along route) and existing services (traffic, satellite and street views) for Android devices.

I was shocked to hear this news. The two biggest map data providers, Tele Atlas and Navteq, have been acquired a few years ago, former for $2.9bn by TomTom latter for $8.1bn by Nokia. Their main revenue sources were licensed map data and value added services e.g. turn-by-turn navigation. Since Google uses either its own map data or one that is freely available, I think I told everything: they do whatever they want. It is still unknown how Google will monetize on the new service - other than ruining competitors -, but advertisement seems to be a very likely option.

On a related note, I found Bill Gurley's article on Less than free business model quite interesting. Briefly, Google offers Android to OEMs free of royalty, even more, they pay ad split to them. In other words, it's not only that OEMs don't have to pay, but on the contrary, they will get paid. One of the commenters of this article gave a hint on another business model that Google may try to follow: don't bother with ads, but offer a package to navigation device makers, news agencies, automakers, roadside advertisers, etc. A package that is based on continuously updated traffic data that can be used to provide always optimal routing information.

How can competitors react on Google's move? Without own map data it's very difficult to compete with someone who's giving away the same service that we are selling.
  • Stefan from IntoMobile suggested that Nokia should make map data free and wait for the flood of new mapping services - let's see what innovation will result in. Not a bad idea, but would leave Nokia in a bit of passive role, wouldn't it?
  • The other option could be to do the same as Google may do in the future: sell a package instead of showing ads (see above). Why Nokia? Because it has maps data. Which platform? It's rather Maemo than Symbian - we're talking not only about mobile phones, but other embedded devices, too.
  • Finally, the third option is advertising and provide free service. Who? Microsoft doesn't have own map data, but has Bing and Yahoo! search, which is a good basis for advertising. Whereas Nokia doesn't have search, but has maps data (I told you that Nokia should have bought Yahoo!). Perhaps these companies should form an alliance?

Looking forward to your comments,


Wednesday, October 28, 2009

Enterprise Mobility Development

Some of you might have read one of my previous posts in which I wrote that I had had to choose between mobile and enterprise development mostly for personal reasons. I was sorry to realize this because mobile is my passion, but I thought the change was inevitable. Now I don't.

It's a cliche that the job market is much bigger for enterprise developers than for mobile devs. That was one of the main reasons why I had to change area, too - not as if I didn't enjoy enterprise as well. The interesting thing I've just come to realize that there's a gap between the boundaries of the two areas: it's for people with knowledge on both (otherwise huge) areas. The opportunity is great for both kinds of developers coming from either direction, because it offers a way to reach out even more people.

Now you understand why I read an article the other day with great interest: it described the required skill set for an enterprise mobility developer. First, it just confirmed that my theory was right: there's a need for such people. Second, let me add some more points to the list provided. I could have extended the list on the original blog post, however, for that I should have had an account on that site which I was reluctant to create. Here's the list:

  • Bandwidth: I think it was network what the author really meant. Bandwidth really is one of the characteristics that one needs to pay attention to, but it's also worth mentioning different types of networks (from 2G to 3.5G, WiFi, VPN, etc.), their main characteristics (e,g IP address re-assignments, frequent network outage), roaming, etc.
  • Options for development: today's popular web development (very important to note that it's mostly applicable for smartphones only, thus not an option for the vast majority of mobile phones) vs native vs any other environments.
  • Testing: never-ever forget that emulator/simulator is not the same as the real hardware. Peculiarities of various networks also count (quality, reliability, QoS, etc.).
  • Option for cross-platform development: one company may target one platform at a time, however, it's also wise to plan ahead and build the foundation with the future in mind.
  • Deployment, maintenance: app stores vs downloadable install packages from own site. Keeping enterprise service and mobile client versions in sync so that they're always fully inter-operable. Auto-update. Etc.
  • Monetization, marketing: what I really mean here is making use of app stores as efficiently as possible. It's today's trend for mobile manufacturers to have their own stores and compete with carriers who would also like to monetize on this opportunity (by having their own stores). Sort of a war between vertical (manufacturers) and horizontal (carriers).

And I'm sure we've still missed a lot from the list. In any case, that was my two cents. :)



Thursday, October 8, 2009

Smartphone OS market share - 2012

Yes, you read it right: it's 2012. Gartner published a report (link: Computerworld) in which they forecast the following smartphone OS market share for 2012:

We could all see the trend which players remain, disappear or gain strong foothold for a while by now. Nokia has always been the strongest when it comes to smartphones and they will be able to keep their position according to Gartner. They have a huge loyal user base and Nokia as an Internet company and phone manufacturer in one will probably be able to fight successfully against its competitors.

Apple has great technical innovations (form factor, made touch trendy with multitouch, etc.) in addition to the ability to sell (how easy it is to forget about this!). Their tight control on most parts of the mobile value chain is very different compared to what their competitors do, but it has proven to affect user experience in the right way and made this business very profitable for the company.

Google is a goliath in Internet business with huge influence on people's lives already. They use this power to become successful in mobile business with a great strategy: cost reduction for everyone, let it be manufacturers, network operators, developers, users, etc.

All these companies are able to make people passionate about their devices. The term, convergence, has been already accompanied with smartphones in the past few years, however, it's always been about integrating something into the device: MP3 player, FM radio, digital camera, GPS, etc. This time it's different: we're living the age of integrating the mobile phone into an even bigger thing, a cloud called Internet. It's no surprise why Google is successful with Android: people are already dependent on their services and they "only" had to provide the means for mobile users to access these services via their beloved gadgets.

It wouldn't be surprising if these figures became true by 2012. All the remaining players are less innovative (Palm Pre is a copy of iPhone), struggling with finding their identity (M$), are not offering a portfolio that is wide enough (BlackBerry is a business phone), etc. It might be worth noting that data communication will be dominant by 2012 and will drive the growth of MID-market. Wonder if Gartner has reckoned with this, too.


Ps.: Google Chart API is our friend. :)

Saturday, October 3, 2009

Fate of Symbian C++

Historically, Symbian OS has evolved from EPOC, a mobile operating system written originally by Psion. The foundations were laid down in the 80's and a lot of work had been done to it while it became EPOC32 in the late 90's, the direct predecessor of Symbian OS. Also for historical reasons, the developers of Symbian decided to deviate from standard C and not-yet-standard C++ and create their own flavour of programming language. They thought their own exception mechanism (aka leaving), string handling (alias descriptors), naming conventions (C, M, R, T classes), etc. are better than anything else and make it the most appropriate tool to write an entire operating system and related frameworks for resource constrained devices.

They were probably right. But since it was a deviation from "normal" it was a question of time to turn out if people tolerate the difference. People, also known as developers. Through developers the whole market. Small and big players alike.

When Nokia acquired Trolltech speculation started. About Nokia's real reason, I mean. A lot of people didn't believe that it was "just" about making a common framework for smart- and feature phones + desktop computers. Personally, I thought it was a really valid reason alone, though naturally wondered how it would affect the future of Symbian.

People also speculated if not only will Nokia replace Avkon (the UI framework for Symbian S60) with Qt, but change from Symbian to Linux, too. Time has proven that it was not the case. Symbian OS was - and it still is - so valuable that it wouldn't have made sense to throw it out. Nokia has achieved so much with this operating system, put so much money in the development of it and most importantly the system has proven that it DOES work so that it is reliable, secure, can be customized, etc. It simply made sense to keep it.

The latest news about Qt vs Symbian C++ is that "Qt will take over the application layer on Symbian devices, among others, reducing Symbian development to under-the-hood core programming at best" (from El Reg). At best. So finally it seems the market (again, through developers) didn't tolerate the afore-mentioned deviation. Not as if developers didn't have a bunch of alternatives to develop for Symbian devices: Flash, web run-time, Java, Python, .NET, etc. Still, the programming language that offered the most freedom to developers has apparently failed to attract and keep the masses. It is now time to retreat in the wings.

In the closing words, let me chew upon how much marketing could have supported this programming language to become more popular. Take, for example, the "official" language of iPhone development: objective C. Is it a deviation from standard C? Yes. It's not even C++, if that counts at all. Is it easy to learn? Personally I didn't have the chance to study it, but my ex-colleagues did and they told me that it wasn't that difficult as they had anticipated. Admit that they had a decade of experience in mobile sw development that most people don't. What I'd like to point out, though, is that there are languages that are much easier to learn and use in practice, such as Java, Python and the likes. All in all, I think Obj-C is at least as much deviated from the standard as Symbian C++.

Then why is it so popular in contrast with Symbian C++? Perhaps it's because of the tools - compare the two emulators, for example. Or is it the processes - there are pros and cons on both sides: Symbian Signed has received much criticism, but Apple approval process is not much better, either. Or is it the hype that surrounds iPhone devices and related development environment that made developers to forget about the imperfection of this language? I think it's pretty much that case. What made the hype? Innovation and marketing, i.e. that Apple could find out something new and they could sell it, too.

Symbian C++ could have been saved with a bit more selling power, in my opinion. It is not going to disappear, just less apparent. And I don't cry for it, because I know it's called evolution. I just wonder what those years will be worth of that I had spent with it.


Friday, October 2, 2009

A book on porting to Symbian

Let me be proud for a moment: I've co-authored Mark Wilcox's great book, Porting to the Symbian platform. I've written the part the describes what is worth knowing for an Android developer when porting to Symbian C/C++. What makes me even prouder is that one of my ex-colleagues was also involved - Gabor Morvay wrote the section of iPhone to Qt porting. It's great to make use of knowledge in such a way!

Great work, Mark, good luck with the sales! :)