Avancement

Voici de nouvelles icônes pour les modes, encore à compléter :

mchr ment mobjkey

La librairie php de nebule intègre maintenant les modifications pour la version 1.2 . L’écriture des liens se fait aussi sur l’entité signataire avec la prise en compte de la spécificité du lien de type c lors de l’écriture.

La traduction est intégralement passée sous forme de tableau. Chaque langue est implémentée dans un objet dédié avec gestion des mises à jours. Chaque langue est reconnue dans sylabe comme un module externe optionnel. Seuls les modules de langues signés par bachue ou par l’entité courante sont pris en compte.

shot-2014-05-18_23-04-23

Avancement

Quelques petits ajustements cosmétiques avec notamment une icône pour la métrologie :

imetrolog

D’autres icônes sont encore en préparation.

La grosse partie qui a pris une bonne journée, c’est la transformation du système de traduction vers un nouveau à base de tableaux. Chaque langue sera stockée dans un objet avec une référence à un titre et une image. Contrairement à ce qui était prévu, il n’y aura pas de vérification de syntaxe à la volée des fichiers de langues, ils seront pris en compte que si signés par bachue ou l’entité locale. C’est en quelque sorte une forme d’extensions optionnelles à sylabe sous contrôle de bachue.

Avancement

Un gros morceau a été fait avec la transformation progressive de la traduction vers un tableau par langue. Chaque langue se voit attribué un drapeau et un commentaire dans la langue en question.

Le tableau pour le français est presque terminé.

Ces tableaux drapeaux seront exportés dans des objets sauf pour la langue par défaut : le français. Tout pourra être mis à jour via les liens de type u. De nouvelles langues pourront ainsi facilement être ajoutées.

Il faut quand même prévoir un mécanisme de vérification de l’objet chargé pour qu’il ne puisse contenir que des modifications de tableaux de langue…

Avancement

Quelques ajouts plutôt cosmétiques dans l’interface comme un fond plus foncé ou clair sous l’objet dans l’affichage.

L’aide progresse et peut maintenant afficher plus facilement des balises et images diverses. On peut notamment voir un cas extrême dans le mode des liens :

shot-2014-05-15_16-40-59

Le code de sylabe vérifie maintenant l’empreinte du bootstrap. En cas de problème ce n’est pas bloquant, mais on est avertit qu’il y a une mise à jour à faire faire par l’administrateur du serveur. La méthode n’est pas infaillible mais elle augment la difficulté pour corrompre une instance sylabe. Le petit panneau du bilan de santé dans le dock intègre l’indicateur correspondant :

shot-2014-05-15_16-45-26

Un système de gestion du thème est mis en place. Il permet de remplacer le thème CSS par défaut d’une page. Ce mécanisme est découpé en quatre parties, toutes avec possibilité de mise à jour :

  1. Une petite feuille de style commune et minimale. Elle est surtout dédiée à la gestion du fond d’écran.
  2. Une feuille de style dédiée à l’affichage de sylabe lorsque une entité est déverrouillée.
  3. Une feuille de style dédiée à l’affichage de sylabe lorsque aucune entité n’est déverrouillée.
  4. Une image utilisée avec le thème par défaut.

La possibilité de modifier le thème est contrôlé par les variables $sylabe_permitfollowcss et $sylabe_permitphpcss. La deuxième autorise la présence de balises qui peuvent servir à lancer du code pour adapter le thème en temps réel.

Voici l’image par défaut (licence CC BY-NC-SA) :

bg

Enfin, les liens générés sont maintenant en version 1.2, ce qui n’est que déclaratif actuellement.

Avancement

La génération d’entité est complètement fonctionnelle. On peut générer une entité esclave avec la génération automatique d’un mot de passe et la protection de celui-ci au profit unique de l’entité courante.

Mais la modification la plus visible concerne l’habillage de l’interface ce sylabe. L’ensemble à été entièrement revu !
Les barres en haut et en bas ont été remplacées par un dock unique. Celui-ci est découpé principalement en deux parties. La partie haute permet de manipuler l’entité en cours, de changer de mode et affiche un état de l’instance sylabe. La partie basse permet de manipuler l’objet et de changer de mode dans l’affichage de l’objet.

Voici à quoi ressemble une page lorsque aucune entité n’est déverrouillée :

shot-2014-05-10_00-37-49

Et voici à quoi cela ressemble lorsqu’une entité est déverrouillée :

shot-2014-05-10_00-37-17

L’image de fond n’est là que pour montrer que c’est de la vrai transparence. Cette image et même l’ensemble de l’habillage pourront être modifiés par la suite avec des objets dédiés.

L’affichage de l’état de l’instance est fait sur fond jaune ici parce que l’URL de connexion n’est pas sécurisée, pas TLS. Normalement, elle est transparente comme le reste de la barre.

Certaines icônes et certaines couleurs sont encore à modifier. Ce sera fait plus tard…

Avancement

Les carrés de couleurs se généralisent pour représenter les objets et entités.

La gestion des images couplée au mode de navigation permet de voir une image avec ses divers dérivés dont les miniatures. Ces images peuvent aussi être reconnues comme dérivé d’une entité, est donc que c’est en quelque sorte une photo d’identité.

Voici par exemple le mode de navigation :

shot-2014-05-04_08-26-13

Voici une entité vue dans le mode visualisation :

shot-2014-05-04_08-22-12

Tout ça n’est possible facilement que si une image à des miniatures. Ces miniatures sont soit calculées à la volée, comme nouvel objet, soit pré-calculées. Le pré-calcul est utilisé pour l’instant, il se fait lors du téléchargement d’une nouvelle image. On en profite pour récupérer les EXIF de l’image.
Voici ce à quoi ressemble un téléchargement :

shot-2014-05-04_08-25-58

Avancement

L’affichage de la page un peu changer. La barre du haut affiche maintenant la couleur des entités et des objets. Elle est un peu réorganisée.
Mais c’est visuellement la barre de gauche qui a subit le plus gros changement. Au lieu d’afficher des noms d’entités ou des contenus de nÅ“uds, elle affiche à la place leurs couleurs propres.
Cette couleur est générée à partir des 6 premiers chiffres en hexadécimal d’un identifiant. Elle n’est pas infalsifiable, ni unique mais elle est aléatoire. Mais elle va surtout permettre dans le flot des données affichées de savoir d’un coup d’œil qui a fait quoi. C’est plus rapide que de lire le nom d’une entité qui peut changer, ou une photo miniature qui peut changer aussi. En passant la souris sur un des carrés de couleur, on a une petite bulle qui indique à quelle entité ou quel objet on a à faire. L’interface qui jusque là se permettait peu de couleur devient par endroits une sorte de patchwork coloré aléatoire.
Pour les entités, il sera possible de choisir aussi une photo. Cette photo miniature s’affichera à côté de sa couleur et non en remplacement. Par défaut, c’est l’icône du lien de l’objet qui apparaît à la place.
Voici à quoi ressemble le mode ent qui affiche les entités (avec des tests) :

shot-2014-04-28_09-54-43

Le mode d’affichage permet de voir les fichiers audio. Il y a un petit problème qui empêche la bonne reconnaissance du type mime pour les fichiers multimédia. On peut donc maintenant dans l’affichage modifier le type mime d’un objet.
Voici à quoi ressemble la lecture d’une musique :

shot-2014-04-28_09-55-04

Et on peut aussi renommer une entité.
Évidemment, on ne renomme pas arbitrairement une entité tierce, on dit juste qu’on l’appelle soi-même autrement. Libre aux autres entités d’en tenir compte ou pas. Pour ce dernier point, la pondération jouera un grand rôle, mais elle n’est pas encore en place.
Ce sont les petites icône à côté du nom :

shot-2014-04-28_09-46-21

Anticipation

Maintenant que le mode navigation est fonctionnel, on va pouvoir reprendre d’autres chantiers.

La partie traduction du code est un gros pavé, logique. Mais sa forme est surtout assez infâme. Il faut le refaire en utilisant des tableaux qui pourront éventuellement un jour être exportés dans des objets dédiés.

La barre du haut est à revoir dans sa forme mais aussi dans son usage. Le haut reste l’identification de l’entité. Le bas doit concerner l’objet courant. La partie intermédiaire peut peut-être servir à héberger des indicateurs de bon fonctionnement, la crypto par exemple…

Il serait souhaitable de pouvoir intégrer la gestion des sous-entités directement dans sylabe même si nebule reste fondamentalement mono-entité. Ce peut être simplement en gérant une entité maître en parallèle de l’entité courante. L’entité maître peut disposer du mot de passe de chaque sous-entité et basculer vers une de celles-ci. La barre en haut devra refléter clairement quelle entité est en cours d’utilisation.
Le mot de passe est naturellement un objet chiffré et lié à l’entité contrôlée. Ainsi, ce mot de passe peut être partagé par plusieurs entités maîtres pour former une entité commune, et donc une forme de groupe actif. A définir…

Avancement

Le mode de navigation est maintenant assez stable pour être exploitable. Le résultat ressemble à ça :

shot-2014-04-22_20-44-57
CF : Blog nebule – Ajout d’émotions sur des objets – suite 4

Quelques essais grandeur nature avec des synchronisations sur l’Internet seront réalisés sur l’objet de test.

La machine hôte de l’entité bachue vient de recevoir la clé privée. Elle est maintenant fonctionnelle pour l’import et la signature. Le script d’export est en cours de finalisation.
La machine relai n’est pas encore tout à fait prête. C’est donc l’entité Stéphane qui diffuse aujourd’hui, en tant que simple relai, les liens signés par l’entité bachue.

Voici donc les objets des dernières versions des différents codes :
– bootstrap : 3abf80a35591bbdbe46fbab488db4012accb5dbf4d6c8fda6355f05327ded841
– sylabe : 9552e15d37b452366d9b2f99ebbdfbf57154807befc08ee2e981741a026ee5fe
– librairie nebule : 948f821c48111a32a891ae5716fc25d6da100415ec015507a33cbbae2b979c7c

Avancement

Les émotions ont été mis en place proprement pour les objets. Cela concerne le mode d’affichage des objets et le mode de navigation.

Le mode d’affichage :

shot-2014-04-16_22-06-10

Le mode de navigation :

shot-2014-04-16_22-06-58

On notera que les émotions sont aussi présentes dans la barre en haut de la page.

Pour le mode d’affichage des objets, pas de révolution, ce sont juste des icônes plus présentes et plus pratiques. Pas de changement pour les avis.

Pour le mode de navigation, chaque commentaire de l’objet, que ce soit un texte ou autre chose, peut recevoir une ou plusieurs émotions. Ces émotions sont marquées dans le contexte de l’objet, c’est à dire qu’elles lui sont indirectement liées. Une émotion avec un contexte apparaît dans le mode d’affichage du commentaire, mais pas dans le mode d’affichage de l’objet en cours de consultation.

On peut tout à fait dans le mode navigation mettre une émotion sur une autre émotion. Par exemple, mettre que l’on aime que d’autres aiment l’objet. Cependant, il ne faut pas oublier que ce n’est pas le lien que l’on aime, mais le marquage de l’émotion. Ainsi, si on marque que l’on aime une émotion sur un objet, son marquage va apparaître automatiquement sous toutes les entités qui ont exprimé l’émotion. On exprime une émotion sur une émotion en générale, pas sur l’émotion d’une entité en particulier.
Ce fonctionnement apparaît sur la capture d’écran du mode de navigation. J’avais émis hier un avis beau. Puis j’ai marqué aujourd’hui que j’approuve l’avis, ce qui est une émotion. Enfin, j’ai marqué que je trouve étonnant l’émotion j’approuve sur mon avis d’hier.

Les nouvelles icônes sont trop visibles par défaut, trop denses. Il faudra les refaire…

Avancement

Les émotions et avis ont été redéfinis comme des liens de type ‘f‘.

Dans le mode nav, un lien apparaît sous chaque commentaire d’une autre entité pour pouvoir le répéter, c’est à dire faire le même lien.

Prochaine étape, ajouter les icônes des émotions à côté de l’icône pour répéter le commentaire. C’est un lien vers une émotion mais avec un contexte, c’est à dire un objet méta, correspondant à l’objet auquel est attaché le commentaire.

Cela donne pour ce soir :

shot-2014-04-15_23-28-00

Avancement

Dans la librairie nebule, une forme de mise en cache des résultats a été mise en place. Un certain nombre de fonctions peuvent être appelées plusieurs fois avec les mêmes paramètres. Il est plus rapide de mémoriser certains résultats par défaut même si ils ne sont plus utilisés que de relire et revérifier des liens pour retrouver les résultats.

Les gains dans les modes nav et lnk sont très sensibles, au minimum 2 à 3 fois moins de temps pour afficher une page.

La mise en cache est contrôlée par la variable $nebule_usecache.

Avancement

La librairie nebule à été un peu modifiée pour pouvoir remonter sur demande la liste des liens d’un objet y compris avec les liens invalides. C’est implémenté dans les fonctions _l_ls1, _l_lsx et _l_fnd.

C’est pour de l’affichage uniquement, ils ne doivent pas être pris en compte. C’est notamment le cas dans les fonctions _l_lsx et _l_fnd qui ne tiennent pas compte des liens ‘x‘ lors du nettoyage.
Le comportement, en dehors du mode navigation et liens, est de ne pas tenir compte de ces liens invalides.

Une variable nouvelle variable permet de ne pas remonter ces liens invalides quoi qu’il arrive, la variable $nebule_listinvalidlinks. Par défaut elle est à false, c’est à dire que les liens invalides ne sont pas remontés et donc pas affichés.

La présence de ces liens invalides suppose soit une corruption des données sur le support de stockage ou un dysfonctionnement de l’accès au support, soit une modification malveillante. Quoi qu’il arrive, un lien invalide transmit ou téléchargé est automatiquement écarté.

Voici ce que donne un lien volontairement corrompu dans le mode d’affichage des liens :

shot-2014-04-12_15-34-58

La même chose dans le mode de navigation :

shot-2014-04-12_15-34-38

Et enfin, dans le mode d’affichage de l’objet, le lien est ignoré :

shot-2014-04-12_15-35-11

Avancement

Le mode d’affichage ‘navigation’ a fait un grand pas. On peut y voir maintenant une transcription humanisée de certains liens. Ce mode présente une sorte de fil d’actualité de l’objet. On y trouvera les actions sur l’objet, les émotions, les avis et les commentaires attachés. Les commentaires sont hiérarchisés. Il faut maintenant ajouter de quoi créer facilement de nouveaux commentaires.

Cet ajout de fil d’actualité d’un objet montre que l’on peut mettre en place un système similaire au forum. Et du coup, la gestion des émotions et avis sur un objet ne sont pas optimums avec un lien ‘l‘. Il faut peut-être plutôt utiliser un lien ‘f‘. Ça permettra de profiter de la forme de contexte généré par l’objet méta. Ainsi, un avis sur un commentaire n’est plus seulement lié au texte, mais il est spécifiquement lié au texte dans le contexte de l’objet pour lequel il sert de commentaire. En clair, cela va permettre de mettre que l’on aime un commentaire sur un objet et permettre de dire que l’on aime pas le même commentaire sur un autre objet.

Pour l’instant, les émotions sont basées sur la roue de Plutchik.

Trois nouvelles icônes ont été refaites. Elles servent à afficher visuellement les états OK, attention, et erreur. La symbologie de ces icônes impose des formes générales et des couleurs en rapport avec leurs fonctions. Elle sont immédiatement identifiables dans l’interface.

okwarnerr

Voici ce que cela donne ce soir :

shot-2014-04-12_00-32-16

Anticipation

Dans les développements attendus, on a :

  1. La pérennisation des émotions et des avis sur les objets. Il faudra notamment choisir les icônes afférentes.
  2. La remise à plat du mode d’affichage de navigation. Cela doit ressembler à un réseau sociale en présentant les ‘actualités’ d’un objet au regard de ses liens. La vue cachera par défaut les liens dont la signification n’est pas connue ou qui n’ont qu’un intérêt technique.
  3. L’ajout dans la mode d’affichage des liens de la possibilité de découper l’affichage par ‘pages’ avec un nombre restreint de liens pour visualiser les nombreux liens de certains objets.
  4. La possibilité de visualiser un seul lien. Le mode d’affichage de navigation pourra permettre d’afficher les liens inconsistants tout en renvoyant la visualisation complète du lien dans le mode d’affichage des liens.
  5. La mise en place d’une liste des entités qui peuvent se déverrouiller sur l’instance sylabe. Cette liste est un groupe d’entités au sens nebule avec des liens vers ces entités. Ainsi, même si la clé privée est disponible, une entité ne pourra pas s’y connecter. En l’absence de liste, ce sera public.

Avancement

Suite à un problème sur mon disque dur, j’avais perdu quelques jours de travail… J’ai repris une sauvegarde et refais ce qui  manquait…

Ce soir, il y a un début d’ajout de la nouvelle gestion des marquages d’objets. Il s’agit des marquages de type j’aime, j’aime pas et plus encore. Ça s’appelle des sentiments.
Chaque sentiment est cumulable aux autres sans restriction. On voit apparaître les sentiments des autres entités sous la forme de carrés avec leurs couleurs propres, dans l’ordre chronologique d’ajout. Le nom de l’entité apparaît sous forme d’une bulle lorsque l’on passe la souris sur un carré. Si on a déverrouillé son entité, on voit à la place de son carré de couleur un lien pour supprimer le sentiment.

C’est la première version. Cela donne ça pour l’instant, sur un objet chiffré :

shot-2014-04-01_23-51-49