walters: One thing that can be done to improve access to
clean water is to support organizations which are working at this problem
(financially or otherwise).

The Mennonite Central Committee (MCC) is an
effective organization which is working at this (and many other) issues in
developing countries. One particular aspect of how MCC works that I
appreciate is that they don't go into a country and set up their own program.
Rather, they coordinate and cooperate with people and groups in a country
to help achieve common goals. Also, MCC carries out development programs in
North America, too (it's not like so-called "first world" countries don't
have development problems, too).

I work for PeaceWorks Computer Consulting, which supports several non-governmental organizations (NGOs), including MCC. In supporting these organizations we make use of and contribute to free
software as much as we can, which makes this job doubly-satisfying.
Bash

Well, I finally submitted my Linuxtag paper last week.
It was a bit rushed in the end, as I was working on it at
the same time as my parents were here visiting in Germany.
I was only able to cover WebKit and MiddleKit in the paper,
but I hope to also introduce PSP and show
gtalvola's
XML-RPC sample in the talk.

Finally sat down again to work on gnome-vim yesterday.
The idea I'm working at is to add bonobo support to the vim
itself. Each instance of the vim control would need to be
in a separate process, though, which is different from all
the tutorials and samples I've seen so far.

I diddled with the sample a bit. I removed the factory
and start an instance of the control in main(). I changed
the .oaf file to reflect this. Oaf was happy enough, and
when I started the container the control came up without
problems.
But when I tried to start a second instance the first
control disappeared from the container, and I had two empty
container apps running. So it appears that oaf wanted to
start the second instance of the control from the same
process, which won't work for what I'm trying to do.

Now I'm struggling with how to write a factory which
spawns processes and returns their object references to oaf.
One possibility would be to do what oaf does when
bootstrapping a factory: it gets the IOR passed back to it
from the child process via a pipe.

I'm pretty much out of time for this this weekend, but
I've joined the gnome-components-list and asked for
feedback, to see if my plan makes any sense at all. :)

Had a new idea for gnome-vim yesterday. Presently
communication between my component code and the vim instance
is limited to sending keystrokes and using the vim
client-server functionality to (for example) evaluate a vim
expression and receive the result. Quite limited, but,
well, gnome-vim started out as a quick hack, because I
wanted to use vim with Evo.

Several people have asked why I don't make use the
vim-gtk code in gnome-vim. My response has been:

the vim-gtk toolbars and menus wouldn't "just work" as a
bonobo control, because they're just straight gtk. They'd
have to be rewritten to use bonobo so that the menus and
toolbars can be merged with the container's UI.

gnome-vim must support multiple instances running
simultaneously, and needs to maintain communication with
each running vim instance.

However, I was thinking more about this second point, and
it seems that this is requirement is just due to the
structure that gnome-vim inherited from the gtkhtml control
(on which I based my initial code).

If instead of writing a component factory, I could simply
supply an executable which implements an interface, and oaf
should (I think) fire up an instance of the process for each
required component. It would be an out-of-process control,
but each process would be running the vim process directly
(with corba interface implementations and bonobo stuff
added).

This would allow a much tighter integration with vim,
which would make it possible to support fancier interfaces.
I envision gnome-vim being used with Anjuta: when the user
begins to type a function name, gnome-vim pops up a menu
with possible completions.

I'd like to move to this structure down the road, but in
the meantime I have a maintenance version to release.

Looking forward to being back in Germany again. I'll be
spending two months there with my fiancee Katharina on April
25 for two months, during which time I'll give a talk on
Webware at Linuxtag 2002.

I was at Linuxtag 2001 in Stuttgart, but this will be my
first presentation. I'm both nervous and excited about it.
Although I've been a free software user, advocate and
contributor for several years, it's only recently that I've
stopped just "lurking" and started to make more connections
with other developers, and I'm looking forward to doing more
of this in Karlsruhe.

I'll be sure to bring my GPG fingerprint along. :)

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.