Ajit Jaokar

Subscribe to Ajit Jaokar: eMailAlertsEmail Alerts
Get Ajit Jaokar via: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn

Related Topics: RIA Developer's Journal, AJAX World RIA Conference

RIA & Ajax: Article

Real-World AJAX Book Preview: Mobile AJAX

Real-World AJAX Book Preview: Mobile AJAX

This content is reprinted from Real-World AJAX: Secrets of the Masters published by SYS-CON Books. To order the entire book now along with companion DVDs for the special pre-order price, click here for more information. Aimed at everyone from enterprise developers to self-taught scripters, Real-World AJAX: Secrets of the Masters is the perfect book for anyone who wants to start developing AJAX applications.

Let's talk about the disruptive potential of AJAX in the mobile environment.

Globally, at end of 2005, there were 2.1 billion mobile phones versus a billion Internet users. Among those billion Internet users over 200 million of them accessed the Internet via a mobile phone, mostly in Japan, China, and South Korea. So the sheer number of mobile phones, especially in developing countries and Asia, coupled with the growing technical capacity of mobile phones makes what we say here significant.

While reading this piece, you should remember a key insight:

The power of AJAX on mobile devices lies in its potential to create widgets. Widgets can be created by other technologies, but AJAX is the most optimal and standardized way to create widgets. AJAX widgets can run on the desktop, on the browser, and of course on mobile devices using the same code base (with some minor modifications). This makes the AJAX/widgets combination very powerful because it spans both the mobile device and the Web. Thus, an application created using AJAX technologies can potentially have a wider distribution than one created using specific mobile technologies.

Before we start, let's clarify some terminology. In Europe, the commonly used phrase for telecom data applications is mobile. In the U.S., it's wireless or cellular.

Here we'll use the following terminology:

  • Wireless: Simply implies connection without wires.
  • Mobility or Mobile: Describes a class of applications that lets us interact and transact seamlessly when the user is on the move anywhere, anytime.
  • Cellular: Refers to the cellular structure of a radio frequency network.
  • The Mobile Data industry: The term Mobile Data industry collectively refers to all the terminology and technologies we discuss in this section. The mobile data industry is non-voice, i.e., it refers only to data applications on mobile devices.
Hence, I use the term mobile independent of access technology, i.e., 3G, wireless LANs, WiMax, and Bluetooth.

Some of the topics we'll discuss include:

  • Understanding the mobile data industry
  • Browsing applications and the role of AJAX
  • Widgets and the disruptive potential of AJAX
  • The design of mobile AJAX applications (including W3C recommendations and AJAX-specific considerations)
  • End-to-end development of an AJAX application (HTML, widget, mobile widget)
  • The complete code for one application (fortune cookies)
The Mobile Data Industry
Most people possess a mobile device and in most cases it's used for voice, i.e., making phone calls. So it's a mobile phone. Data is often a secondary use for the phone. Even when the phone is used for data, in most cases it's used for text messaging (SMS). In fact, SMS is often the first introduction to mobile data most people have.

While originally designed for voice, mobile devices are also capable of running applications that handle data. This gives rise to a whole new industry, the mobile data industry.

The mobile data industry, which started around 1996, is closely related to the rise of the World Wide Web. The mobile data industry is all around you - walk into most public places and you can't fail to be distracted by the chimes of ringtones. In addition, there are the silent devices such as PDAs and BlackBerries all busy sending and receiving data.

Over the last few years, the growth of mobile data (as opposed to voice) has shown dramatic increases, now accounting for up to 25% of a mobile operator's revenue in some cases. The industry is growing at a scorching pace. According to IDC, during the second quarter of 2005, handset shipments jumped 7.3% over the previous quarter and 16.3% over the previous year to 188.7 million units globally. Most of these new handsets now handle both voice and data.

Today we live in a 3G, third-generation mobile network world. The technology is here. The bandwidth is here. But the industry has achieved only a fraction of its true potential. The missing piece of the puzzle is the applications.

When it comes to mobile applications, we see a relatively primitive picture. We see an emerging industry characterized by simple entertainment-led services like downloading ringtones. We also see fragmentation both in terms of technology and the value chain. The industry has only scratched the tip of what can be achieved.

If you've developed client/server or Web-based applications, mobile applications appear deceptively simple because the same technologies are used for Web-based and mobile applications.

While there are many similarities between Web-based applications and mobile applications, there are two obvious differences.

  1. The application is deployed on a mobile device.
  2. The application is accessed over the air.
This means, by definition, that at some point the content must "fly," i.e., be transmitted over the air interface to a device where the user can interact with it. This is done through the wireless network.

The Wireless Network
The wireless network comprises the actual physical network that facilitates the air interface.

A wireless network can range from a personal area network, like a Bluetooth network covering 10 to 100 meters, to a satellite network that covers the globe. As application developers, we can often treat the lower-level functionality of the network as a "black box." If needed, such functionality can be accessed through defined APIs in cases where they're publicized - not all network functionality will be accessible to applications due to privacy and security.

The four classes of wireless networks are:

  • Personal area networks like Bluetooth
  • Local area networks like wireless LANs
  • Wide area networks, i.e., the mobile operator-managed radio frequency networks
  • Satellite networks
While satellite networks are out of our scope, the first three networks can be classified into two broad subclasses.
  1. Localized networks
  2. Wide area networks, i.e., the mobile operator-managed radio frequency network (RF network)

Localized Networks
Localized networks are created around a hotspot or access point and have a limited range in proximity to that hotspot or access point. These networks include the WiFi network and the Bluetooth network.

Unlike WANs, localized networks operate in the unlicensed spectrum (and are free). In contrast, WANs (RF networks) operate in the licensed spectrum (hence the high cost of 3G licences in Europe).

Since WiFi and Bluetooth are two common implementations of localized networks, we'll discuss them in some detail.

WiFi or Wireless LANs is a term that refers to a set of products that are based on IEEE 802.11 specifications. The most popular and widely used wireless LAN standard at the moment is 802.11b, which operates in the 2.4GHz spectrum along with cordless phones, microwave ovens, and Bluetooth. WiFi-enabled computers and PDAs can connect to the Internet when near an access point popularly called a hotspot. The Wi-Fi Alliance (http://wi-fi.org/OpenSection/index.asp) is the body responsible for promoting WiFi and its association with various wireless technology standards.

Bluetooth is a wireless technology specification that enables devices such as mobile phones, computers, and PDAs to interconnect with each other using a short-range wireless connection. It's governed by the Bluetooth SIG or special interest group at www.bluetooth.org.

The operative word is short-range. A typical Bluetooth device has a range of about 10 meters. The wireless connection is established using a low-power radio link. Every Bluetooth device has a builtin microchip that seeks other Bluetooth devices in its vicinity. When another device is found, the devices begin to communicate with each other and can exchange information. So a Bluetoothenabled device can be thought of as having a halo seeking to communicate with any device that enters the range of that halo.

Bluetooth is "free" in the sense that it's an extension of the IP network in an unlicensed band via the Bluetooth access point. Although Bluetooth hasn't lived up to its initial hype, the technology is significant since most phone makers have committed to Bluetooth-enabled phones.

From an application development perspective, Bluetooth can appear in many forms. For example:

  • As a technology for redeeming coupons, i.e., a marketing coupon could be sent over Bluetooth and redeemed at an access point in the store.
  • As a payment mechanism - a Bluetooth Wallet can be a secure payment mechanism.
  • As a location-based service since location is known within range of a Bluetooth access point.
  • As a mechanism for forming ad hoc contacts via bluejacking (www.bluejackq.com/).
  • Bluetooth communities such as www.bedd.com/.
Bluetooth is often compared to WiFi technologies. The two technologies operate in the same frequency range (2.4G). Functionally, they achieve different things. Bluetooth, in its minimal form, is a cable replacement system operating in a point-to-point mode. WiFi, in its minimal form, is wireless networking (i.e., Ethernet, or point-to-multipoint). Both technologies coexist.

The Radio Frequency (RF) Network
In contrast to localized networks, the RF network isn't confined to specific hotspots or access points. The RF network is a cellular service in the sense that the actual network can be viewed as a honeycomb of cells. The basic cellular network has been used for voice transmissions since the 1980s and for data transmissions since the 1990s.

The entity that manages the cellular network is called the mobile network operator (also called operator or carrier). Examples of mobile network operators include T-Mobile (www.T-Mobile.com/), Verizon Wireless (www.verizonwireless.com/), and NTT DoCoMo (www.nttdocomo.com/).

Of course, most customers aren't concerned with the cellular network. They interact with the mobile network operator for billing and customer service only. In fact, most application developers aren't concerned with the cellular network. However, it's a good idea to understand it.

A cell is a basic geographic service area of a wireless telecommunications system. Cells are created by a large number of low-power transmitters. This results in a honeycomb-like structure of cells. An idealized representation of a cellular network is shown in Figure 4.1 (note that neighboring cells don't use the same frequency). The density of population determines the density of the cells. In populated areas like cities, there are a relatively large number of cells in contrast to rural areas.

Behind the scenes, the system works to maintain the call when the user is on the move. As the user moves, he could move from cell to cell. The process of handling calls in this situation is called a hand-off. Alternately, the user could temporarily move to a network of cells owned by another mobile network operator. This situation could arise when the user's network operator (i.e., the operator to whom he subscribes for his mobile connection) doesn't cover a specific area. This is called roaming.

Data services like SMS are relatively new additions to the basic voice network and can be treated as application-level technologies built on top of the core network layer. The core network is based on underlying cellular data transmission technologies (i.e., the technology governing the cellular/RF network).

There are two ways we can categorize cellular data transmission technologies:

  1. By understanding the cellular data transmission techniques
  2. By understanding their historical evolution
The historical evolution of networks, i.e., (2) is more familiar to the general public through terms like 3G.

This content is reprinted from Real-World AJAX: Secrets of the Masters published by SYS-CON Books. To order the entire book now along with companion DVDs, click here to order.

More Stories By Ajit Jaokar

Ajit Jaokar is the author of the book 'Mobile Web 2.0' and is also a member of the Web2.0 workgroup. Currently, he plays an advisory role to a number of mobile start-ups in the UK and Scandinavia. He also works with the government and trade missions of a number of countries including South Korea and Ireland. He is a regular speaker at SYS-CON events including AJAXWorld Conference & Expo.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.