My blog has been moved to

Saturday, December 27, 2008

graphics dojo in 2008: a wrap-up

If you show some friends an ancient trick to multiply two numbers in your head within seconds, typically you would either get a dismissal ("Fast? A calculator or Google is faster!") or an excitement ("How useful!"). Each response is justified. In our daily activities, we seldom face the situation that force us to only multiply two numbers and right at that moment you don't have a calculator (or Google) at your disposal. However, knowing such an art can help you to improve your overall math skill, cast away the unnecessary fear, build your passion for math, and makes you ready for the next level. As Louis Pasteur once expressed, "In the field of observation, chance favors the prepared mind".

The same goes for some of the graphics examples I have written for that Labs Graphics Dojo corner, and also what I have shown in my Developer Days talk. The most common comment is "Blazing-fast? Just use OpenGL!" That is very true, and I could not agree more. However, googling for 27*31, which gives the answer one second faster than my brain, will not make me fall in love with math. The concern of the talk was more about the tricks and the passion behind them. It could be only me, but I feel that developers start to lose passion for graphics, even though they have to deal with lots of user interface stuff. We are practical enough already, we know when to use Google or when to do it ourselves, but we can not afford to let the passion goes away. After all, Zack started it under the name Graphics Dojo not e.g. Graphics Oracle, as it is merely a training place rather than a collection of solutions.

Although it is implicitly stated, if I were Louis Pasteur, I would have gone further and said "chance favors the prepared and passionate mind".

That is, 2008 is coming to its end. Around mid 2008 Samuel and I agreed to resurrect our beloved Graphics Dojo corner. I hope our attempt did not fail (miserably), in particular since I was new to this wonderful world of graphics.

Squeezing a couple minutes here and there, making the best out of rainy weekends, firing vim to code during some sleepless nights (instead of browsing the web aimlessly), redirecting my passion to graphics between fixing WebKit bugs, here is a list of biweekly Dojo examples that I managed to pull off this half-year:

And while you are there, check out examples written by my fellow Trolls:

Happy New Year!

Sunday, December 21, 2008

oh, Clifford

"You could not live without quaternion, could you?", so was the impression of my advisor.

William Hamilton and William Clifford are my heroes. I fell in love with quaternion some time ago and used it with passion in my dissertation (check the summary). Those who had done extensive polarization analysis using matrix and quaternion would come to the usual conclusion: for this context, quaternion and polarization analysis is a marriage made in heaven.

Now I realize that few days left until 2008 is gone. This would mark my biggest failure for this year. Sadly, I fail (again) to learn Clifford algebra in depth.

Saturday, December 20, 2008


I decided to ask her. "Sorry if I'm rude, but isn't your perfume Escada Moon Sparkle For Men?"

She smiled. "Yes, and it is wonderful. " She continued smiling. "I got it from a customer, I work in a bank."

"Ah, I see."

"Don't you also use Bruno Banani Pure Woman?", her turn now to ask me.

"Oh, yes I do. So I feel that my other half is always there."

One second passed. Then we shared a laugh.

Thursday, December 18, 2008

code less. create more. with Qt Creator.

Congratulations to the Qt Creator team for the Beta release! In case you live under the rock, Qt Creator is the new-IDE-on-the-block. It is now open source and it has just reached beta, so just download it (Windows, Mac, Linux) or learn more about it. For the braves, check also its shiny new open repository, start git cloning and hack on it!

Monday, December 15, 2008

genie in a bottle

Let us start with a screenshot:

For the code, the hack behind it, and a screencast/video, check out my Qt Labs blog entry.

Saturday, December 13, 2008

every day a false start and it burns my heart

This week in Oslo we have visitors, as evidenced from this picture:

(Zoltan, Holger, Simon, another Zoltan, Enrico, Tor Arne, Ariya).

Basically we are doing a QtWebKit hackfest. Beside the usual three musketeers of us (Guardians of QtWebKit here in Oslo), we have also two Zoltans and Akos (not in the picture) coming from University of Szeged, as well as Holger (WebKit open-source developer) and Enrico (Italian ueber-hacker).

We managed to nail down a lots of stuff, among other the discussion about development workflow using git, a heavy round of final API review, brainstorming on the DOM API, ACID3 patches merge and some font handlings, lots of bug fixes and touches such as fix for annoying focus problem, cursor flashing, proper non SVG build, multiple file chooser support, state save and restore signals, native plugins instance lifetime, file extension for images, autogenerated inspector qrc, fix for Enter does not work, missing plugin icon, and many other stuff, including non-technical ones.

It is a fun hackfest and we certainly need to do this more often :-)

Monday, December 08, 2008

knocked out

The beauty of taking a trip from/to South East Asia is simply its ridiculous journey. In the last 72 hours, I have been in 6 different airports, gone through 7 hours timeshifting, trapped 3 times in inhuman traffic jams, exposed to 40 Kelvin temperature drop, and of course enjoyed only sporadic in-flight sleeps and food.

For my aging, weak body, it hardly comes as a surprise that I am K.O.