Recent blog entries for josef

Met up with jzaun in the wonderful old city of Marburg. We had a beer or two, and talked a lot about both differences between life in Europe and the US, our common enemy (companies dictating government policies), studies, and of course open source project work. The bzFlag stats system, as being worked on by him, is very advanced already and we should more or less catch up to that level on the www side of life. Having had a look at pictures of current multimedia applications on Windows and OSX in Keys magazine, we found out that none of these actually comply to any HIGs, and the same applies to games of course. Thus, while GNOME and KDE UI designers should care about the average desktop user, it should not be forgotten that the lack of specialized applications comes from the fact that custom UIs and desktops are not yet well-integrated. (I'm talking not about proprietary applications, those should vanish of course - I'm talking about nice interfaces to powerful free software libraries.)

For checking email later in the day, we've been to an Internet Cafe. The two guys who run the business didn't seem to speak English, and were even less skilled to administer PCs. Equipped with Windows ME, they had neither an alternative browser on it nor could handle 1024 bit cipher suites that certain online banks require. Oh my, they made my day in there :)

On my way back, I ended up in Berlin, watching camels being fed, walking nearby several heavily guarded embassies, and going back home in the early afternoon.

User-Mode-Linux is still among the top entries of my TODO list. I've started writing a KDE administration client for it (voilà), which goes quite well thanks to the SMTP-like protocol. Well, except for the application name, sad there aren't any suitable K-names left.

While we're at it, Kexi looks very promising, but doesn't support PostgreSQL yet. Hm...

Advogato carries many meta discussions currently, and this is one of them :)

elanthis: A good program should always be able to handle input from /dev/urandom: don't lockup on arbitrary data, but, in case the data might probably be valid, be able to handle data of any size, without artificial limits. Yet there are too many tools which need to be fixed with regards to this problem. Another such issue for me is that a library function should never call exit(). Libraries are intended to be helpers, and their functions (or an object's method, for that matter) are equipped with return values for a reason. Yet some programmers disagree here, and call exit() in a library if an error is encountered. The golden rule is that one never knows in which environment a library is being used, so that exit()ing can always be considered wrong behaviour.

Health status Not doing very well yet, but survived the 3rd virus attack this year. A very odd year, and not much coding possible right now. Yet I'm confident I can meet a fellow developer (jzaun) in real life soon, as long as he'll be staying on this continent.

LinuxTag Chemnitz
We got a bunch of KDE t-shirts today, they're very nice (thanks promo team). The day was spent helping to setup the facilities at the university, and then finishing the presentation slides, and hacking some smaller bits. I even managed to update X11 and OpenOffice due to nasty PPC bugs, and it helped a lot. Although normally a sid system shouldn't be updated directly before presentations, that's second only to having to reboot without a journaling file system...

Updated the web interface so if a player wins or loses, it is instantly visible with a browser from anywhere in the world. Neato. Lots of work will have to go into supporting SQL tables, mostly for technical name -> real (i18n'ed) name lookups. Now if only all the games and clients would support the new features. Tomorrow, I plan to spend some minutes with chrisime to improve at least the GNOME 2.x client. This will set all KDE fellows at odds, but I've always wanted a rewrite of the old KDE applications, and don't have the time for it right now.

GGZ The project server is up and running, with ongoing migration of web pages onto it. On the source side of things, deprecation of the old autoconf and automake versions is now enforced for developers, which is really a good way to drop obsolete code. Heck, the fact that so much time is spent on the build system instead of on the code is disgusting, but build system work doesn't scale the same way as coding work, it requires a minimum of attention which is clearly above what could be done by a casual developer.

Hackers vs CS Theory Now that's a topic which still concerns me. I've been into software development for so many years, and only the recent months put development into perspective with the theory behind the code. Will I aim at being a hacker forever? A lousy software manager? A think-tank type of guy? Time will tell...

Counting down the hours till it starts, while the latest KDE is still compiling on my iBook. Since we plan to build a compilation cluster so we can be more productive during the weekend, some sort of cross-compiler setup is needed, which isn't even prepared because I had no time at all. Counting down the minutes...

I will use the time to fixup some bugs in own applications, mostly because a month after that I'll give a presentation at LinuxTag Chemnitz. Scary I'm the only one who speaks about games. I should start a 2nd open source identity in areas like security or MS Windows compatibility, that would raise the chance for speeches :)

United Soap opera of America
What will the next term be US war minister Rumsbums uses to describe us? Did anyone tell him already that in Europe we still eat each other and haven't invented the wheel yet? Someone send him a letter so he knows for sure, together with a map so he can find that strange Yurop thing.

I hate being political but all the nasty war planning that is going on disturbs the feeling of hacking.

Another soap opera
Starring a little programmer who still has a cold...

Hammered web servers
While there are lots of load-balancing tools around, most of them concentrate on clustering at the TCP level. This distributes the load between machines, but leaves one unsolved problem: The network throughput bottleneck.
During the weekend, my DSL line got hammered to death, so it's certainly not suitable anymore to host free projects on the web server at home once they become popular. Load balancing on the application protocol level can help here though: Every page or file to be downloaded can be replaced by a script (say, PHP) which sends back HTTP redirection headers containing distributed locations of the resource. One could then be placed on the SF download servers, another one on some download mirror site.
Apache's mod_backhand would fit (it understands HTTP pipelines) but the authors claim it cannot solve the bottleneck problem. My idea is however that it could work nevertheless if external resources (extra-cluster, not intra-cluster) are used.
On a side note, I have now a self-written Debian package autobuilder in place for i386, hurd-i386, arm and ppc. Except for the hurd they even run in parallel, but in the far future hurd will run on L4 and thus can be fired up in user-space. Now, all I need is these pills which awake sleeping package sponsors.
Got external VGA to work (yeah!). Now the only minor annoyance left is that there's no 3D acceleration yet, I'll have to recompile the DRM for the Radeon chip. Thoughts about a customized iBook-Knoppix were floating through my head, but I don't have the time right now, exams will start soon.

When the current stack of privacy/security-related patches has been applied, we've more features than we planned to have for the next release. Some others are missing though, probably waiting some more weeks makes sense, but it shouldn't take too long. We got exactly 3 votes in the game tome poll so far, which is discouraging but on the other hand shows that there's lots of work still to be done. Hell, 3 years in the makings and still infantile. But then again there's no alternative to get ideas from (like the desktop environments got from CDE, Windows and others, or Linux got from Unix), so it's acceptable.

Nas ne dogonyat
Of course not.

KDE hacking
Danimo invited tokoe and me to celebrate a hacking weekend in Chemnitz, where we'll also staff the KDE booth during the 5th Linuxtag in some weeks. We'll most certainly share our booth with that other desktop environment project. Well, currently we're sitting here, listening to good ol' music, and writing not so ol' code.

Installed 3.0pre8 into my UML at work, and the installation of mailman brought the machine down to its knees. UML users prefer SCSI disks. It's really convenient that if a partition gets filled up, a new one can be created with dd, mounted, synchronized, unmounted, and then replaces the old one. Yet I think the advantages of both a database's write-ahead-log and UML's cow devices could be merged so that fast-growing partitions can be shrinked with some new kind of moo tool. This would allow for point-in-time recovery, but the performance would probably go down. But this is what optimization freaks, like, er, me, really like. There's still room for advanced algorithms, and even today's algos are only halfway implemented. I recently tried to google for MPM networks, the number of results is discouraging.

First Debian packages built. Now all I'm waiting for is that KDE 3.1 enters unstable.

While others waste their time with watching TV, I was curious to find out how and why search machines direct people to my homepage. Not only did PHPSysInfo reveal the model of my CD burner (which was the search term for 2 people in the first days of January alone), but also pages related to the flood, or games ("stupid americans", when looked up on Yahoo, guides to my XBill mockup ;). Lots of people also look for KDE build documentation. I'm guilty here, haven't been updating that stuff for months.

There are quite a lot of spiders (googlebot, mercator, ...), and none of them gets caught by the WPoison script (or equivalents). Time to remove the perl toys again.

46 older entries...

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!