[Zero setLogger: self];

Trying Out the impress.js

There is a interesting javacsript library being released on the github these days, the impress.js. Impress.js is a framework for making presentations on a open canvas, or so called the Prezi-style. I tried out the Prezi few years ago. It’s cool, but as the README from the impress.js said: “impress.js may not help you if you have nothing interesting to say ;)”. I don’t really have a chance to make a will-use-on-the-stage presentation on a Prezi.

Fortunately, there is a regular meeting of my lab, and it’s just my turn to present a read paper this week. I spent a whole night and messed around with the impress.js. You can find my result here: A dynamic user authentication scheme for wireless sensor network. I’m not really get used to arrange contents flat, so the result is not perfect yet.

A presentation made using impress.js

It’s really fun to make slides using HTML5/CSS3, and make them alive through impress.js. For example, I made that Smartcard entirely in the CSS3, which used border-radius and linear-gradient properties. I also used some CSS3 animation property in the Security Analysis section. Once you enter the slide, Login Replay becomes larger and the other two fade out. Next slide zooms in on the detail of login replay, the text will rotate for a little bit to give you a visual clue. You can use whatever CSS3 trick you know to make a presentation. Best of it? You can host it on whatever provider you want since it’s just some plain HTML/CSS/JS files. Dropbox? Sure. Github? Done.

However, it does have some strange quirk. First, the relative location and zoom-on-active of slides seems not necessarily remain constant across different computer / resolution / browser configuration set. My slides did need some tweak to make sure no text being blocked out on both my iMac 27” and MacBook Air 13”. You’ll need to manually align your slides to the center, so you can expect some negative values on X, Y values. It would be awesome if the library can take care of this of me. :P

In any case, this is still a fascinating library worth you to play with. Get it now on the github and perhaps you can make your own slides, or better, contribute some patches back to the project.

Git Dashboard

I actually made this dashboard few weeks ago, I’m just too lazy to write this down. /me flee

This dashboard is made for collaboration with teams. I was a hackthon-ing with bizkit and ftt. We set up the dashboard to pulls new data from the repository automatically and display in this pretty format. It was only intended for fun but it turns out very useful when merging works from everyone. The tool we used to make it display on the desktop is called NerdTool, and it was very easy to setup. You just need to add a new entry with the following command. We have another repository put under ~/.gitwatch to prevent the work being interfered when pulling new changes and to eliminate all local branches.

Command for git dashboard
1
date; cd /Users/Zero/.gitwatch/fun-taipei-fork-of-csim-saycheese; git pull >/dev/null 2>&1; git lp2 --all | head -n 34

Oh, and for the lp2, it’s actually abbrev. of log command with customized format string. You could add the following entries to your ~/.gitconfig file.

Add these to ~/.gitconfig
1
2
[alias]
  lp2 = log --abbrev-commit --decorate --graph --color --pretty="format:%C(yellow)%h%Cred%d\\ %C(cyan)%an%Creset:\\ %Cgreen%s%Creset\\ %ar" --all

Now, have fun! :)

MetaWatch Meets Google Maps

MetaWatch just shipped out few days ago. Once I got the watch, I starts to play with it, and to see what it is capable to do. I tried to use the intent-based API and put together this little experiment. I use the phone to acquire current location then retrieve Google Maps image for 96x96 display. Before you could deliver images to the watch, you’ll need to convert it to Black & White image. I used a threshold filter on the luminance channel for this, and the photo above is the result. Kinda fun, but not really useful. Let’s see what can be done next..

Update: Source code are now available here!

Moved to Octopress

Just saw this new blogging system and I think I like the idea. :) I think I’ll move to this blog and try to write posts in English here.