My blog has been moved to ariya.ofilabs.com.

Friday, February 15, 2008

Karbon and WPG

After Inkscape, OpenOffice.org (Novell edition, ooo-build), and Abiword, Karbon in the next KOffice 2.x joins the array of open-source software which is, by using libwpg, able to import clip-arts in WordPerfect Graphics (WPG) formats. Since any Karbon drawings can be embedded in a document, of course this means you can attach and insert WPG clip-arts in a text document, a spreadsheet, or a presentation.

(There is still a rendering problem in Karbon as seen in the comparison screenshot. Hopefully will be fixed as it is approaching the release).

Thursday, February 14, 2008

Wednesday, February 13, 2008

Sun VirtualBox

Seems that the trend still continues, Sun is to acquire Innotek, a German company known for its open-source virtualization software, VirtualBox. Recently VirtualBox becomes my favorite virtualizer because it is dead-easy to install on OpenSUSE. I hope Sun will continue to improve and enhance VirtualBox, it is a pity if such a great product disappears from the virtualization radar.

Tuesday, February 05, 2008

for you a thousand times over

The film The Kite Runner (German: Drachenläufer) is adapted from the book with the same title. I have read the book and it is very enjoyable. The film is, however, something different. It is obvious that it is not possible to include every single scene from the book, and thus the film can not touch the major characters in the same depth as the book. I would say, read first the book before going to watch it and then try to fill out the missing episodes in your own mind.

I also find it is pity to see that not so many are interested in this film. I can't claim I was the youngest in the cinema, but it was clear that most of people are at least thirty something. On the other hand, it is indeed a bit hard to catch some attention when it must compete head to head against blockbusters e.g. I Am Legend. I hope the DVD will be better received.

Sunday, February 03, 2008

Friday, February 01, 2008

2008 tech trend

Sun MySQL

Nokia Trolltech

Microsoft Yahoo

KDE and KOffice on N800

Thanks to the efforts of our hero Matthew Lewis (aka penguinbait), KDE 3.5.8 with KOffice can be enjoyed on both Nokia N800 and N810 (read also the step-by-step instructions). One of the screenshots from him:

Once I finally get OS2008 sorted out on my N800, I'll definitely give it a try.

why Google Code Project Hosting rocks

Let's compare. Google Code Project Hosting (GCPJ) vs SourceForge.net (SF).

You can start using GCPJ in <1 minute. With SF, you have to provide all those tax-forms-like details and wait until your request for the project is approved.

The project front page in GCPJ is cleaner than that in SF. Don't even bother thinking about the old version of SF.

GCPJ's label-based issues tracker is much more usable than the complicated SF's one. Everyone hates a bug tracker anyway, somehow GCPJ is still humanly managaeble.

Often you want to put some information quickly and the GCPJ wiki is fantastic for that. No need to create some web pages, upload them, and so on. Yes there is also the wiki support for SF but how many of you use it or even are aware of it?

The download page in GCPJ is easier for eyes.

Optional goodies are not packed within GCPJ. If you want to display some screenshots, redirect to Picasa Web Album. Need some mailing-lists? Connect the project to Google Groups.

Tracking the statistics (visits, hits, referrers) is easy because it is integrated with Google Analytics, which btw provides more useful information compared to the limited SF's stat tool.

Administering your project in SF can make you scream (aloud!). It's however dead simple in GCPJ.

SF's subversion access is known to be flaky from time to time. GCPJ's might not be the fastest, but so far it works smoothly.

GCPJ's subversion viewer (the very latest feature of GCPJ) is a way way better than SF's traditional one. Try both and prove it yourself.

In short: GCPJ is designed with Pareto Principle in mind. Most of the core features which the open-source developers (who, BTW, do not have so much free time) really need are made very easy to handle. It's rather minimalist, it's not perfect, but it improves over the time. SF is so dull and not for mortals.

to blur or not to blur

Blur is an interesting effect, mainly because it lets us enjoy the main object yet the out-of-focus parts add something to the realism. Like in the default KDE 4.0's splash screen:

For PictureFlow, I decided to add the support for optional blur effect for the reflection, as shown in the following comparison:

It is even more enjoyable when you run the demo program and see those book covers sliding, as if they are ice skating. Shader guru can quickly point out the fakeness of the blur. Rather than blurring the "floor" after the reflection is painted there, I choose to blur the reflection for each image beforehand. Fake but fast and fun enough. As for the algorithm, it is the famous blazing-fast exponential blur from Jani Huhtanen, used among others in KDE 4's Plasma.

Another improvement is that the background color can be customized, not limited to black. In fact, black is particularly suitable to do fast reflection illusion cause blending a specific color with black can be approximated by multiplying its RGB components with a decreasing factor. But since I saw that Cover Flow for iPod nano is with white background, I thought I just let you use your favorite color for PictureFlow.

In addition, I refactored the code so that it is more maintainable. For simplicity, the horribly long look-up sine/cosine table has been reduced with the help of simple interpolation. Even better, PictureFlow now supports Qt 4 (Win32, Linux, Mac, Qtopia, Windows Mobile), Qt 3 (tested on Linux only), and Qt 2 (for Qt/Embedded platform) with a single code base. Maybe even Symbian in the future :-)

Thursday, January 31, 2008

qt embedded 2.3.x with gcc 4.x

In case you want to build Qt Embedded 2.3.x -- I know it's old but who knows -- with gcc 4.x which is what modern distributions (like the latest OpenSUSE) offer, you might get error messages like this:

In destructor ‘QSortedList::~QSortedList()’:
error: there are no arguments to ‘clear’ that depend on a template parameter, so a declaration of ‘clear’ must be available
error: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)

or something similar, because g++ 4.x (actually since 3.4) is stricter than the previous versions with respect to name lookup.

To solve the problem, get my patch: http://pastebin.com/f474708b6. It is tested only for Qt Embedded 2.3.8.

Friday, January 25, 2008

KDE cookies

It just came to mind. What if for the next KDE release events, parties, or any other get-together occasions, we should prepare cookies, something like the Warsaw Almond cookies (Warschauer Mandelgebäck)? It will be a challenge, though, to bake them for more than a dozen hungry mortals....

Warsaw almond cookies