Project "Kolibri" help wanted

Cees De Groot cdegroot at gmail.com
Sun Oct 2 10:34:11 UTC 2005


Hi,

As some of you may remember, I've been busy with a Squeak project the
past 9 months or so under the banner of the Digital Society of the
Past (DGV), a non-profit that aims to bring (Dutch) private persons
and institutions together by means of peer-to-peer software. We built
the software in wxSqueak on top of a homebrew p2p layer (dubbed
'Gossip'). During the project, we decided to name the base software
'Kolibri', so that's what the project is going to be called from now
:)

What the package does is organize the world in communities, which have
files, members, etcetera. Also institutional collections can be made
available, currently through the OAI protocol. Files serve as starting
points for discussion threads, have Dublin Core metadata, and files,
institutional collection items, etcetera can be linked together in
relations (which themselves serve as starting points for discussions).
Data travels over the network as required, and there's a (primitive)
protocol to download blobs (file contents) from multiple sources at
once.

The software has largely been completed, and I'm uploading new
snapshots almost daily on SqueakSource
(http://www.squeaksource.com/dgv). You'll need wxSqueak 0.4 for this
(although 0.4.1 will work as well). We still have to formally license
it, but it'll probably end up as SqueakL+MIT code or something
similarly liberal.

I am biased, but I think this software is interesting from multiple
perspectives:
- it contains probably the most 'real' and most complete p2p layer for
Squeak to date (using UDP exclusively allowing it to work through most
residential broadband routers);
- it is a real-world application with a native L&F using wxSqueak
(currently the only one?);
- even though the application was paid for by the DGV, nothing in the
application is specific to the use of it for history. We're already
having interest of a group of schools wanting it to disclose teaching
materials, for example.

Therefore, I think it would be useful if some people outside the scope
of the original project, i.e. from the larger Squeak community, would
help out to make Kolibri more useful for a larger audience.
Specifically, some items that I can think of which are clearly out of
scope of the project:
- Translation to English. The software is translatable (we send
#translated to every string literal, and have some infrastructure in
place to use that) but the actual translation work still needs to be
done. Probably we want to reverse the current situation where the
default strings are Dutch and everything needs to be translated into
English;
- A Seaside UI as an alternative for wxSqueak - I have some ideas on
how this could look, and this would let people play with the software
without requiring them to install it or to ask system admins to pierce
holes in firewalls;
- Testing on Mac and Linux, maybe build installers for these platforms;
- A good review of the p2p layer, there are some weaknesses there that
ideally need cleaning up (most notably the whole 'presence' stuff
which was conceived as a quick hack to support instant messaging but
has grown out of proportion, but the file download code could also use
some reviewing because performance is under par);
- Nifty stuff people come up with - both code hacks and new uses of
the software.
- And of course, I have a long list of ideas but this post is too long
already :-)

Anyway, if you're interested, please shout.

Oh, and thanks to all the people who have helped out with advice and
debugging during the project. Especially Rob Gayvert, who put a lot of
hours in wxSqueak support.



More information about the Squeak-dev mailing list