Aller au contenu principal

SemApps News N°2

Cela fait plus d'un an que nous n'avons pas écrit de newsletter. Ce n'est pas parce qu'il ne se passait rien, mais au contraire : on était à fond sur de nombreux sujets en parallèle et on a eu du mal à dégager du temps !

Mieux vaut tard que jamais, vous trouverez ci-dessous, un récapitulatif des avancées et des dernières actualités de SemApps.

Si vous craignez à l'avenir d'être sevrés d'informations fraiches et trépidantes, le mieux est de nous rejoindre sur nos canaux de discussions, lesquels vous permettront de suivre au fil de l'eau l'évolution du projet... et d'interagir avec la communauté :

N'hésitez par ailleurs pas (si ce n'est déja fait) à vous créer un profil sur l'instance SemApps de l'Assemblée Virtuelle : Elle n'est ni très belle, ni très fonctionnelle, mais permet tout de même de tester un type d'utilisation possible de SemApps.

Bonne lecture !

Avancées techniques#

Gestion des WebACL#

Depuis la version 0.2.0 sortie avant l'été, SemApps intègre le standard WebACL au niveau du triple store (Jena Fuseki), du backend et du frontend. Cela permet de définir finement les droits qu'on accorde sur une ressource, notamment via l'interface que nous avons développée :

Les WebACL sont optionnels. Pour les activer au niveau du middleware, vous pouvez lire cette documentation. Ce chantier a été financé par Les Chemins de la Transition, Data Players et l'Assemblée Virtuelle.

Visualisation#

Dans le monde du web sémantique, il est aisé de dissocier les données, des serveurs applicatifs et des interfaces. Un même serveur SemApps peut ainsi manipuler des données en provenance d'une multitude de bases de données et les afficher sur une diversité d'interfaces (ou frontends).

Un bon nombre de composants frontend sont maintenant disponibles pour visualiser les données sémantiques: sous forme de calendrier, de carte géographique, de mozaique, en cercles. Tous ces composants sont développés en open-source et facilement réutilisables.

Outre ces composants disponibles pour React / React-Admin, des interfaces ont aussi été réalisées en Angular et en D3.js.

Focus sur les interfaces de visualisation en graphes#

[Copie écran de la carto du wiki Résilience]

Cette année a été aussi l'occasion de tenter une convergence entre les 3 projets de visualisation graphe au sein de l'AV : Flodio, IPGS et Grezi. Depuis fin 2020, nous avons organisé 8 réunions pour voir là où nous pouvions converger. Cela a débouché sur la création de visualisation communes des mêmes données entre Flodio et IPGS et sur le développement d'une librairie commune pour accéder aux données Semapps, en se basant sur les standards. Plus d'infos sur ce projet de convergence ici.

Vous trouverez la liste des projets de Flodio ici, ainsi que des chantiers en cours concernent la création d'un Filtre temporel, et un projet de cartographie sémantique des flux financiers (voir la documentation).

Prochains chantiers devant être réalisés d'ici à la fin de l'année#

Plusieurs gros chantiers sont en cours et devraient aboutir d'ici à la fin de l'année :

Interopérabilité#

Permettre à différentes instances SemApps de communiquer entre elles de manière sécurisée grâce à l'implémentation des spécifications SOLID. (Voir le chantier dédié, principalement financé par Data Players.)

PODs Solid#

Configurer SemApps sous forme de fournisseur de PODs Solid, avec l'idée de pouvoir proposer une architecture telle que celle présentée dans ces slides (chantier réalisé bénévolement).

Connecteurs#

Grâce à un financement de Colibris qui souhaite ouvrir toutes ses données en sémantique (et en ActivityPub), nous allons proposer des connecteurs avec des logiciels aussi variés que Drupal, YesWiki, Prestashop, Mobilizon, Mattermost, Gogocarto, Discourse ...

Instances déployées#

[Image de l'instance des chemins de la transition]

Projets en cours de développement#

Sébastien: On est sûr de vouloir mettre des liens vers des sites non-terminés ? Quel intérêt pour l'abonné ? Le client est-il OK? Perso je ferai juste une liste rapide, sans préciser plus.

Besoin de cartographier les instances SemApps#

Nous sommes passé en un an d'une seule instance à une dizaine d'instances Semapps... Ce n'est pas encore énorme, c'est le début, mais cela nous a montré qu'il était déjà difficile pour chaque contributeur de l'AV d'avoir une vue globale de toutes les instances et de savoir retrouver les URL des SemApps de chaque projet pour participer. Une carto s'imposait donc.

La réponse à ce besoin a donné un projet de cartographie des instances SemApps surnomé la carto des cartos. Pour la réaliser, une nouvelle instance SemApps spécifique a été créée. Nous avons nommé cette instance Meta, et elle portera les données de multiples futurs projets :

  • Une visualisation en graphe des instances SemApps
  • Une frise chronologique de l'AV
  • Un lexique sémantique
  • Les données financières de l'AV
  • Une carto des outils carto

Voir la documentation, l'instance SemApps META et la carto des cartos

Projets en perpective#

Dans les mois qui viennent, l'écosystème qui se développe devrait lancer plus d'une dizaine de beaux projets impliquant SemApps, avec des acteurs publics, privés et citoyens, dont un, voire plusieurs à l'échelle européenne.

Certains sont (très) incertains comme le projet DUST pour lequel nous avons demandé un joli financement à la commission européenne.

D'autres comme le projet SITI sont très bien embarqués et devraient être financés sous peu.

Les Systèmes d'information territoriaux constituent un axe fort pour le développement de cas d'usage autour de SemApps : Plusieurs projets sont en cours, en Normandie, dans le Béarn cher à notre cher Pierre, dans la Drôme et ailleurs ...

Les systèmes d'informations thématiques constituent l'autre axe de développement de SemApps. Plusieurs projets autour de l'alimentation, des Tiers-Lieux, de l'énergie, de la mobilité devraient émerger également dans les mois à venir.

Actualités de la communauté#

Hommage à Gabriel Henry#

Commençons par une triste nouvelle. Gabriel Henry, qui s'était impliqué au début de l'aventure SemApps est décédé au mois de septembre. Il s'est noyé, comme 8 autres personnes ce jour là, alors qu'il se baignait en Méditerranée. Nous le remercions profondément pour l'implication dont il a fait preuve et lui souhaitons de reposer en paix.

Les nouveaux venus#

A ses débuts, la communauté de SemApps était constituée d'un noyau de 6 personnes : Sébastien, Simon, Niko, Pierre, Gabriel, Guillaume. C'était il y a longtemps ... Depuis, grâce au formidable travail de Yannick notamment, elle s'est étoffée et compte à l'heure actuelle plus d'une dizaine de personnes, ce qui est une très bonne nouvelle ! Vous trouverez ici la liste des personnes embarquées ou sur le point de l'être ...

Parmi elles, citons notamment :

  • Yannick : L'un des personnages historiques de l'Assemblée Virtuelle ! Passionné de graphes, développeur de flod.io.
  • Thomas est formateur développeur sur Angular et Vue. Il est entré dans l'aventure par la dimension territoriale béarnaise
  • Bastien nouveau développeur SemApps chez Data Players
  • Vincent est développeur indépendant depuis quelques mois avec le souci de contribuer à des communs et des projets qui ont du sens, il travaille sur Gogocarto/Transiscope également.
  • Vivien est titulaire d'une licence pro logiciel libre à Angers, puis a bossé à PMB service sur le développement de logiciels libre de gestion documentaire, puis du mobile et un peu de graphes et de sémantique !

On accueille tou.te.s les nouvelles contributrices et nouveaux contributeurs sur le Forum de l'Assemblée Virtuelle

Le club des débutants#

  • Une permanence d'accueil des contributeurs débutants est proposée tous les Lundi à 15h. Toutes les informations de connexion sont disponible sur le chat des communs, canal @semapps_debutant. C'est un moment d'accueil pour les nouveaux développeurs, échanger de leurs difficultés ou pour apprendre ensemble.
  • Des formations ont été proposées aux débutants sur React, Protégé et Moleculer.

Animation de la communauté SemApps#

Une vingtaine d'interviews ont été réalisées par Yannick avec des partenaires AV (developpeurs ou non) pour connaitre leurs souhaits d'interactions avec l'écosystème SemApps. Voir le post Animation de la communauté Semapps

2 résidences d'une semaines ont par ailleurs été organisées au cours de l'année 2021 qui, pour notre plus grand bonheur, nous ont permis de nous retrouver après tant de visios et de réunions à distance. Au programme ... Apéros, banquets, ateliers, team building, brainstorming, networking, et même des constellations familiales qui nous ont permis de mieux prendre conscience de nos places, rôles, envies. (La constellation familiale est un atelier sensible, singulier et très puissant pour pouvoir se réajuster, en tant que collectif.)

Financements#

Plusieurs financements (des prestations, des subventions, des dons) en provenance de multiples sources permettent d'alimenter la feuille de route de SemApps.

L'enjeu est de faire converger ces financements autour du développement de briques mutualisées, et d'alimenter ainsi le développement du commun. Nous entretenons une documentation ouverte à ce sujet que vous pouvez retrouver ici

On a par ailleurs mis en place un Open Collective qui devrait nous permettre à terme de catalyser les financements et les stratégies de développement ... en toute transparence !

Et dans l'écosystème...#

Assemblée Virtuelle#

Elle a fêté ses 10 ans à El Capitan (Normandie) en juin dernier. A l'occasion de cet anniversaire mémorable, elle en a profité pour se restructurer. Elle fédère désormais un écosystème d'organisations (et d'individus aussi mais surtout d'organisations), ce qui se reflète dans son nouveau conseil d'administration, et dans son nouveau code social. Si vous souhaitez rejoindre l'Assemblée Virtuelle en tant qu'organisation, ça se passe ici !

Data Players#

Data Players va de son côté se transformer de son côté en Société Coopérative d'Intérêt Collectif (SCIC) dans les prochaines semaines : Plus exactement, on va fermer la SAS et on va créer une SCIC.

Ayant de nombreux projets basés sur SemApps, elle contribue substantiellement, via des dons, au développement de l'Assemblée Virtuelle et à la R&D autour de SemApps. Le dernier était de 7000€, nous la remercions chaleureusement !

Sparna#

Sparnatural est un moteur de recherche qui permet aux humains de faire des requêtes complexes sur des systèmes d'information sémantiques.

Il permet de construire facilement des requêtes du type :

  • Je recherche des "Personnes"
    • qui disposent de "Compétences" en [...] et/ou [...] ;
    • qui s'intéressent aux "Topics" [...] et/ou [...] ;
    • qui habitent dans la "Région" [...]
    • et qui sont à la recherche d'un "Emploi".

Sparnatural va être utilisé et financé par le ministère de la culture ainsi que par la Bibliothèque Nationale de France. Nous allons de notre côté l'intégrer dans l'écosystème des modules SemApps.

Les projets de Fada (basés sur SOLID)#

Booklice#

David, alias Fada ou Scenaristeur ou [...] en fonction des contextes, développe [de nombreux projets basés sur Solid : Ici ou ici. En voici quelques uns !) Un utilitaire de veille / bookmarks (voir page à propos pour tuto) basé sur SOLID !

ESS-table#

Pour remplacer Airtable https://scenaristeur.github.io/ess-table

Contacts#

Pour stocker vos contacts https://scenaristeur.github.io/ldp-workspace/

Campagne de donnation de l'Assemblée Virtuelle#

L'organisation de l'Assemblée Virtuelle repose principalement sur le volontariat. Afin de maintenir sa pérennité, ses activités de recherche et développement ainsi que son indépendance, nous comptons sur vos dons. Plus vous cotisez régulièrement, plus notre association se renforce économiquement. Ainsi, nous vous encourageons à privilégier les dons mensuels plutôt que ponctuels. Dans tous les cas, nous vous serions reconnaissants de bénéficier de votre aide :)

SemApps News N°1

Bienvenue pour cette première newsletter SemApps, présente pour vous informer des nouveautés d'une manière synthétique et accessible. L'équipe SemApps souhaiterait en publier le plus souvent possible.

La newsletter ci-dessous est basé sur les derniers développements depuis cet été.

Avancées techniques#

Amélioration de l'interface#

Nous avons travaillé sur le React-Admin interface pour qu'elle ressemble à la première version de Semapps, et pour apporter plus de facilité d'utilisation.

Grâce à la flexibilité de React-Admin, ce projet a vite avancé. Vous pouvez voir le résultat sur le nouveau Semapps de l'Assemblée Virtuelle pouvant gérer et mettre en synergie des projets, des acteurs, des idées et des ressources liées à l'activité de l'Assemblée virtuelle.

Cache LDP#

Le service LDP est à présent capable de gérer un cache des ressources du container LDP. Dès qu'une ressource est appelée, le résultat est mis en cache et à la seconde interrogation de cette même ressource, le cache est utilisé, ce qui évite une requête SPARQL sur le triplestore.

Signature ActivityPub#

L'implementation du protocole ActivityPub est à présent complet suite à l'implémentation de la signature HTTP, qui authentifie l'émetteur de l'activité ActivityPub.

Il est à présent possible de déployer en quelques minutes un serveur basé sur ActivityPub et le faire communiquer avec un compte Mastodon, comme vous pouvez le découvrir dans ce tutoriel.

Nouveautés humaines#

Jérémy Dufraisse a rejoint l'équipe Semapps#

Débutant en développement web et passionné par la coopération dans tous les domaines, Jeremy rejoint l'équipe SemApps, avec pour objectif de s'impliquer davantage, notamment dans la programmation du code de ce logiciel. Membre du core team Colibris à Lorient, il travaille déjà sur la première version de la plateforme des chemins de la transition, un des projets de l'écosystème SemApps.

Gouvernance#

En mettant en œuvre les principes de « l'élection par consentement », l'équipe SemApps a non seulement pu définir plusieurs rôles, au regard des besoins effectifs de son organisation, mais aussi remplir les rôles en fonction des compétences identifiées.

Parmi les 13 rôles qui sont sortis, les suivants méritent une attention particulière :

  • Onboarding / Inclusion / Accueil : Gabriel HENRY
  • Partenaires techniques / Interoperabilité : Simon LOUVET
  • Communication : Pierre BOUVIER-MULLER
  • Cultivateur d'informations : Guillaume ROUYER
  • Coordination avec l'AV : Garbriel HENRY

Grâce à une gouvernance agile, ces rôles bénéficieront d'une révision régulière, afin d'être réajustés si besoin.

Pérénité économique#

Nous avons porté une attention particulière au rôle de la pérennité économique pour permettre à nos contributeurs de se sentir équitablement récompensés. Nous nous dirigeons vers une autodétermination de nos rétributions respectives.

Usages#

Lancement d'un mailer pour La Fabrique des Colibris#

La Fabrique des Colibris a demandé à Reconnexion de développer un petit outil qui permet aux utilisateurs d'être informés des nouveaux projets par e-mail, en fonction de leur localisation et de leurs intérêts. Lorsqu'un nouveau projet est publié sur la plateforme, il est envoyé à une instance de SemApps. Une activité ActivityPub est ensuite générée, puis envoyée au mailer.

Cette démarche résolument ouverte devrait permettre à l'avenir d'offrir d'autres moyens de se tenir au courant de l'actualité de La Fabrique. D'autres projets avec le mouvement Colibris sont déjà dans les tuyaux...

Data Food Consortium migre sous SemApps#

Data Food Consortium avait prévu dès le départ de s'appuyer sur un serveur sémantique pour stocker les informations confiées (à l'initiative des propriétaires de ces données : producteur, intermédiaire...) par les différentes plateformes de circuit court (catalogue, stock, logistique, offre commerciale ...).

SemApps a permis de migrer d'une base de données MongoDB vers une base de données sémantique en utilisant les interfaces SPARQL et LDP. Cette migration a mis en évidence toute la rigueur nécessaire à une cohérence sémantique, technique et ontologique dans ce projet, considéré comme assez complexe par nature (authentification OIDC entre plateformes, matching directory plutôt que référentiel d'identité...). Les données sont exploitables par une riche API métier fournie par le serveur qui a été adapté pour communiquer avec SemApps. L'interface web du prototype n'a pas eu besoin d'être repensée (grâce aux API métiers) même si quelques ajustements ont été nécessaires pour lire les données en JSON-LD.

SemApps a donc permis d'atteindre la technologie CFD de phase 2 sans attendre qu'un autre serveur Solid capable de faire des requêtes SPARQL complexes soit opérationnel.

Evènements#

Meetup Interoperabilité#

Suite à la résidence SemApps à El Capitan courant juin, Virtual Assembly et Startin'blox ont montré leur ambition de coopérer plus étroitement. Cela s'est traduit par la co-organisation d'un rencontre le 15 septembre aux Grands Voisins. Nous avons eu d'excellents retours, rencontré de nouvelles personnes et même de nouveaux contributeurs ! Même s'il n'y avait pas autant de participants, ils ont tous saisi le message que nous voulions faire passer. Nous savons méditer de mieux en mieux sur nos sujets ! Un grand merci à tous les intervenants et contributeurs bénévoles (une équipe incroyable <3) présents à l'événement !

Publication de quelques vidéos de présentation SemApps#

Vous trouverez les vidéos de la réunion du 20 mai sur la chaîne Youtube de l'Assemblée Virtuelle, avec sous-titres anglais en option. Nous venons également de publier la vidéo d'une présentation que nous avons faite à l'UTT sur les SemApps et les architectures peer-to-peer. Voici un document résumant ces interventions, ainsi que [le Power-point](https://docs.google.com/presentation/d/1lVUx4URcKkV1Z3G4EticbH1uCV_NwctqUlYoo /edit?usp=sharing) sur laquelle Guillaume et Sébastien ont basé leur présentation.

Et dans l'écosystème...#

YesWiki devient compatible LDP !#

Une quinzaine de contributeurs de YesWiki se sont rencontrés près d'Avignon cet automne, et l'une des nouveautés issues de cette rencontre est un système d'API qui permet d'ajouter, modifier ou supprimer facilement des données via de simples appels HTTP.

YesWiki était déjà compatible avec le web sémantique, avec la possibilité de sortir des données en JSON-LD. Avec cette nouvelle avancée, YesWiki devient un serveur LDP à part entière. Nous espérons pouvoir montrer un exemple bientôt, lorsque la nouvelle version de YesWiki sortira.

A noter également que, lors de ce sprint, un petit bot de synchronisation a été développé, qui permet d'écouter un acteur ActivityPub (par exemple Mastodon) et de republier les données reçues sur un YesWiki. Ce bot est basé sur SemApps et son code source est disponible [ici] (https://github.com/reconnexion/yeswiki-synchronizer).

Merci à Sébastien Rosset pour ces 2 avancées majeures !

Startin'Blox#

Au début de l'été, Startin'blox a lancé la version bêta de Hubl, un outil développé pour les organisations, composé d'un chat, un répertoire de profils, un répertoire de missions et un tableau de bord, tous compatibles Solid. 25 communautés testent actuellement Hubl, dont une grande partie du réseau Happy Dev et bien d'autres devraient suivre en octobre. L'outil évolue rapidement, avec une mise à jour tous les jeudis en fonction des retours utilisateurs. Désormais nous communiquerons toutes les évolutions sur notre compte twitter.

Pour tester Hubl, rencontrez-nous sur l'instance de la communauté SiB ou soyez invité sur l'instance Virtual Assembly. Tous vos retours sont les bienvenus sur la chaîne "#Make Hubl Better" :) Depuis l'événement du 15 septembre aux Grands Voisins, nous avons une chaîne dédiée à la coopération entre les deux structures : "Av x SIB". Venez nous rejoindre !

Autre info, si vous avez du mal à expliquer le principe du Solid, Philippe Honigman et Alice Poggioli ont réalisé un article vulgarisant ce concept. N'hésitez pas à le faire tourner !

SOLID / Inrupt#

Depuis avril, la communauté Solid organise des [événements vidéo] (https://www.eventbrite.com/o/solid-project-30026804546) au début de chaque mois. Les événements commencent par une présentation des mises à jour de la feuille de route par Tim Berners Lee, suivie de présentations de diverses initiatives communautaires. Le 3 septembre, Alex y a présenté Hubl. Si vous souhaitez présenter vos propres créations vous pouvez proposer votre intervention par mail à info@solidproject.org.

Mi-août, Inrupt annonce la sortie de la version bêta de son serveur solide.

Voici deux groupes de travail où il serait bien d'avoir des représentants de notre écosystème dans la communauté Solid :

Campagne de donnation de l'Assemblée Virtuelle#

L'organisation de l'Assemblée Virtuelle repose principalement sur le volontariat. Afin de maintenir sa pérennité, ses activités de recherche et développement ainsi que son indépendance, nous comptons sur vos dons. Plus vous cotisez régulièrement, plus notre association se renforce économiquement. Ainsi, nous vous encourageons à privilégier les dons mensuels plutôt que ponctuels. Dans tous les cas, nous vous serions reconnaissants de bénéficier de votre aide :)