Archive for October, 2009

The Future of the Wave

Tuesday, October 27th, 2009

I’ve started using Google Wave recently (thanks to a colleague of mine, James McQuarrie) and up-front, I’ll say that I don’t get it. I currently don’t see the usefulness of it in my current situation (I’m working in a team that’s all in the same room). However, I got an invite to the Google Technology Users Group (#gtug) talk on Wave by the Wave developers themselves so I thought I’d go along and see what all the fuss was about.

They started with a few videos of what the whole thing is about (the pulp fiction one is my favorite) and I was starting to understand that it’s a very fancy collaboration client with lots of other features that are ‘still to come’.

And that seemed to be the main theme of the talk: there’s more to come. They were talking about draft mode, extension gallery (paid-for apps too), translation, spell check, more languages, better keyboard shortcut support, mobile web versions (iPhone native app NOT in the works) and open libraries. There’s a lot there and they’ve got a lot of ideas which they “don’t have the resources to do”, and that’s an interesting point.

Yes, it’s really early in the days of Wave, a product which has been “workable” for 5 months now, but they can’t push new features in until their core changes are complete. For this reason, Google haven’t open-source’d the core functionality or built all their API hooks yet, so developers are having to hack around problems.

The Google IO video also mentioned that you’ll be able to build your own Wave servers for private use. These servers will have to contact the main Google Wave servers, and all communications between these two will be cryptographically signed, which is major news. There’s quite a large overhead of performing this and for larger organisations, they may have to shell out for dedicated hardware.

Steph and Lars (the presenters) also talked about e-mail integration. They said they had it working for quite a long time but didn’t like the way that it interfered with other waves, so they dropped it. They’re hoping that the community will build it for them.

They also mentioned that it’s very popular in the USA, Canada, UK, then France and Brazil. China is half way down the list but Korea is nowhere to be seen. For a country that has the highest Internet connectivity per capita that seems very odd.

Finally they mentioned the Client API, and the lack of one. There’s no intention of making one either as they want everyone to use the web interface.

In my opinion, there’s so much more to come and I can see some very good potential uses (apparently lawyers love it). At the moment though, it’s still very early days. There’s so many basic things they’ve still got to work out, test and tweak, and then it’ll be ready for the prime time. Still, will it beat e-mail? I’m not leaving Outlook behind just yet.

Disclaimer: I work for PA Consulting Group, but the opinions above are not those of PA and are entirely my own.

My problem with HTML 5 – Styling <meter>

Thursday, October 15th, 2009

I consider myself quite a forward-looking chap. Apart from the occasional glance backwards to see IE6 still behind me and throw it some pity code every now and again, I try and use the latest technology and techniques whenever I can.

Looking forward then, to HTML 5, I’m met with a lot of optimism. These new elements, accessible web forms, canvas, SVG, are all going to save me a lot of trouble in the future and will generally make the Internet experience better.

I recently had a read of the HTML 5 doctor blog and am excited to see what’s going on. However, reading the Measure up with the meter tag article, my brain did a backflip and my mouth said “Wuh?! How’d they do that?”

I’m refering to a specific part of the article where author Tom Leadbetter shows off some meter tags and the JustGiving web site saying “we could use meter here” (linked image below)

He also shows the code that goes below it, reproduced and corrected for the example here:

<dl>
<dt>Target</dt>
<dd><meter min=”245″ value=”245″ title=”pounds”>245</meter></dd>
<dt>Amount raised so far</dt>
<dd><meter min=”0″ max=”250″ value=”185″ title=”pounds”>185</meter></dd>
</dl>

What I was thinking at this point was, “how on earth is that possible using those tags? Surely that’s not posssible.” So, I set about trying to prove that it was possible…

It’s not

See my attempt to style the meter tag. (works in Opera, Firefox and Safari)

The fundamental issue is that using CSS and HTML5 alone, you do not have access to values of attributes that you can use again to set CSS properties. My main issue is that this is trivial in javascript, as demonstrated on the demo page.

There are some potential CSS modules that can help in this respect, namely CSS Variables and CSS Math. I am also oblivious to the power of canvas and SVG, so if anyone can give me an answer using those I’d be very pleased.

I like the idea of HTML 5 but actually styling these new elements is going to be a real challenge. So, community at large, how do you solve this one?

Update: I submitted this to the W3 CSS Working Group and got some very good responses. Principally, as Bruce commented, I should be using the CSS3 Values attr() element to access values of properties and do the math, then use the generated content module to put the graphic in the right place. Their main concern is that you’d have to use “s/#meter::after/#meter::after::after” as a selector, which isn’t supported by anything right now, and background clipping is a bit dodgy too.

Brad Kemper did a quick mock-up which will work on webkit nightlies. I would update my demo to show what the CSS WG guys were doing, but nothing works, it’s all theory at the moment. Lets hope for more soon.