Device Description Nirvana

So I’m off to Madrid for the Mobile Web Initiative Device Descriptions workshop. What is this all about? While I’ve been busying myself with chairing a working group on Mobile Web Best Practices, Rotan Hanrahan from MobileAware has been chairing the other Mobile Web Initiative working group: Device Descriptions. The Mobile Web Best Practices document is filled with recommendations like “don’t use xxx feature (cookies, for example) unless you know the device supports them.” The unanswered question is: how do you know if the device supports any given feature, or the answers to other questions like “how big is the usable screen space” (the size of the screen after you take away whatever is taken up by soft keys). The answer up ’til now has been: not very easily. The “official” way the mobile industry wants you to find this out is by using UAProf device profiles. The problem with these is that when they are produced (only a minority of device, they are often not accurate or they simply do not contain the information that Web providers need to adapt their services to different browsers on different devices. This is a key issues that is blocking the growth of the Mobile Web. There are numerous solutions to this problem in the market. Companies like Vodafone assemble big proprietary databases of devices that matter to them. Others employ commercial software that comes bundled with device databases (again proprietary). Still others employ the open source WURFL database. All of these solutions are “islands” that do not overlap or interoperate.

But what if there were a simple way for any Web developer to gain access to basic information about the devices hitting their site. What if they could use this information in a straight forward way in their templates (JSPs, ASPs, PHP, etc…) or other server-side logic for the purpose of more easily providing a mobile-friendly user experience in accordance. And what if this information were available as a utility – as transparent and ubiquitous as DNS or HTTP headers and integrated seamlessly into all the most used Web development frameworks and Web servers.

This is what I call “device description nirvana” and it is this promise that the work of the Device Descriptions working group hopes to help realize. The group has worked over the past year on defining the space. Now we shall see if we can take it to the next level. I have high hopes.

Liked this post? Follow this blog to get more. 

4 comments on “Device Description Nirvana
  1. Hi Dan,
    thank you for naming our small project, but… Don’t you hate when people mispells your name?

    The project name is WURFL and not WURLF. It’s already hard to pronounce, but if you also switch the L and F it’s almost impossible. :P

  2. :)

    Apologies, Andrea!

    I’ve fixed it up.

  3. Kev says:

    For anyone who hasn’t seen it, W3C DIAL ( allows authors to query not just the device capabilities but also state, environment and user context to deliver a tailored page (sorry for hijacking your blog Dan!). Comments are very welcome, please use the link on the DIAL page.

    NB I’m guessing you’ve written this article with an MS charset (such as paste from Word or Outlook), because the apostrophes are unrecognised in UTF-8…

  4. Ref: funky characters, this is an unfortunate consequence of bringing the blog over from Blogger (where the posts were encoded in ISO-8859-1) into WordPress. I’ve been fixing them as I’ve found them.

1 Pings/Trackbacks for "Device Description Nirvana"
  1. […] Now — I say the wp-mobile plug-in is cool, and it is, but there is a big problem with it, and that has to do with, what else, device detection. The plug-in knows you’re browsing from a mobile device because it matches the user-agent string against a list of strings that are hard-coded into the PHP program. If you read my previous post on Device Description Nirvana or are familiar with the work of the MWI Device Descriptions working group, then you’ll know that this issue of device descriptions is a thorny one. In the world of device description nirvana, this plug-in would use an API to query a global database of user agent strings to definitively determine if the incoming request is from a mobile device or not. More importantly, it would be able to use the capabilities of these devices to make intelligent decisions about how best to adapt the page for that particular device. Until that time, however, I wonder if some enterprising soul will at least integrate this plug-in with the WURFL open-source project. […]

Leave a Reply

Your email address will not be published. Required fields are marked *


This site uses Akismet to reduce spam. Learn how your comment data is processed.