Does ‘one web’ mean ‘one website’?

Filed under: mobile,opinion,web development — jaydublu @ 5:05 pm

Ongoing discussions with a colleague about the most appropriate way to deliver websites that are mobile friendly, led him to send me a link to a blog posting in the Opera Community: ‘Open Standards, One Web, and Opera‘. He reckons this demonstrates his view that you should build a standards compliant site, and leave it to standards compliant browsers to adapt. For the record my view is that whilst this approach may work most of the time, better experience can be given to the visitor if you tailor the code being delivered by the server to suit device capabilities.

Summarising the main argument of the piece:

We believe very strongly in 2 main principles:

  1. One Web — first coined by the W3C, the one Web principle is what it implies — there should be one single Web that can be accessed by any Web—enabled device, not different content for different devices — this is unsustainable, and a maintenance nightmare — having to maintain several versions of the same content can be really frustrating. The “one Web” is made possible by…
  2. Open standards. Technologies such as CSS and HTML are open — they are free for anyone to use and get involved in the evolution of, and because they are also standards, pages created using them should be viewable on any device by anybody, as long as user agent vendors follow the standards. Most vendors, including ourselves, are making a pretty good job of this these days, mostly (hint — there is still a bloated giant out there that has trouble with standards, despite controlling over 70% of the browser market. We won’t name any names…) Proprietary standards, that is, standards that are not free for anyone to use and lock you in to having to use a single/few company’s products, are bad for the one Web, and are often inaccessible (that is, not usable by users with disabilities) and expensive to develop with.

I can’t and won’t argue against either point – I believe in them too, but that doesn’t mean I necessarily agree with the implication that ‘one web’ implies ‘one website’ – i.e. one set of code that gets delivered to all devices.

That’s getting a bit close to ‘lowest common denominator’ where you don’t use particular techniques or features if not supported by all devices you’re building for, or another risk is that you’re abandoning a chunk of your audience for the sin of not using a standards compliant browser (that could be 90%+ of your potential audience!)

Where in those two principles does it say you can’t adapt code a bit to suit device capabilities – and before I get screamed at for suggesting multiple sites / thousands of separate templates / layouts etc. note the phrase ‘a bit’ – and use some of the power going spare in our modern day servers? A pragmatic approach rather than dogmatic.

‘One Web’ is about content – reading what the W3C say about One Web in their Mobile Web Best Practices:

“One Web means making, as far as is reasonable, the same information and services available to users irrespective of the device they are using. However, it does not mean that exactly the same information is available in exactly the same representation across all devices. The context of mobile use, device capability variations, bandwidth issues and mobile network capabilities all affect the representation.”

i.e. The content should be the same, but the way it’s being presented could be adapted to suit the device.

Not all devices / browsers are equal – some have very special needs, particularly mobile ones. Even if they can render full standards compliant web pages, there are problems of bandwidth and memory. Mobile devices will perform better with nice light pages, whereas Desktop users are perfectly happy with big bloated ones.

Screen size and navigation – yes I love the iPhone’s zooming, but at the end of the day when you start to read a site or try and use the navigation, the screen is only 320×480 pixels, and a fat finger is less precise that a mouse. So the likelihood is that a navigation system that works well at 1024×768 with a mouse, might be a bit fiddly on an iPhone, let alone a mobile using a simulated mouse or keys, on the other hand something simple enough for a mobile might be really tame on a Desktop.

But which standard? xhtml is getting wider support within higher spec phones now, but it’s still widely regarded that XHTML-MP is supported by the overwhelming majority of mobile browsers. And what about old phones that prefer WML? Just because you’re sending different markup to different devices doesn’t mean that the markup used won’t be standards compliant.

In summary – ‘one web‘ – yes. ‘Use standards‘ – yes. But adapt the output a bit to better match device capabilities. If my understanding is right that’s also what the W3C is saying.

iPod Touch

Filed under: mobile,review — jaydublu @ 6:31 pm

I finally got my hands on the iPod Touch I got the team for R&D – cheaper than an iPhone – and have spent a bit of time with it myself.

First thing I should say is that dissapointingly I find I really, really like it – it’s a stunning device that’s hard to fault; at least inital impressions are that way.

It’s a perfect size and weight, screen is clear and bright, and as for the ‘touch’ user interface – well what can I say other than ‘wow!‘?

I’ve played a bit with the music and video playing capabilities, and they’re just stunning, but most of my attention has been, unsurprising, on the browser.

Despite my initial shock that the thing won’t accept xhtml-mp markup, so although it is a mobile device you can’t treat it as such (at least not the way I’d like to with a custome xhtml-mp view of a site) I can see a way past that as it makes a pretty fair stab at rendering the full site. With the zooming feature – the double tapping is just genius – and wifi connectivity meaning the bandwidth isn’t much of an issue, it really is feasible to browse most sites in the full fat version without needing a slimmed down markup.

But, if the site hasn’t been sympathetically designed – and the one big irritant is lines of text that are too long to be able to read in one screenfull so you have to keep scrolling backwards and forwards – it’s easy to get less than satisfied. And if you’re on an iPhone with limited (and expensive) bandwidth optimised graphics etc. wuold be a big bonus. And having seen sites specifically designed for the iPhone e.g. – they’re just so much nicer to use than the full one.

I’m working on a concept proving site at the moment from first principles, using tera-wurfl for device detection, and Smarty templates to deliver different styling of the same content to different devices. I’ve not yet settled on my preferred approach but when I do I’ll publish it somewhere.

One thing is for certain – I’m now more comfortable with the idea that you don’t treat iPhone (or iPod Touch) the same as a ‘normal’ phone, but don’t think you should ignore it either and feed it a site designed for big screens.

iPhone is different!

Filed under: mobile,rants,why? — jaydublu @ 10:33 am

I once posted something about ‘why the fuss about the iPhone‘ – I still don’t get it.

We’re a few months away from having the thing released here, but in the mean time there’s the iPod Touch which is most of the iPhone without the phone. Since the bit I’m interested in is the web browser and the Internet features – it’s ideal so I got one for the team for R&D.

I pointed it at one of the sites I’d optimised for mobile devices following recognised best practice (e.g. Luca Passani’s Global Authoring Practices for the Mobile Web) and was not hugely surprised that it rendered the desktop version as my mobile detection didn’t pick up the User Agent.

A quick tweak to get it to spot that ‘iPod’ is a mobile device and … Safari throws an error.

It turns out that Safari Mobile doesn’t support xhtml-mp!

So to get an iPhone friendly version of a site you can’t use your mobile version and keep it xhtml-mp. I see Facebook have a mobile version using xhtml-mp, and a special iphone version without a doctype.

Do I feel a return to the bad old days of browser sniffing and multiple versions of sites? Oh dear!

Why do Apple always have to be different?

My brain hurts!

Filed under: life — jaydublu @ 5:57 pm

It’s not often I actually have to get my hands dirty and code real sites, but in this instance, a) there was noone else free and b) I fancied the challenge.

Soupercan! is a tongue-in-cheek site developed at work as a bit of fun and to run some relatively harmless experiments in viral marketing.

Doesn’t mean that the visual I was given was going to be easy to build though! Man I never knew how much I wouldn’t miss IE6!

Check out the cheeky use of jquery in the ‘send to friend’ box, SWFObject embedded flash movie, and an xhtml-mp mobile friendly equivalent.

How much fun can you have with one page?