Sunday, July 29, 2007

The mobile web: Fast Pipe, Always On, Get Out the Way

There have always been tensions in between mobile operators and manufacturors, because both want control over phone services like email, news and sports readers.

Now, a third sector has entered the mix - Silicon Valley. Google, Yahoo and Microsoft are all racing to get their own services and applications - such as search engines or mapping tools - installed on phones.

Consequently, there's confusion. Amid much publicity, Vodafone recently annouced they were automatically reformatting web pages to fit mobile screens - and it quickly became clear that they were removing every advert and breaking many sites.

Fast Pipe, Always On, Get Out the Way

There's only one clear approach to solving this, best summarised by Tim Bray, and it relates to mobile operators: Fast pipe. Always on. Get out the way.

In other words, mobile operators must resign themselves to being pure utilities, providing wireless data at ever-increasing speeds. They're wasting time and money creating their own software services for consumers, because Silicon Valley understand better what to provide, can innovate faster, and can scale better.

Back to the future...

The mobile industry will go the same way as the PC industry. Initially, the only applications available were installed locally on the client. Then, basic web browsers became available. As network speeds increase, web applications became ever more popular. Eventually, people will live in the browser, wondering why any other applications even exist.

Even Silicon Valley seems to be forgetting some of these lessons. Yahoo! Go is a java download for mobiles that displays email, internet search, and maps. Why aren't they just re-formatting their websites instead, especially as mobile browsers like Safari 3 and Opera 9 support features like Ajax?

Mobile operators ARE broadband providers

The recent rush of mobile operators into providing home broadband is no surprise. It's a chance for them to learn the ropes before the mobile industry becomes fully IP-based too.

Unfortunately, they've failed to learn a key lesson of the web: IP is stupid, and intentionally so. All the power lies at the edge, with the content. Providing good content and services is a very different business to managing an IP network, and I think they'll struggle to do both.

Thursday, July 26, 2007

New types of computer: display and desk

For years, there have been three basic form factors for computers - the desktop, the laptop, and the PDA / smartphone. Now, finally, Moore's law and new display technology are changing things.

I'm not referring here to the iMac, Tablet PC or iPhone - these follow traditional factors, albeit in a new way. I'm also not talking about the underlying functionality, which is converging for all factors towards internet access, phone, and camera.

Instead, I'm saying computers will start to flourish in new environments. There are two in particular I've got in mind - the display, and the desk.

Display

We'll soon see many display computers for the home. These are computers used for displaying information or art - usually wall-mounted, or sat on a table or mantelpiece.

The first examples are digital photo frames. Already, some are adding Wifi, to display photos from a home PC or from a photo sharing website like Flickr.

Within a few years, they'll have touch screen web browsers too, enabling them to display any website.

Imagine a display in your kitchen showing a clock, your up to date calendar, the latest weather information, and the news headlines.

Or imagine a display in the living room connected to the British National Gallery website, rotating through their art collection.

Or even imagine a display on the bedside table, showing a clock during the night, and tuning in to a TV to wake you up with the morning news.

Although they'll be standard web browsers, people won't use them much to browse - mostly, they'll be connected to a single website, refreshing regularly to show the latest content.

Desk

When you're in the office, you want more than a computer desktop - you want a computer desk. Watch the Microsoft Surface demonstration to get the idea, and imagine if your entire office desk was a touch screen computer. This replicates the physical paper and files scattered around your desk for the virtual world.

Personally, I can imagine a computer desk being easier to use at an angle rather than horizontal, so you could reach documents further away.

I'm sure the software and processing power for this is here today. We might have to wait a while for the display technology, though - after all, it requires massive, durable, high resolution touch screens. But the first prototypes are coming out now.

Fitting our lifestyles better

People have been talking about the digital home for a long time. Finally, the vision is becoming clearer - touch screen web browsers, connected to personalized services in the cloud (the home server was a red herring).

Now we have this vision, and most of the technology required to achieve it. It's a question of fitting it to our lifestyles - whether it's in the office, the kitchen, or the living room.

Wednesday, July 25, 2007

SVG as image format

There are two common methods for adding SVG to a page - inline, via <svg>, and externally, via <object>.

The <object> element is bad. It's not semantic - it may as well be called <other> or <miscellaneous>. Although useful in the short term for displaying SVG, I would hope that this use will diminish.

The inline <svg> element is also bad, for the same reason - it's not semantic. It's the equivalent of having a <jpg> element, rather than using <img> - it's named after the format, rather than the purpose.

From the semantic perspective, there are three potential uses of SVG.

  • Foreground images: use <img src="x.svg"> to point to an SVG file
  • Background images: use CSS "background-image" to point to an SVG file
  • Inline with connected DOM: use <iframe> to point to an SVG file.

These are much better because they re-use existing semantic elements.

Unlike foregrounds or inline images, backgrounds should not enable any user interaction - events (e.g. mousedown), hyperlinks, pseudo-classes (e.g. :hover), etc. Some people say javascript should be turned off - this might be a rough and ready first implementation, but some javascript might be appropriate (e.g. random placement of shapes, or animation), so long as the "no user interaction" rule is followed.

The other advantage of <img> and CSS background-image over <svg> is that you don't need to use XHTML. Standard HTML gets round a whole series of issues with mime types, browser control, and backwards compatibility.

Advantages of SVG as image format

SVG images fill a lot of gaps with HTML styling:

  • rounded rectangles, circles, and any polygon
  • fancy borders (arcs, swirls, etc)
  • opacity, color gradients and filters
  • shape hyperlinks and :hover, rather than pixel maps
  • interaction via the DOM (for foreground images)
  • scaling of background images multiple backgrounds (in one SVG)
  • background text (e.g. graffitti, murals, etc)
  • intricate website 'themes' to each page

The possibilities for graphical designers are huge.

Browser support

I'm very pleased to see that the next version of Opera will support SVG images via <img> and background-image. Unfortunately, it's not on the schedule for either Firefox 3 or Safari 3, although it's an aspiration for both teams.

There are four possible methods of using SVG in a webpage - <svg>, <object>, <img>, and CSS backgrounds.

The SVG implementation status for Firefox and Safari is marked at around 55%. Personally, while they only support two of these four methods, I'd hold them at half this - 22%.