Saturday, February 17, 2007

Assistive Technology For All!

I need a head mouse or similar NOW.

Having multiple monitors is great - except when I find myself typing into the window on the 'wrong' monitor (i.e. the one I'm not looking at) for the umpteenth time in a morning.

Having the title bar of windows changing colour when they get focus isn't good enough any more. On high res' monitors, the area of change is too small to be noticeable. A subtle change to the tone of the window background instead would be almost impossible to ignore.

Alternatively, just hiding the cursor when a window loses focus would be a big help. GEdit does this, but KWrite doesn't.

Friday, February 16, 2007

The Fifth 'F', Finally...

The four F's of evolution are one of those seductive simplifications that seem so wise and thus deceive so well. The choices to fight or flee, to feed or breed, are obviously important to both individual and group survival; but they are neither the whole story, nor a meaningful condensation of that story.

Evolution does not occur in isolation. Over the generations, that which is fled from will grow faster; that which is fought will grow stronger; food will defend itself; and potential mates will play harder to get. It's not species that evolve: it's entire ecosystems.

If evolution was the story only of how individuals (be they genes or giraffes) fled, fed, bred, and bled, then ecosystems would be more stable than they actually are. Instead, the introduction of a single new successful competitor can wreak havoc. Rats did for the dodo. The cane toad is a modern plague afflicting Australia. European diseases, such as smallpox, devastated the Americas. Every ecosystem is a balloon ready to pop whenever a new species which doesn't know the rules joins the game.

[Aside] Since Alvin discovered the mid-ocean ridge communities, there is probably no ecosystem on Earth that hasn't been visited by a camera crew. And their bacterial cowboys...

99% of all the species that have ever existed have played the evolutionary game, and earned themselves extinction. Those of us that are left are either astronomically lucky, or have evolved a special trick - a meta-F, if you will: something that gives us an extraordinary edge.

It's a very ancient edge. Creatures as "primitive" as bacteria (who, however you count it, are now and have always been the most numerous life forms on this planet) have it. If the "Global Brain" idea is anywhere near right (and their success is suggestive) bacteria were the best workers of this trick until we evolved language. They too communicate, cooperate, and coordinate, as well as competing. As a group, they appear to predict the behaviour of their environment. It's as if, as a group, they are 'thinking', in a manner that no one germ can be capable of. And it seems reasonable that those germs that seem to think best will actually survive better.

Feed, fight, fuck, flee, and fink (and don't forget feedback): the whole story? No, but a closer approximation to a suggestive condensation of it.

Wednesday, February 14, 2007

There's a zero 'f' too...

It dawned on me while avoiding a van avoiding a cyclist avoiding a parked car that there's another 'f' word vital to evolution. Possibly the core concept, of which evolution is but an example:

Feedback.

Given its pervasiveness, hence near invisibility, I'm labeling it the "zero f" word; making six in all (maybe).

Sunday, February 04, 2007

How many F's in Evolution?

Richard Dawkins famously promotes the "selfish gene" as the replicator on which all others rely. That individual genes are critical to survival is undoubtedly true. But a gene on its own is just a bunch of chemicals: it would quickly be eaten by a more organised entity. A genome on its own, no matter how large and complex, is just a larger bunch of chemicals, so would quickly be etc..

For everything, there is a context. A gene is just food, except in the context of its genome, which in turn is not a genome except in the context of its cell. And the cell...

... is a much more complex thing entirely. Let's instead use the broader concept of "organism".

And the organism is never alone. Most of them cannot replicate alone either. A gene in a genome in an organism that cannot mate is a gene without a future.

The apparent paradox is that our "selfish" genes must comply with our social needs in order to replicate.

The problem here is the word "selfish", defined in the dictionary as "a lack of consideration for others". A gene, being just a bunch of chemicals, has no consideration whatsoever, of it's "self" or of anything else. Likewise for the genome. The organism tho', even at the level of the single cell, is capable of discrimination; if only between its insides and the outside. Organisms can be selfish: genes are merely dumb.

But we are at their mercy, nonetheless.

And that, I think, is Richard Dawkin's point. Evolution is a game of chance, where a throw of the genes places limits on the capabilities of, and exposes new areas of opportunity for, the next generation. Those dumb genes that happen to work for this generation get another throw: those that don't, die.

"Feed, fight, fuck, and flee:
Do what it takes to make more 'we'!"

Distant tho' the relationship is, involving many subtle phase shifts etc. along the way, 'we' rely on those dumb genes.

Until one day, long long ago, those dumb genes happened upon the fifth 'F', changing the nature (pun intended) of the game ...

{to be continued...}

Thursday, February 01, 2007

Daisy Does Documentation

Documentation is difficult. Design documentation especially so. Traditional documentation tools, like Word and OOo, get in the way: using them is like wearing boxing gloves to build sandcastles. There has to be a better way.

To be useful, design documentation has to:
  • be written collaboratively
  • have rich internal linking (which doesn't break!)
  • have rich external linking (with breakage and change reporting)
  • be versioned
  • be annotatable, globally and by version
  • be machine readable (e.g. in XML)
Other factors, like access control, are also important; but I won't be considering them today.

Collaboration used to imply SharePoint or Documentum or Alfresco or whatever. All of which IMO add further layers of complexity to an already over-complicated set of tools. Nor do they satisfy the linking requirements. Versioning is there, metadata is there, but the fact they all deal in de facto proprietary binary file formats, like .doc and .xls, slams the lid on their coffins.

Enter stage right Wiki 2.0, three examples of which I've had a play with.

First found was DekiWiki, the commercial site for which is very slick, and offers a VMWare image as a free trial. Which installed beautifully, but completely failed to send me the email containing its randomly generated admin password.

Next found was XWiki. While not as glittery as DekiWiki, it's stupendously flexible, and has an impressive list of current users. Some videos of it in use are here. I installed the standalone bundle, which, once I'd dug through the web site comments to discover the user 'Admin' password 'admin' (note the case change!) worked as promised, albeit slowly on my mere 1GHz test machine.

I don't doubt that, with a little bit of effort, either DekiWiki or XWiki could be tuned into excellent documentation tools. But there is one that's a 90% solution SOTW.

Daisy. The Flash demos are here. The extensive documentation - written using Daisy - is here.

The only omission is a report on broken and changed external links. Given that the GUI can be extended with JavaScript and/or Java Applets, adding these features shouldn't be too big a problem.

More later. I'm gonna go play :-)