Recent blog entries for sthippo

Bento is reaching the critical Dog Food stage. I have started converting the entire bentodev.org site from plain HTML to Bento, with great satisfaction. Also great number of bugs... the Dog Food exercise is indeed an extremely effective way to uncover problems and thereby achieve usability, even if it was invented by Microsoft (was it?)

The main bug I uncovered has to do with what is turning out to be perhaps the trickiest part of the Bento implementation: name resolution. Bento has a very versatile and powerful name space model, designed to support numerous patterns and techniques (delegation, overriding, hierarchies, abstract definitions, etc.). The way a name is resolved is intimately connected to the context: what object is being instantiated at that moment. What makes it complicated is that objects are subclassable and composable, so any number of objects might be being instantiated at one time. I've been trying to minimize the amount of contextual information I have to pass around, but as I define increasingly complex objects I keep running into cases which require more information.

Unfortunately increasingly complex objects also lead to increasingly convoluted debugging traces.

Meanwhile, Sourceforge is moving glacially on the bento project hosting request, and no one on the OSI license discussion list seems to have anything to say about the bento license. Pesky humans.

The best treatment I've seen of the relationship of DNA and code is Darwin's Dangerous Idea by Daniel Dennett.

One particularly interesting observation is that the popular conception of DNA as a kind of blueprint is completely wrong. It's machine code. Like all machine code, it only makes sense in the context of the processor it was created for. In the case of living things, the processor consists of some very complicated biochemical machinery. If somewanted to write a disassembler for human DNA, they'd have to have knowledge of the genetic processor's system architecture and instruction set far beyond what science knows today.

There's a lot more Dennett has to say on the subject. A very good read.

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!