kai is currently certified at Journeyer level.

Name: Kai Wetzel
Member since: 2000-01-17 02:04:28
Last Login: 2008-12-14 17:51:15

FOAF RDF Share This


I was the lead-developer of the historical "Linux Interface Project" (1996-1998) a project that was aiming for something like KDE, or GNOME, producing many good ideas but little useful code.


Recent blog entries by kai

Syndication: RSS 2.0


Today I was informed that my Google Summer of Code application to port my circular treemaps disk usage visualization tool to KDE was not accepted (sigh). However, I finally released a simple Java demo which makes it easier to understand the basic idea. It's available for download. I'm happily accepting comments at graiNnofOsaSnd AT nickPname DOT berAlin DOT dMe (\NOSPAM). =°)


It seems all the wise stuff has been said. Still, this is great.


After starting to port my circular treemaps code to Java and realising that Java2D is just too slow for the task I've put together a snapshot of my Gtk+ version, which uses Freetype 2 for rendering. A few days ago I downloaded the Anti Grain Geometry graphics library and I'm very impressed so far. Used wisely it should be a good basis for an interactive circular treemap file system viewer. All in all the total confusion regarding hacking is gone, or at least i got a plan for my pebbles code...

Every once in a while I have big trouble with time management. In fact, it happens quite regularly. In those moments I'm thinking of better ways to represent calendaring information and to integrate timeline-based information visualization into user interfaces. Most of the time I end up just printing out my old PostScript-based calendar, fill in the dates and put it on the wall.
I like those calendar year views very much where weeks line up neatly and the flow of time is easy to see. Last year I coded a little Java prototype (screenshot). The prototype has no function whatsoever, but I like the visual design. The main idea is to use this layout as a basis for visualizing stuff like mailing list threads, stock prices, server statistics, etc. Another good point is that it could be used for a zoomable user interface since a day view can easily use the long vertical space each day in the year view gets. Teaching myself a little PHP and CSS I made a PHP version of the same layout earlier this year. It's a good example for how different browsers realize CSS-support :-(

There was a lot of talk about file management on the old Linux Interface Project's mailing lists. One of the ideas which I still miss in contemporary packages is the ability to aggregate files of the same type to a single icon. You would select an entry from the context (or main) menu, saying something like "pile up JPG images" or similar and the files of the respective type would then be represented by a single "stack" or "group" icon, instead of beeing scattered around. A special option would be to collapse/expand "hidden files" which would IMHO be much more convenient then various ways to select "show hidden files" today. On the piled-up icons a menu entry would appear which allows to unpile the stack. See the mockup. Under the pile icons a file-type depending summary would be shown, such as "12 PNG images, 6083 KB" or "5 mp3 files, 24 min".

Programming can be painful at times

I've decided to do some work on the Gtk widget for pebble treemaps before I jump on to learning Ruby and giving the Linux Interface Project file manager a try. I'm in trouble though and need some help:

Even though I've written a little Gtk widget in C before, have looked at quite some Gtk+ application and almost finished the Gtk 2.0 port of the TOM language bindings I'm still totally lost when I have to write a new class in Gtk. There are probably people who can type very fast and write all this stuff by hand, but given that it's almost intirely redundant code I guess most people use code generation or macros to do the job. I was thinking of using m4 and I looked at GOB but didn't quite like the approach, even though it's certainly better then doing everything by hand. Today it occured to me that it's probably better to use the built-in capability of the code editor to spit out the code, XEmacs in my case (though I've lately used Anjuta). I tried to find some information about using Emacs Lisp to write code for me (tutorial style since I'm new to Lisp) but didn't find anything, tried to find Lisp macros/functions to generate Gtk classes, inserte signals and methods and such, found non. Maybe I just tried the wrong queries?

If you're using (X)Emacs and have succesfully deployed Lisp to write Gtk code in C without typing it in manually I'd like to hear from your experiences, maybe you know of some sites where these things are explained or where I could download Lisp code that makes programming Gtk less of a burden. I'm grateful for any help!

Life: After more then 5 years I'm now studying mathematics again, giving it a second try. I've taken 3 classes this term: analysis, linear algebra, and computational mathematics. One week (and one examn) to go and I'm pretty tired. Studying math is definitely rewarding - feels almost like getting an upgrade for my brain :^D I think it'll help me with my programming skills as well in the long run but for now it's adding to the confusion. Last time I tried to study math my personal situation made it impossible to continue and I often felt like being caught in an endless loop since then. Things started getting better when I moved to Berlin and it seems I'm back on track now. Should do more sports, though ...

Free Software: Last fall I've contributed to a PHP/mySQL/X*L portal engine project: cyx5 and learning a little SQL was very interesting (as was having my first exposure to XSL). Maybe I'll have some time to hack on it again during the next two months.
What's cool about it is that it actually started out as a distributed team project - unlike most successful Open Source projects out there. It's a way of working I very much enjoy, and I fear it's the only way that works for me at all - I'm just too unorganized to be productive in isolation for a long time. Maybe that's something mathematics is going to help me with, too.


The following quote is from a document describing a calendaring architecture but I think it's a good rule for a much broader set of applications.
[Jan Grant] : The system's algorithms should be capable of operating in a mode where instant responses to requests are not required. That is, state transitions should not merge a request and a response.
Get used to writing programs this way. When half of the computers you're talking with are on Mars, it'll all be like this.

Syncronous, control-flow based languages make this hard, though.


It's always better in the summer :°)


I'm looking for a tool to extract structured data from semi-structured web documents, identifying records (and hopefully fields) by learning extraction rules automatically or semi-automatically from multiple-record web-pages. I only found some research papers, can somebody point me to a Free Software tool to start with ?

With every day, Google seems to become more PDF/citeseer-infested, but there is (almost) no competition left, sigh.


raph: Don't worry, marketing will coin a cool term, probably something containing "double", "ultra" or so ...


Linux Interface Project: Too hot for coding. Circular treemaps will have to wait.

12 older entries...


kai certified others as follows:

  • kai certified atai as Journeyer
  • kai certified raph as Master
  • kai certified miguel as Master
  • kai certified hp as Master
  • kai certified Slow as Journeyer
  • kai certified terop as Journeyer
  • kai certified alan as Master
  • kai certified ralsina as Journeyer
  • kai certified kai as Journeyer
  • kai certified graydon as Journeyer
  • kai certified stefan as Master
  • kai certified lalo as Journeyer
  • kai certified freetype as Master
  • kai certified lauris as Master
  • kai certified bruce as Master
  • kai certified Netdancer as Journeyer
  • kai certified pauldoo as Journeyer
  • kai certified goingware as Master
  • kai certified Ilan as Master
  • kai certified async as Journeyer
  • kai certified blm as Apprentice
  • kai certified mslicker as Journeyer
  • kai certified trs80 as Apprentice
  • kai certified MichaelCrawford as Master
  • kai certified mhanni as Journeyer
  • kai certified pabos as Journeyer
  • kai certified garym as Master
  • kai certified rossigee as Journeyer
  • kai certified apenwarr as Master
  • kai certified bonzini as Master
  • kai certified iagorubio as Journeyer
  • kai certified ncm as Master
  • kai certified cdegroot as Master
  • kai certified crhodes as Master
  • kai certified ib as Master
  • kai certified bmastenbrook as Journeyer
  • kai certified wahlau as Apprentice
  • kai certified ken as Apprentice
  • kai certified hub as Master
  • kai certified kristian as Journeyer
  • kai certified cerquide as Journeyer
  • kai certified anirban as Journeyer
  • kai certified mmangino as Apprentice
  • kai certified brouhaha as Journeyer
  • kai certified cmm as Journeyer
  • kai certified bolsh as Journeyer
  • kai certified scrottie as Journeyer
  • kai certified Akira as Journeyer
  • kai certified maragato as Master
  • kai certified sascha as Master
  • kai certified dmerrill as Master
  • kai certified mishan as Journeyer
  • kai certified Blacky as Apprentice
  • kai certified criswell as Journeyer
  • kai certified prozac as Journeyer
  • kai certified mathrick as Journeyer
  • kai certified wingo as Journeyer
  • kai certified yeupou as Master
  • kai certified titus as Journeyer
  • kai certified beto as Apprentice
  • kai certified ploppy as Master
  • kai certified nikodemus as Master

Others have certified kai as follows:

  • atai certified kai as Journeyer
  • kai certified kai as Journeyer
  • bruce certified kai as Journeyer
  • maelstorm certified kai as Journeyer
  • opiate certified kai as Journeyer
  • lalo certified kai as Journeyer
  • Malx certified kai as Journeyer
  • bonzini certified kai as Journeyer
  • mishan certified kai as Journeyer
  • berthu certified kai as Journeyer
  • Blacky certified kai as Journeyer
  • mathrick certified kai as Journeyer
  • cerquide certified kai as Journeyer
  • beto certified kai as Journeyer
  • brouhaha certified kai as Journeyer
  • iagorubio certified kai as Journeyer

[ Certification disabled because you're not logged in. ]

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!

Share this page