Saturday, December 30, 2006

Flash Lite

Flash is broadly known for its animation capabilities. Flash plug-in is by far the most popular plug-in for the Internet browsers and it is installed on well over 90% of all desktops. It is the leading platform for building Rich Internet Applications (RIA). For the discussion of RIA technologies, you can refer to my article “Rich Internet Applications Pick Up Where HTML Stops” published by Computerworld.

Flash Lite intends to replicate the success of its older sibling on mobile devices. It offers rich multimedia capabilities (images, audio, video), which makes it a particularly appealing platform for entertainment applications. To develop Flash Lite applications you need Macromedia Flash Professional 8 with the Flash Lite 2 update. The software supports rich content authoring, programming in ActionScript, and testing using mobile emulator. It is distributed with a number of mobile templates and over 90 specific handset profiles. For an interesting introduction to Flash programming (and comparison of Flash Lite to Mobile Java at the same time) you can refer to Eddie McGreal’s article “So You're Thinking About Using Flash Instead of J2ME?”
Flash Lite applications run on top of Flash Lite player, which in turn runs on top of a mobile operating system. The players are available for Symbian, BREW and Windows Mobile.

Flash Lite is promising. However these are still early days. Verizon is the first USA carrier which embraced it. FlashLite is supported on six BREW enabled handsets distributed by Verizon.

Sunday, December 03, 2006

What technology platform to choose for development of mobile applications?

A wide variety of platform choices is typical of an emerging market. The mobile platform market is promising and as a result of this lots of ideas are brought to the market. This creates a challenge to application developers who need to make bets on which platforms to align themselves with. Here are my recommendations for the USA market:

1. If reaching the widest possible audience is the primary driver then SMS is a clear choice. It is supported by all carriers and available on the largest set of handsets. In addition, deploying SMS applications is straightforward as it does not require going through an extensive approval process by the carriers. Anybody who has used texting is familiar with how to interact with messages. Hence adoption is uncomplicated as well. The big disadvantage is limiting user interface. While exchanging text messages can meet many user needs, there are many applications which require a more sophisticated user interface. Still companies such as Google, Yahoo, PayPal, and many others have demonstrated that a variety of applications can be built using SMS.

2. Mobile web is the second in terms of availability on large number of handsets. It is easy to built and deploy mobile web applications. However user experience is rather cumbersome. Applications involve lots of clicking with lengthy delays between page refreshes. Therefore I am personally not very fond of the platform in its current state.

3. When functionality of a fully fledged application is required and the application is targeting users with a variety of devices across all key carriers, there is no choice but to build it twice – in J2ME and BREW. A prudent approach may be to build the application on top of one of the two platforms, validate it in the marketplace and then port to the other platform. Which platform to choose first? It is easier to set up a J2ME development environment and the learning curve is shorter as well. BREW has a smaller footprint and subsequently can run on a broader selection of devices. Its build in revenue sharing model has a strong appeal as well. Out of the two, for experimentation J2ME is a better first choice. It is important to note that J2ME and BREW applications will need to be certified before a carrier would allow deployment on its network.

4. Native Symbian, Linux, and Windows Mobile applications running on smartphones offer the highest level of sophistication. They are a good choice for developers targeting specific devices who work closely with device manufacturers or carriers. However, for many programs, the complexity of development and a small market share of devices supporting these operating systems outweigh the benefits.

5. For enterprise applications where the user base is known and both carrier and device selection can be controlled, PDA is typically the best choice. Larger form factor and better input capabilities support more sophisticated applications. Out of the three PDA operating systems Mobile Windows is the safest longer term choice as it offers the highest probability of being around years from now. Many users have a strong affinity with Blackberry which is also a good choice. PalmOS market share has been declining. It is possible however, that PalmSource will regain its momentum through the implementation of its Linux strategy.

For overview of the mobile development platforms please refer to the earlier posts:
Mobile Messaging
Mobile Web
Mobile Java
BREW
Symbian
Mobile Linux
Microsoft Windows Mobile Platform
PDA Operating Systems