Archive for November, 2005

Dome’s blog

November 22, 2005

Cycells need to communicate to be functional. Thus they have to declare their existence. The easiest way to do it avoiding the creation of a central spot is by creating a blog where birth certificates will be published.

The publication of the birth certificate is one of the tasks of the CyCell Builder. Once a CyCell’s construction is finished a short description is made and posted, the CyCell’s Birth Certificate [CBC].

We have here the main reason to create a blog through which the Dome communicate with other components of the CyNet; either directly, (i) via the blog itself, or indirectly via (ii) the XML feed and (iii) the tags present in each post.

  • The post will be indexed by search engines and thus made reachable via keyword-using-requests; thus the tags describing the CyCell’s content must be visible.
  • The publication of a XML feed is quite convenient for people wishing to follow the activity a a particular Dome using their feeds reader; the inclusion of the full post, rather then an excerpt is preferable.
  • The inclusion in the post of tag-links as those used by del.icio.us, Flickr or Technorati, will facilitate the discoveryy of the CyCell by people using them and also facilitate contacts between CyCells as they can be used as starting point for the evaluation of affinities; tag-links could be the major primary contact source.

The Dome’s blog may also be used to publish the evolution of other components of the Dome; Rules, dictionaries etc. And it will participate at the building of the Dome’s identity on CyNet. For the moment I stick to one blog per Dome. The different avatars of a Dome’s owner may be managed as Categories in the same blog or lead to the creation of several blogs, one per avatar; in the later case, the posts of each avatars blog must be replicated to the Dome’s blog.
As I said previously, if one need to have several identities over the Nets he should use as many Domes as necessary.


Les CyCells ont besoin de communiquer pour être fonctionnels. Ainsi, ils ont besoin de declarer leur existence. La façon la plus simple de le faire en évitant la création d’un point central est en créant un blog où les certificats de naissance (birth certificates) seront publiés.

La publication du certificat de naissance est une des tâches du CyCell Builder. Dès que la construction d’un CyCell est finie, une description succinte est faite et publiée, le CyCell’s Birth Certificate [CBC].

Nous avons là la raison principale pour la crétion du blog à travers lequel le Dome communiquera avec les autres composants de CyNet; soit directement, (i) par le blog lui même, soit indirectement (ii) par le fil XML et (iii) les tags présents dans chaque post.

  • Le post sera indaxé par les moteurs de recherche et deviendra ainsi accessible par les recherches par mots-clés; ainsi les tags qui décrivent le CyCell doivent être visibles.
  • La publication d’un fil XML est appropriée pour ceux qui souhaitent suivre l’activité d’un Doma particulier en utilisant un lecteur ad hoc; l’inclusion du post en entier, plutôt que d’un extrait, est préférable.
  • L’insertion dans le post de tag-links comme ceux utilisés par del.icio.us, Flickr ou Technorati, facilitera la découverte du CyCell par les personnes qui les utilisent et facilitera également les contacts entre CyCells, puisqu’ils peuvent être utilisés comme pont de départ pour l’évaluation des affinités; les tag-links pourraient être la source majeure de contacts.

Le blog du Dome peut-être aussi utilisé pour publier l’évolution d’autres composants de Dome : Rules, dictionnaires etc. Et il participera à l’élaboration de l’identité du Dome sur CyNet. Pour l’instant je reste à un blog par Dome. Les divers avatars du roprietaire du Dome peuvent être gérés en tant que catégories dans le même blog ou mèner à la création de plusieurs blogs, un par avatar; dans ce dernier cas, les posts des blogs de chaque avatar doivent être dupliqués dans le blog du Dome
Comme je l’ai déjà dit, si quelqu’un doit avoir plusieurs identités sur les Nets il devrait utiliser autant de Domes que nécessaire.

Domes

November 6, 2005

Domes are the primary ecotopes where CyCells are built/born and reside.
Domes belong to physical entities: persons, groups, corporations and are named to represent them on CyNet.

The minimal setting for a Dome is:

  • at least one identity: constructed by a (nick)name and an encryption key
  • a CyCell Builder
  • a set of CyCells
  • a dictionary of CyTags
  • a dictionary of Rules
  • a weblog address
  • an e-mail address
  • a database with contacts/links
  • a crontab manager

This is what I’ll call from now on a mini-Dome. Several other sections may be added to improve it, and many will be presented here, but those are the minimal set necessary.

There is a close relation between the Dome’s identity/ies and the owner of the Dome. The simplest situation is when a single one is used. An this will be the avatar of the owner on CyNet; for example I could use OldCola, my nickname to identify my Dome. But this isn’t sufficient to provide a tight identification. It may be simply improved by the association of a public encryption’s key ; much more difficult to handle by identity thefts. So, each identity/avatar is a couple name/encryption key.
Now, why one would like to use several identities on CyNet? It’s much more easier to use your in-RL identity when you are seeking a new job; that doesn’t mean that whatever you are doing using your nickname will be hidden, as both avatars will be associated with the same Dome and the connexion will be public. If one need to have two different ID’s on CyNet the only solution is to host more then one Dome in his/hers computer. A Dome is strictly associated with it’s owner.

The CyCell Builder is a quite simple software, a text editor would do for those who don’t care to write some XML. But a more elaborated assistant based on a simple UI should be convenient for most of us.
Proposing a field where to insert the Seeds, a CyTags dictionary allowing the selection of existing CyTags and the insertion of new ones and a dictionary of Rules with the same functions as the one of the CyTags.
The most important function of the CyCell Builder is the generation of the CyCell’s ID number. Each Cycell harbored by a Dome have a unique ID number, which includes the Dome’s ID.

At least one CyCell is harbored by the Dome, the one defining the owner’s main avatar. This is the first one of the set of CyCells a Dome harbors. CyCells may be built in situ, or as we will discuss later born, and may be imported by cloning an existing CyCell [this is quite different from copying, as during the process the CyCell's ID number change]. A Dome’s CyCells collection is only limited by the space allowed to the Dome by it’s owner.

The CyTags dictionary contain all of the CyTags used by the Dome’s CyCells collection, and more. It may be posted at the Dome’s blog to facilitate exchanges between Domes. This is one of the services that may be centralized on CyNet, the publication and maintenance of a CyTags dictionary.

The Rules dictionary contain all of the Rules used by the Dome’s CyCells collection, and more. It may be posted at the Dome’s blog to facilitate exchanges between Domes. This is one of the services that may be centralized on CyNet, the publication and maintenance of a Rules dictionary.

The Dome is projected on Internet essentially using a blog. The Dome’s blog address is one of the components of the Dome’s identity.
The blog is used to publish the Dome’s dictionaries, and most important, the CyCells’ Birth Certificates (they will be discussed later). The blog will serve a feed facilitating the follow-up of it’s activity by anyone interested, CyCells, Domes or people.

The use of an e-mail address specific to the Dome rather then the owner was judged convenient as there may be a lot of traffic inter-CyCells. Web based e-mail services, even those scanning messages contents such as GMail, may be used without any concern as confidential information will be encrypted.

The Dome create and manage a database of contacts and links, summarizing those present in it’s CyCells, but may also manage it’s owners contacts as well. Apple’s Address software is a quite nice illustration of the software that could be used to manage this database. The data stored in a simple XML tagged text file may be easily used by the different components of the Dome, including the communication Rules.

A crontab and a crontab manager are what will make the Dome tic. There is an infinity of possible implementations for this component. For the moment I made all tests using Mac OS X crons and CronniX to manage them. Entries on the cron may be used to activate Rules.


Les Domes sont les écotopes primaires où les CyCells sont créés/naissent et résident.
Les Domes appartiennent à une entité physique : personne, groupe, entreprise et sont nommés pour la représenter sur CyNet.

Le contenu minimal d’un Dome est :

  • au moins une identité : construite par un (sur)nom et une clé de codage
  • un CyCell Builder
  • un ensemble de CyCells
  • un dictionnaire de CyTags
  • Un dictionnaire de Rules
  • L’adresse d’un weblog
  • une adresse e-mail
  • une base de données contenant les contacts/liens
  • un gestionnaire de crontab

C’est ce que j’appellerais dorénavant un mini-Dome. Plusieurs autres sections peuvent être ajoutés pour l’améliorer, a certaines seront présentées ici, mais nous avons là le strict minimum.

Il y a une relation étroite entre l’Identité du Dome et son propriétaire. La situation la plus simple est lors que une seule est utilisée. Elle sera l”avatar du propriétaire sur CyNet; par exemple je pourrais utiliser OldCola, mon surnom, pour identifier mon Dome. Mais ceci n’est pas suffisant pour offrir une bonne identification. Elle peut être amélioré,e simplement en y associant une clé de cryptage publique; beaucoup plus difficile à gérer par des usurpateurs d’identité. Donc, chaque identité/avatar est un couple nom/clé de cryptage.
Pourquoi quelqu’un utiliserait différentes identités sur CyNet ? Il est plus simple d’utiliser votre identité réelle pour chercher un emploi; ceci ne signifie pas que ce que vous faites sous votre surnom restera secret, étant donné que les deux avatars seront associés avec le même Dome et cette connexion sera publique. Si quelqu’un a besoin d’avoir deux identités distinctes sur CyNet la seule solution est de disposer de deux Domes sur son ordinateur. Un Dome est strictement associé avec son propriétaire.

Le CyCell Builder est un logiciel très simple, un éditeur de texte devrait suffire pour ceux qui ne sont pas gênés par un peu de XML. Mais un assistant plus élaboré basé sur une simple interface utilisateur sera la solution pour la plupart de nous.
Présentant un champ où insérer les Seeds, un dictionnaire de CyTags parmi lesquels choisir ou permettant l’insertion de nouveauxet un dictionnaire de Rules avec les mêmes fonctions que celui des CyTags.
La fonction la plus importante du CyCell Builder est la génération du numéro d’identité du CyCell. Chaque CyCell hébergé par un Dome dispose d’un numéro d’identité unique, qui inclue le numéro d’identité du Dome.

Au moins un CyCell est hébergé par un Dome, celui qui définit l’avatar principal du propriétaire. C’est le premier de la commection des CyCells que le Dome hébérge. Les CyCelles peuvent être créés sur place, ou comme on le discutera plus loi y être nés, ou peuvent être importés par clonage d’un CyCell existant [c'est différent d'une copie, puisque durant le processus le numéro d'identité du cyCell change]. La collection des CyCells d’un Dome n’est limitée que par l’espace que le propriétaire lui a alloué.

Le dictionnaire des CyTags contient tous les CyTags utilisés par les CyCells du Dome, et plus. Il peut être publié au blog du Dome pour faciliter les échanges entre Domes. C’est un des services qui pourraient être centralisés sur CyNet, la publication et la maintenance d’un dictionnaire de CyTags.

Le dictionnaire des Rules contient tous les Rules utilisés par les CyCells du Dome, et plus. Il peut être publié au blog du Dome pour faciliter les échanges entre Domes. C’est un des services qui pourraient être centralisés sur CyNet, la publication et la maintenance d’un dictionnaire de Rules.

Le Dome est projeté sur Internet essentiellement par l’usage d’un blog. L’adresse du blog du Dome est un des composants de l’identité du Dome.
Le blog est utilisé pour publié les dictionnaires du Dome et le plus important, les Certificats de Naissance des CyCells (qui seront discutés plus loin). Le blog fournira un fil facilitant le suivi de sont activité par ceux qui s’y intéressent, CyCells, Domes ou personnes.

L’utilisation d’une adresse e-mail specifique au Dome plut^to que celle du propriétaire a été jugée appropriée étant donné qu’il pourra y avoir beaucoup d’échanges inter-CyCells. Un service e-mail basé sur le Web, même de ceux qui scannent les messages, comme GMail, peuvent être utilisés sans préoccupation à propos de la confidentialité, puisque les massages seront codés.

Le Dome crée et gère une base de donnés de contacts et liens, correspondant à la somme de ceux présents dans les CyCells, mais peut aussi gèrer les contacts du propriétaire. Le logiciel Carnet d’Adresse d’Apple est une bonne illustration du logiciel qui pourrait être utilisé pour gérer cette base de données. Les données stockées dans un simple fichier texte avec des balises XML pourra être facilement utilisé par les composants du Dome, y compris les Rules de communication.

Une crontab et un gestionnaire de crontab sont ce qui va permettre au coeur du Dome de battre. Il y a y un nombre d’implémentations possibles infini (ou presque). Pour l’instant j’ai fait tous les teste en utilisant les crons de Max OS X et CronniX pour les gérer. Les entrées de la cron peuvent être utilisées pour activer des Rules.

Cycells

November 4, 2005

CyCells are the basic elements of CyNet ; files representing a subject, an idea, a person etc.

A CyCell is composed of three compartments:

  • Seed
  • Metadata
  • Rules

And each one of them is/can be further compartmented to fit particular needs.

The Seed is composed of documents; one or more that can be physically present within the CyCell, that is copies of them included, or represented by a token: URL, request to be send by e-mail, description of the place one can find them etc.
My first approach was that there “should be” at least one document used as a seed; changed that to “could be” and the seedless CyCell was born. Seedless isn’t senseless as the seed isn’t the main part of a CyCell.

The Metadata compartment is subdivided in three parts:

  • Seed’s description
  • CyTags
  • Links: Relations/Contacts

Usualy the seed/file description metadata are usually within files, such as EXIFF data, but presenting them independently make their use much more flexible when it comes to define new fields.

The most interesting part of a CyCell are CyTags. In v 0.4 I describe them as:

Tags are expressions, simple words, list of synonyms, logical expressions, mathematical formulas etc. Even other CyCells may be used as tags. They are used to describe the idea represented by the CyCell and may be derived from the seed or be added during the CyCell’s built. They are used to evaluate affinities between two CyCells…

The main form of CyTags is the one del.icio.us is introducing as bundles, but a little bit more complex and structured. For testing I used a relatively simple list style construct; easy to XML tag. Using the example I presented for the blog bundle, there is what the equivalent CyTag looks like:

{CyTag:”blog“, alt:{“en”, {“blog”, “blogs”, “weblog”, “weblogs”}, {“fr”, {“weblogue”, “weblogues”}}}}
It can be easily transformed, for example to create a request for Technorati where all alternative terms may be used:

The last part of Metadata are Links: Relations/Contacts, and there are at least two categories: CyCells/Domes and Persons.

The driving force of CyCells is the maintenance and growth of this section of them. Links may direct to any kind of documents, other CyCells, Domes, or persons (via their avatars or in-RL).

The third compartment of a CyCell is the most original one, Rules. A set of instruction defining tasks for the CyCell, such as “Search for related CyCells”, “Initiate a Sex session” etc. Rules are expressed in CyLingo and as I’ll describe more extensively later, they correspond to scripts that may be written in any programming language available. And Rules may be expressed using any natural language, a set of alternatives describing each of them, the same way as for CyTags: {rule:”#42″, {“Search for related CyCells”, “Chercher des CyCells corrélés”}}; whatever the language used the Rule will execute the script #42.

Some basic Rules will be available, but any action that one would like to perform using CyCells may be expressed as a new Rule and distributed through the CyNet’s chanels.


Les CyCells1 sont les éléments de base de CyNet; des fichiers représentant un sujet, une idée une personne etc.

Un CyCell est composé de trois compartiments:

  • Seed
  • Metadata
  • Rules

Et chacun d’eux peut-être à son tour compartimenté suivant les besoins.

Le Seed est composé de documents; un ou plusieurs peuvent être physiquement présents à l’intérieur du CyCell, une copie jointe au CyCell, ou être représenté par : un URL, une requête à envoyer par e-mail, la description de leur emplacement etc.
Ma première approche prévoyait la nécessité de disposer d’un document en tant que seed; j’ai changé ça en possibilité at les CyCells sans noyau ont été nés; sans noyau ne signifie pas sans signification puisque le noyau n’est pas la partie essentielle d’un CyCell.

Le compartiment des Metadata est divisé en trois parties :

  • la description de Seed
  • CyTags
  • Liens: Relations/Contacts

Habituellement, les metadata sont contenus dans les fichiers concernés, tels que les EXIFF, mais les présenter de façon indépendante rend leur utilisation plus flexible quand il s’agit de définir des nouveaux champs.

La partie la plus intéressante d’un CyCell sont les CyTags. Dans la version 0.4 je les décrivais ainsi :

les Tags sont des expression, simples mots, listes de synonymes, expressions logiques, formules mathématiques etc. Même d’autre CyCells peuvent être utilsiés comme des tags. Ils sont utilisés pour décrire l’idée que le CyCell représente et peuvent dériver des seeds ou être ajoutés lors de la construction du CyCell. Ils sont utiliser pour évaluer l’affinité entre deux CyCells…

La forme principale des CyTags est celle qu’introduit del.icio.us en tant que bundles, mais un peu plus complexe et structurée. Pour faire des essais, j’ai utilisé une construction en liste, facilement balisable en XML. En reprenant l’exemple que j’ai donné pour le bundle blog, voici à quoi ressemble l’equivalent en CyTag :

{CyTag:”blog“, alt:{“en”, {“blog”, “blogs”, “weblog”, “weblogs”}, {“fr”, {“weblogue”, “weblogues”}}}}
Il peut être facilement transformé, par exemple pour créer une requête adressée à Technorati, où tous les termes sont utilisés :

La dernière partie des Metadata sot les Liens : Relations/Contacts, et il y aura au moins deux catégories : CyCells /Domes et Personnes.

La force motrice des CyCells est la maintenance et expansion de cette section. Les Liens peuvent diriger vers toute sorte de documents, d’autres CyCells, Domes ou des personnes (à travers leurs avatars ou in-RL).

Le troisième compartiment des CyCells est le plus original, les Règles. Un ensemble d’instructions qui définissent des tâches pour le CyCell, telles que “Chercher des CyCells Corrélés”, “Démarrer une Session de Sex” etc. Les Règles sont exprimés en CyLingo et comme je décrirais de façon plus détaillée plus loin, elles correspondent à des scripts qui peuvent être écrites en n’importe quel langage de programmation disponible. Et les Règles peuvent être exprimées en utilisant n’importe quel langue, un ensemble d’expression alternatives les decrivant, de la même manière que pour les CyTags : {rule:”#42″, {“Search for related CyCells”, “Chercher des CyCells corrélés”}}; quel que soit la langue utilisée, la Règle executera le script #42.

Quelques Règles de base seront disponibles, mais n’importe quelle action qu’on souhaiterait accomplir en utilisant des CyCell

s peut être exprimée sous forme d’une nouvelles Règle et distribuée à travers les canaux de CyNet.

1 • Certains termes ne seront pas traduits; en font partie les néologismes liés à CyNet ainsi que ce qui est aisément compréhensible, comme e-mail, data etc. Si quelque chose vous travaille quand même, je suis à votre disposition pour donner une traduction.