Thursday, October 08, 2009

The One-page Guide to Google's Plan for Winning at Applications and Operating Systems

Google wants to enable Google applications to run as well as possible as many places as possible. Here is how:

Google applications: Web applications run in browsers, on all kinds of systems. No need to be installed or updated, and hard to block. Anyone with IE, Firefox, Safari, Opera, or, of course, Chrome has access to all the latest applications.

Gears: Web applications run in a sandbox and don't have much access to your system. Gears enables more access. Applications are still in a sandbox, but the Gears-enabled sandbox is bigger, and can persist. This frees Web applications from having to be connected all the time.

GWT: The Google Web Toolkit (GWT) is a radical abstraction of of the browser runtime environment. GWT applications are written in Java and compiled to JavaScript. The GWT library provides fixes for incompatibilities between browsers, as well as a rich UI library.

Chrome: Google's browser. Chrome provides the ideal browser runtime environment for Google applications. Fast JavaScript execution. Separate processes for each Web page.

Chrome Frame: Chrome Frame puts the Chrome browser inside Internet Explorer. This shows the lengths Google will go to in order to give Google applications the best possible runtime environment is as many situations as possible.

Android: Android is a Linux-based OS for mobile handsets and other devices. Android has exploded in popularity among handset manufacturers. This is Google's first win in computing platforms, and Google influences the software “stack” all the way down to the hardware. Android has a Webkit-derived browser.

Chrome OS: Chrome OS is meant for things larger than handsets. Chrome will be Google's attempt to bring a Linux-based OS and Web-based applications to netbooks and PCs.

Google's strategy is comprehensive: Control the software all the way down to the hardware where possible, and, if that isn't possible, be compatible, and maximize capabilities, on every possible platform.

Google's strategy is also technologically coherent: Java, Linux, Webkit, SQLite, Eclipse, and other common components are reused across multiple Google products and platforms. You can expect Google to contribute to and influence the development of these key ingredients. You can also see some design philosophy in common across Google products. For example, Android runs Java applications in multiple tasks, and Chrome runs Web pages/apps in multiple tasks to make these systems resilient to apps that crash.

While Google's applications, like Gmail, are proprietary, Android, Chrome, Gears, GWT and many other components of Google's strategy are open source software, many with permissive licensing that would not preclude competitors from using them. Open source builds confidence in Google's partners and in software developers using Google platforms.

Google's strategy has formed recently and moved quickly. It can be hard to perceive the impact. As fast as Google is implementing this strategy, you can expect a similarly fast emergence of an application ecosystem around Google's strategy. This will be one of the most significant developments in software in the coming years.

Sunday, October 04, 2009

Smartphones, 4G, IP, and IMS – Part I: Toward a Fully Mobile Enterprise Communications System

I have not been blogging much lately, and I plan to change that. I am going to do that by writing a series of shorter blog entries.

There are four big forces for change in the mobile market now:

  1. Smartphones have broken out of the PIM-oriented business niche
  2. 4G networks, WiMAX and LTE, are coming to market
  3. IP voice has taken over enterprise telephony
  4. The ideas of IMS, if not implementations of IMS, are permeating new communications products

My next several blog entries will look at the interplay between these forces and the opportunities they open up: 4G, with or without full implementations of IMS, mixing IP communication with mobile communication, the way business communication systems are, finally, co-evolving with mobile communication, etc.

The reason I will be focusing on the interaction between these forces is that this is where new opportunities are created, and new entry portals into existing markets with entrenched vendors open up.

For example, most people think of VoIP phones in two distinct ways: VoIP applications for smartphones, which are mainly used for international toll-bypass, and VoIP desk phones for businesses.

What's the problem here? In each case, these products have reached some natural limitations: Mobile VoIP as toll bypass has hit an upper bound on value – it's not much more valuable than a calling card. And VoIP business phones are becoming the second phone – the place where you get cold calls, the thing you leave on do-not-disturb, the back-up.

Can we find a way out of these limitations in the four forces that are driving change? Let's see how each affects a possible solution:

  1. The new smartphones and smartphone software platforms enable richer and more integrated mobile VoIP solutions than the crude Java ME (J2ME) applications for mobile VoIP. You can transform the handset into a mobile enterprise phone, and directly replace desk phones.
  2. 4G networks enable enterprise communication to become an over-the-top (OTT) service. There is no longer any difference between being on-premises and off-premises.
  3. Now that you can extend IP communication to users on the go, there is no longer a need for crude “two stage dialing” to “log in” to a PBX while you are on the go. It's an all-IP world.
  4. An IP-PBX being used like an OTT telephone service is IMS-like in many of the features it delivers, but does not depend on IMS in the mobile network.

This is one kind of innovation made possible by the combination of these Four Forces. In future posts, I will explore more basic innovations, and the details of some of these innovations.