A key requirement for emergence is that there are some basic/simple rules/operations. Put these rules together in various ones and new properties or behaviours arise, e.g.:

stay close to your neighbour; don't knock into anyone => flocking

Is there something that we can learn from this simplicity? In other words should we always be striving to create simple rules and operations for our software/processes/etc?

Other examples:

SQL databases, REST (each have four primitives) Blogging (post, link, comment, syndicate?)

Higher level "primitives" can be built on lower level primitives, one can see this as simply stabilising or reinforcing an emergent quality of a lower layer, e.g. Blogging is built on REST-ful interactions, and often database primitives.

In some cases its not obvious what the primitives are, so we "let a thousand flowers bloom" than come back later to see which ones have survived, and maybe do some pruning. That's why post-facto standardisation is often better, e.g XML. (Primitives: start/end tag, annotate (attributes), validate).

RDF has some primitives: triples, containment, etc.

If we accept this premise (and I'm aware that I've not presented a convincing argument) then we could argue that the best way to guide application development is to find or make the primitives for a particular application area.

E.g. where are the primitives for annotating, splicing, overlaying, etc music or movies. This would allow fan-subbing, commentary, analysis, mixing, contrasting, etc.

Tools like Chandler(?) have primitives: drag-and-drop, context, etc

The best APIs are those with the simplest interfaces.

Add new attachment

In order to upload a new attachment to this page, please use the following box to find the file, then click on “Upload”.
« This page (revision-1) was last changed on 26-Aug-2003 08:47 by unknown [RSS]
G’day (anonymous guest) My Prefs


Referenced by
Main

JSPWiki v2.6.0 [RSS]