Jon's Notes

May 18, 2006
Why is parallel computing harder than using a web service?
Why isn't there a library that lets me call a map function and split the workload across 2, 10, or more computers?

Hmm, how to properly say "in soviet Russia, web service calls you?"

With a web service, the client calls a function on the server, and gets some data in return.
Now, have a pool of clients connect to the server. Then, when the server needs a lot of data processed it sends a subset to the data to each client. It then sends the processing function and dependencies to the clients. The clients process the data and return it to the server.

I'm aiming for something like Google's MapReduce, just more accessible for programmers without Google-scale resources.

Now, for a twist, what if the server could send the function in bytecode form to the clients along with a wrapper specifying how to run the function (what interpreter, parameters, etc.)?

I know that this has about as much to do with web services as a cow does with the moon, but if you invert the web service model, I think you get close. There is a better way to explain this, but I'm stuck for now. I've started writing a test implementation in Python. Hopefully I'll have something to show this weekend.

May 16, 2006
I was trying to install CentOS under a Debian 3.1 Xen dom0 by following these instructions.

I ran into a bit of trouble at one of the earlier steps:
lime:~# rpmdb --initdb
rpmdb: unable to initialize mutex: Function not implemented
rpmdb: /var/lib/rpm/__db.001: unable to initialize environment lock: Function not implemented
error: db4 error(38) from dbenv->open: Function not implemented
rpm: To install rpm packages on Debian systems, use alien. See README.Debian.
error: cannot open Packages index using db3 - Function not implemented (38)
Searching Google revealed other people having the same problem but not finding a solution.
I finally got it to work by upgrading some packages and installing others. I'm not sure exactly which one fixed it.

Here is what I did:
Installed the following packages from Debian Unstable:
libc6_2.3.6-7_i386.deb       libselinux1_1.30-1_i386.deb    locales_2.3.6-7_all.deb
libc6-dev_2.3.6-7_i386.deb libsepol1_1.12-1_i386.deb rpm_4.4.1-8_i386.deb
libc6-i686_2.3.6-7_i386.deb libssl0.9.8_0.9.8b-1_i386.deb tzdata_2006c-2_all.deb
Installed the following packages from Debian Stable along with their automatic dependencies:
alien lsb-rpm lintian dh-make cvs gettext-doc build-essential binutils-multiarch

Old Stuff

August 2002 September 2002 October 2002 November 2002 December 2002 January 2003 February 2003 March 2003 May 2003 June 2003 July 2003 August 2003 September 2003 October 2003 November 2003 December 2003 February 2004 March 2004 April 2004 May 2004 June 2004 July 2004 August 2004 September 2004 October 2004 November 2004 December 2004 January 2005 February 2005 March 2005 April 2005 May 2005 June 2005 July 2005 August 2005 September 2005 October 2005 November 2005 December 2005 January 2006 February 2006 May 2006 June 2006 July 2006 August 2006 October 2006 November 2006 December 2006 January 2007 March 2007 April 2007