Serving content on desktop browsers is different from serving it on mobile phones

The widespread use of mobile phones, especially of the “smart” variety, and the dramatic entry of tablets and other handheld devices has transformed the nature of browsing. Indeed, it is widely recognised that Internet penetration is now being driven primarily by the use of handheld devices, not desktops, laptops or other not-so-mobile devices.

But designing the Web for this dramatic change is not easy, because browsing on a smaller device is not merely a question of a smaller screen. For one, browsing with a handheld on a cellular network needs to ensure that it takes a lower bandwidth.

The mobile version of a Web page is denoted by ‘m.’, unlike the usual ‘www.’ that leads to a conventional Web page. When you access a website using a mobile phone’s micro browser, you will notice that most websites are prefixed with an ‘m.’ instead of www. This change in mode from www to m is performed by programmes that compress content at the server end and decompress them on the phone (transcoders). This is what ensures that phone users receive content that is optimised for mobile phone platforms.

Serving Web pages

Fetching pages from a website is like placing an order in a restaurant — it is just that the wait for a Web page is usually shorter than the wait for food. When a user types an address in the Web browser, this string is sent to the nearest computer in the network (server), where all the content of the website is stored. An application running at the server end processes these requests and fetches and serves appropriate content to the client, which is why a Web Server is termed thus. Web servers are powerful software programmes, which are governed by tight rules. The Hyper Text Transfer Protocol (HTTP) is an example of a rule-set programme that governs transactions between Web clients and Web servers on the Internet. Along with the Web requests, client identification details are also sent to Web servers. This client identification information, or the ‘user agent’, details are crucial for a server to intelligently serve content. The user agent details include the name of the browser, version and the plug-ins that are installed. http://www.systemdetails.com/ is one of the many websites to view one’s own user agent details.

The constraints

Serving content for desktop browsers is different from serving browsers on mobile phones — not content-wise but in the format.

Mobile phones, in most cases, use the cellular network to access the Internet, unlike faster broadband or wireless Internet connections for desktop/laptop computers. The speed constraint is an immediate consequence. Secondly, the processing power, memory availability and screen size of mobile phones are a fraction of those available on a computer. Without considering these limitations, if the same content as for desktop computers were to be served on mobile phones, then the browsing experience would be pathetic in comparison to what we encounter when using a laptop.

When the browser user agent is known to be arising from a mobile phone, Web servers switch from the www mode to the ‘m mode’. For example, the Facebook website on a desktop browser, directs users to http://www.facebook.com, whereas when accessed on a mobile browser to http://m.facebook.com, which is an abridged version of the desktop interface. The layout of websites served to micro-browsers are simpler, with less focus on graphics in order to ensure faster page downloads. Techniques like downloading thumbnail images instead of larger images while loading Web pages save quite a lot of bandwidth on mobile platforms.

When Web servers themselves do not have the differential content serving mechanisms in place, micro-browsers deploy other tricks to address the problem.

For instance, one of the relatively old and popular micro-browsers, Opera Mini, sends the user Web requests on a secure link first to the Opera servers, which in turn fetch content from the website, compress, reformat the content and present it to the Opera Mini browser running on smaller devices such as a PDA, mobile phone or smartphone. As images are bandwidth hungry, most micro-browsers compress them to about 70 per cent.

During the pre-smartphone era, before 2007, in what can be termed as the Symbian era, micro-browsers were primarily running in a Java environment, which was a bridging platform to host the browser programme. Back then, the techniques for mobile Web content adaptation by servers were still in its infancy.

Web servers were serving content without being aware of the form factor of the devices they were feeding content to, which resulted in sloppy portrayal of content on handheld devices.

Scrolling through or navigating through the content was obviously tedious. Thankfully, content then was not as rich in graphics as it is now; that would have made navigation even more painfully slow. With iOS, Android and Windows mobile phone platforms now becoming ubiquitous, micro-browsers with native platform support add layers of additional functionality.

Micro-browsers on smartphone platforms have progressed far beyond the traditional WIMP (windows, icons, menus, pointers) system. The touch interface on smartphones has opened up new methods of browsing. The Dolphin browser, for instance, which has gained popularity in the smartphone market, allows users to access websites with gestures.

Tricks like shaking the phone and reading out a website’s name, or drawing a gesture on screen to load new websites on a different tab take full advantage of the conducive hardware available on smartphones.

These new capabilities are what have facilitated the wave of Internet penetration across the world.