Older blog entries for wlach (starting at number 37)

Uraeus: I think a good part of TransGaming's success has to be due to the "I'm at a LAN party, and I want to run StarCraft RIGHT NOW" factor.

At least, such was my motivation for forking over $15 last night (SC didn't work right away with normal Wine and I really wasn't in the mood for tweaking). Seems to have been a pretty good investment so far. It is indeed a shame that they had to fork Wine, but is understandable given financial pressures these days. Proprietary Cedega is better than no Cedega.

5 Mar 2005 (updated 5 Mar 2005 at 19:39 UTC) »

WriterPerfect (a WordPerfect filter for OpenOffice, based on libwpd 0.8.0) has finally been merged into the OOo 2.0 release branch. I guess that makes it something like two and a half years since I made the original announcement that I had developed this functionality. Many people deserve credit for this milestone (myself included), but I would like to personally thank Fridrich Strba for ironing out the many final details and doing the legwork of merging the CWS (child workspace: think inverted branch) into the main tree. In production software, the devil is always in the details, and I don't think we would have gotten to this level of quality and integration without Fridrich's persistence.

Overall, I'm feeling pretty conflicted about OpenOffice these days. On the one hand, it's pretty exciting to see your work have such a big impact: I have no doubt that tens of thousands of people have used our WP filter by now. On the other, the amount of work that was required to integrate such a simple feature is really rather depressing. In my analysis, it's pretty much impossible to meaningfully contribute to OpenOffice without dedicating huge amounts of time to the task (e.g.: 20 hours a week or more). The codebase is so large and its idioms so non-standard (CWS, UNO, dmake, ..) that anything less just isn't going to cut it.

I have every intention of continuing to help maintain libwpd, but I have decided that any other future work on office suites is going to be devoted to Abiword and Gnome Office, where I actually stand a chance of making a constructive difference without throwing away all my free time.

4 Mar 2005 (updated 4 Mar 2005 at 16:55 UTC) »

With the exception of the first day (where I was lying sick in a bed in my hotel), had a most enjoyable week in Europe.

Fosdem was quite good, albeit a little hectic at times. Managed to meet a whole bunch of new people, and learn a little bit about a few projects which I was curious about (OpenGroupWare, Snort, Plan9) and a few which I hadn't heard of before (ProGraph, FAI, Gamin, Linux-HA, jamvm..). Thanks to everyone (especially the conference organizers) for being so friendly and generous, as always.

It would have been a bit crazy to go all the way across the Atlantic for a conference like this (not being a speaker and not having a stake in any of the showcased projects), so I planned to spend a few days travelling afterwards. In the end, I settled on visiting Bruges and Paris (these choices were mostly the result of me acting on capricious intuition), which turned out to be quite rewarding. :-)

23 Feb 2005 (updated 23 Feb 2005 at 06:47 UTC) »

So it appears that I will be going to Fosdem this year, with some time booked to travel a bit afterwards. This was a rather snap, spur-of-the-moment kind of trip, so we'll see how it works out. Hope to meet lots of interesting people and find out about what they're working on..

pcolijn: I noticed the same niggles wrt Hula (which I set up the day it came out), although I kind of brushed them off under the assumption that the current web-interface was still more or less in the prototype stage.

I was impressed with its speed and ease of build/installation, both of which seem to be extreme rareties in the "enterprise class" software world. Then again, neither of these really mean all that much if Hula doesn't provide what people need/want. Will be interesting to see how this one develops over the next few months..

The last few days have been extremely sad. My colleague and friend, Deniz Sarikaya, passed away on Friday evening. My heart goes out to her family and those who were closest to her.

I'm going to miss those 12am theological discussions on the metro to NDG..

1 Feb 2005 (updated 1 Feb 2005 at 06:57 UTC) »
lkcl: TNEF is totally conceptually distinct from MAPI: it's an encapsulation format in which other things can be stored, including MAPI properties. Kind of like TAR, except the file format is undocumented and kind of hard to swallow at first blush (it's really not that bad once you grok it).

MAPI itself is really an API (as the name implies): used for accessing hierarchical folders, items within folders, and properties within items. The last one is really the killer: Microsoft really went to town coming up with all manner of arbitrary and incomprehensible ways to encode fairly simply things like recurrences and subject headers..

Kind of coincidental that you should write about this today-- I just had a (somewhat tongue-in-cheek) argument with several people in my office on my choice of name (WvMapi) for our MAPI-property/TNEF handling library, which is currently bundled with our GPLed Evolution connector for our proprietary groupware suite (with luck, one day it will be a seperate library). They claim that since the library's current purpose is to read/write TNEFs (and not implement the MAPI api), it should really be called WvTnef.

I claim that they (and their opinions) are wrong, and that it should be called WvMapi in honour of where it does its conceptual heavy lifting: decoding MAPI properties (which you might want to do without serializing them to TNEF). :-) pzion suggested calling it WvMapiProps as a compromise, but that just sounds clunky to me.. ah well, I'm sure we'll find a mutually acceptable name for it eventually.

I, Robot

Rented this one on my way home last night, as I didn't feel like hacking or reading. I was under the impression it was a rather mediocre movie with some amusing social commentary (like, say, Terminator 3). This impression has since been corrected. It was a truly horrible movie and I am a worse person for having seen it.

The last episode of Pure Pwnage had better acting and more exciting action sequences (not to mention less offensive stereotyping). I'd recommend downloading that (for free!) instead of wasting your time and money on yet another piece of obnoxious Hollywood claptrap..

21 Dec 2004 (updated 21 Dec 2004 at 09:55 UTC) »
freax: Ah yes, I forgot to mention that last Thursday. Thanks for the guide on building evolution out of CVS. It helped me out immensely (I added instructions on how to do the same thing in Ubuntu Warty: the differences were minor). Go collaborative knowledge!
17 Dec 2004 (updated 17 Dec 2004 at 08:02 UTC) »
Fun with 'winmail.dat' attachments

Ever had one of these? Likely you have if someone sent you a calendar, contact entry, or attachment from Outlook without thinking too hard about what they were doing.

The story behind them is rather long and boring: the short version is that they are something called TNEFs (transport neutral encapsulation format) which (in the case of calendar entries, contacts, and tasks) are extended to contain MAPI (messaging application programming interface) properties. If memory serves me correctly, Microsoft was originally hoping to get TNEFs adopted as the standard for encoding any form of electronic communication. Fortunately, that effort failed. Unfortunately, TNEF lives on as a way of encoding "leftover" information in an outgoing e-mail that does not fit neatly into a MIME message (why this sometimes includes file attachments escapes me at the moment).

Today being the Evolution hackfest and all, I thought it might be a neat idea to put my company's decoder for this format (called WvMapi, originally designed for our Evolution connector) to more general use by writing an E-Plugin for decoding contact and calendar attachments in Outlook-created messages.

It sounded like a great idea on the surface. Peter Colijn, Michel Émond, and myself had spent tons of energy making sure that WvMapi decoded just about everything you threw at it properly (the MAPI recurrence format for appointments is not pretty, let me tell you). Moreover, WvMapi spits out icals and vcards, which (according to the evo hackers) would be trivial to format into something that could be displayed in Evolution's mailer.

Alas, WvMapi is currently limited to parsing TNEFs which are exported directly from Outlook's data stores (and thus contain their full names, dates, descriptions, etc. inside a TNEF attribute called attMapiProps) and it seems as if the ubiquitous 'winmail.dat' attachments encode all of their MAPI goodness inside of the attAttachment attribute. I don't think it would be all that much effort to extend WvMapi to handle this sort of case (Lukasz Kosewski decoded how attachments are encoded in TNEFs during his last work term at NITI: I should see about getting his documentation and example code released as open source), but it's probably not a one day project.

For those looking for a more immediate route to getting this sort of thing going, I'd recommend looking at the ytnef project. Playing around with the converter a bit, I managed to get it spitting out some simple icals and vcards from winmail.dat's. I have a hard time believing that it does as good a job at decoding MAPI properties as we do, but maybe I'm just being arrogant. I didn't look at it much further because of potential licensing/IP issues: ytnef is licensed under the GPL, and I may be forced to use WvMapi in my company's closed source projects.

Words to the wise

Two pints of kilkenny, two irish coffees, capped off with two regular coffees are not a good recipe for sleep or sanity. I haven't felt this bad since I took ephedrine in university (also not recommended).

Ubuntu is amazing

Managed to install a working + wonderful system on my home computer even in this state of jitteriness and zero attention span (of course I had the dry-run experience of installing it at work for a mission-critical project: always the best way to evaluate software).

It's been a while I've felt so enthusiastic about a linux distribution (I think my last discovery of this magnitude was 'apt-get' in Debian): I feel almost behoven to get out there and spread the good news.

28 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!