Tuesday, August 23, 2005

a brief manifesto (for myself)

The computing substrate seems to be improving at an ever increasing rate. But there are some things that I think need improving, some on the level of user education, others technological. Here are a few that spring to mind:

  • Provision of parallel architectures that are actually properly designed
    We have amazing bleeding edge facilities nowadays. Progress is rampant, and in all directions, like bacterial colonies on agar jelly. We have various standards groups like the W3C trailing behind doing their best to mop up the spillage, but how good is it? The ideas mill is in overdrive, now all we need is groups to set these ideas in their proper places.
    I'm not advocating design fascism, but I am advocating the more widespread rolling out of bulletproof architectures that the military wouldn't be afraid to use.
    The secret to success is to realise that there are only a very few tricks in the book, but that those tricks are extremely powerful. The ideas mills churn out specific permuations. Someone needs to run along behind spotting the underlying patterns, and making simple but highly generalised tools that the rest of us can use without wading through piles of barely distinguishable competing 'standards' and hacks.
    Any contenders that I'm not aware of yet?
  • Data awareness
    Our data shadows are burgeoning. Technologies need to be developed that protect our data, and maximise its effectiveness. I have separate user profiles on multiple social websites. When will I be able to store my profile locally, and allow websites to access it when I wish, and allow them to store their own copies only if I allow them to? Decent data management would make the computing substrate so much more useful. I wouldn't have old data all over the internet crying out to be maintained. I could participate in a far wider variety of stuff. Service providers could concentrate on what they were good at, not on recollecting all the various data that everyone is tired of giving for the umpteenth time anyway.
  • Better documentation
    All due respect to the wikis of this world. But the linking systems are beginning to show their age. We need real databases with real tagging systems, and proper diagram support. Why are we still relying on bitmaps on the web? Macromedia's solution is a poor stopgap. What happened to SVG? A few more diagrams would help reduce the mess the ideas machine spews out, and improve quality for us all.
In a word, integration. We need to allow everything to be a whole lot more cohesive and consistent, while maintaining the exciting churning hotchpotch of creativity that provides us with the ideas that need organising in the first place.

making use of the web

There seems to have been an explosion of free internet services, the ones I'm aware of are taking advantage of Flickr's apparently open database policy (a trend I'd like to see, and expect to see, repeated across many of the world's big, and upcoming, social websites), Google's various projects (maps, gmail*, blogger, adwords/sense etc. etc.), and popularity in interface/database concepts such as folksonomy/tagging (del.icio.us), wikis (wikipedia) and other technologies designed to enrich the cooperative aspect of the web.
Now seems like too good an opportunity to miss, maybe akin to the .com era of yesteryear, but this time I feel like it's going to be at least a little more sustainable (especially so, given that I'm well aware that I'm no early adopter here!). The internet is turning into an enormous, and multi-faceted, cooperative resource. Taking part in that seems like a very attractive option.
The choice, however, is bewildering.
Should be an interesting ride!
*feel free to contact me for a gmail invite :)

loose thoughts on memory

You could think of perception as pattern matching. Matching patterns of mental states against other patterns of mental states. For example, perceiving a banana could be viewed as matching the 'live' perception of the banana on your senses against the stored perceptions in your memory. Without your memories you wouldn't, from your own perspective, be perceiving a banana, you would be perceiving something unknown, and you would be formulating a new memory for which you could later fill in the name 'banana'.

(nb: parallelism in pattern matching 'schemes', and fuzziness of pattern matching. Explore methods of pattern matching.)
It is quite easy to divide perceptions into live perceptions and stored perceptions. Live perceptions are perceptions that are currently being perceived, that are immediate, arriving through the senses directly. Stored perceptions are those that have been perceived and remembered, and are accessible for remembering again.
(nb: continuum between 'live' and 'stored', also stored perceptions can be viewed as budding off new live perceptions every time they are accessed/perceived again, leading to an expanding, evolving tree of memory.)
If perception is viewed as pattern matching, as matching patterns of mental states against other patterns of mental states, then combining that with the division of perceptions outlined in the previous paragraph, 3 obvious combinations become apparent.
We can pattern match between immediate perceptions, a sort of 'on-the-go' perception, we can tell that one animal in view is of the same kind as another animal in view, or that there are two similar forks side by side on the table.
We can pattern match between immediate and stored perceptions, ie, the fork on the table looks like a remembered fork.
And finally, we can pattern match entirely with the realm of stored perceptions, we can imagine various items of cutlery entirely with our mind's eye.
We can imagine complicated dancing patterns of this kind of pattern matching going on in our every day perceptions, and analysing these dances can shed a lot of light on the way our consciousness could work, as well as providing a neat framework against which consciousness could arise out of basic sensory mechanisms.