May 31

The inspiration

So I was looking at all the nice things the WebKit folks did, and one particular feature really got his way into my thoughts, and I was playing with possible usecases for weeks.. I’m talking about the CSS transforms.

This handy nifty new css feature allows you to do all kinds of 2d transformations on any element on the page, by utilizing custom CSS tags. This means you can rotate and translate DOM elements, but you can also use a generic matrix function to do whatever you want.

So here is where it get’s interesting. The fun thing about CSS Transforms is that they work today, in Safari 3.1, and on the iPhone, not only in one of the nightly builds, so it’s possible to target real-world users.

So now that I had all this power, I didn’t know what to do with it, until I remembered that I always wanted to do a cool iTunes like coverflow effect, already seen countless times in flash. Also helping me to remember was an Ajaxian post about the dojo.workers a couple of days ago, which features the same coverflow effect, done by Peter Higgins.

While this dojo.workers example is absolutely fantastic work and looks brilliant however, it doesn’t feel quite like the effect: You can’t scroll at once through many items, there’s no real animation (the images are already prerendered).

The result

So after a couple hours of work, I was able to create a coverflow effect that actually flows and animates in real-time, without using canvas or prerendered graphics.

While impossible to do a real perspective transformation using WebKit right now (that would require a 3d affine matrix), I’m using the matrix and scale css functions to create a somewhat similar experience, along with some viewport and zIndex logic.

To make a nice demonstration, it uses jQuery UI to create a actual coverflow widget, and jQuery UI’s slider to be able to slide through. You can also navigate through the items by clicking on them or using the left/right keys on your keyboard.

For those of you who would like to know how I was able to create the real experience: The refresh() function that updates the viewport does unlike other examples (i.e. frash coverflow scripts) not only handle single animations, but is capable of doing true half-state renderings. Right now, this is not shown too much in the demo, but it would be actually possible to change the next/prev keyboard behaviour to not move from one item to the other, but render each single half-state inbetween.

Finally, for those of you wondering if this will become a real plugin: Indeed, it’s already commited in the 1.7 branch of jQuery UI, and along with other Webkit specific plugins, come to UI in the near future. I’ll keep you updated!

Apr 21

JUI LogoI finally combined two interests of mine into one: My love for Japan and my day job. From May 14th to May 20th, I will be in Tokyo participating and speaking on two great conferences.

The first conference is a great international hacker conference featuring both Perl and JavaScript sessions - its name is YAPC Asia, you can find their website here: http://conferences.yapcasia.org/ya2008/

Due to the popular demand, registration was already closed a couple of weeks ago, but they opened again to sell a couple of more tickets. So if you’re planning to attend, definitely register fast!

The second conference is a exclusive one-day event named JUI 2008 Tokyo, a day completely dedicated to JavaScript User Interface sessions. It will happen immediately after YAPC (after the weekend), on Monday, May 19th.

That one is most interesting - a couple of weeks ago, I wrote an email to Yusuke Kawasaki to find out about japanese conferences, because I wanted to get active in Japan. He was extremely kind and helpful, and immediately answered with a bunch of options, the most immediate was the YAPC Asia. Unfortunately, the call of papers was closed long ago, so he came up with the idea of a exclusive one day event, with the focus on jQuery UI (!).

Now that’s what we got - a great one-day event, featuring great japanese speakers and jQuery UI content all over, sponsored by Yusuke Kawasaki’s company RECRUIT. The details are still worked out, but we’ll soon post a timetable and more information (A facebook event page can be found here).

If you ever wanted to visit Tokyo, this would be a great time and chance to combine a holiday trip with a great business trip. Be sure to leave a a comment if you think about it!


On a sidenote: The japanese IT economy is the third largest in the world, but it was (and still is) very difficult to enter their market or exchange business ideas and knowledge. Of course, there are a couple of reasons, but from what I’ve seen, it’s a more trivial one: The language!

Most conferences hosted in Japan are japanese only, with only a few english speakers and no english website/marketing, and although you will see great code if you attend, you might easily become frustrated because you don’t understand the details. However, there seems to be a small revolution or evolution going on - YAPC Asia is getting very popular, and it’s completely international - all session slides are translated from japanese to english and vice versa. They even have english-speaking staff!

I always had the feeling that from a knowledge perspective, Japan is a pot full of gold - but only if you learn japanese, you’ll receive the golden key to open it. Now there might soon be an easier way :-)

Apr 21

Yes, it seems the blog is back alive again - however, I decided to setup a clean, fresh copy of wordpress, without migrating the old and outdated last blog entries (I hope I wont have to do that again).

The reason I had to setup the blog again and again was the fact that my vhost was killed by stupid spam bots from time to time, I didn’t know why it happenend, so I had to wipe it everytime..that sucks.

Anyway, let’s hope this one lasts longer, happy reading :)