D'excellents programmes de partages d'arbres généalogiques existent depuis des décennies. (Parmi les programmes existants de partages de données généalogiques, citons Ancestris.) Nous ne travaillerons pas là-dessus, mais sur une application innovante qui sera centrée sur les individus et non pas sur les arbres.
Le principe restera le même que pour le partage d'une encyclopédie multiversions concurrentes.
Ce qui va nous intéresser en généalogie est que :
- il est admis par les généalogistes que ce ne sont pas les affirmations reprises par le plus grand nombre qui sont vraies
- nous allons nous focaliser sur la divergence des données
- lorsqu'on allume notre ordinateur, nous participons au réseau, que nous quittons lorsque nous l'éteignons (mais d'autres, qui gardent le leur allumé participent à garder et transmettre nos données)
- nous ferons l'objet de moins d'attaques par des bots ou des IA que le projet peut-être controversé de l'encyclopédie multiversions, et donc nous pourrons travailler plus sereinement sur le programme de fond
- les données d'un individu dans une généalogie (noms, dates de naissance, mariage, décès, profession, noms des parents, etc.) sont beaucoup plus réduites que celles de longs articles d'une encyclopédie (nous avancerons plus facilement sur ce projet).
Le projet en généalogie
La généalogie est une « niche » plutôt réservée à des retraités (en schématisant). Le marché est assez prospère ; ces dernières années, les 2 principales sociétés françaises (Généanet et Filae) ont été revendues à des groupes mondiaux pour environ 20 millions d'euros chacune. Un abonnement annuel tourne autour de 50 ou 80 euros. Ces sociétés ont mis à peu près 20 ans pour se construire, aux débuts du Net. Mais le contexte change, nous pourrons accélérer. Si notre société ou projet n'était évalué qu'à un centième (1 %) des sociétés vendues précédemment, ceci nous valoriserait à 200 000 euros (c'est utile de recadrer les valeurs pour montrer l'importance d'un projet). Nous n'avons pas besoin de toute cette somme et un financement par dons, sur ce projet, pourrait suffire. Le produit que nous proposerons n'existe pas aujourd'hui.
Aujourd'hui, ce qui se fait sur le marché des logiciels de généalogie, c'est surtout de partager des branches ascendantes (lorsque nous avons des ancêtres communs, ne pas refaire le travail fastidieux de rechercher les actes de naissance, décès, etc.) Mais nous ne regardons pas bien les individus.
(Une parenthèse : moi-même, Lionel Aubert, me débrouille un peu en généalogie, au point d'avoir réalisé 2 tutoriaux relatifs à un programme libre, Gramps, sur YouTube.)
Comprendre la coexistence de données contradictoires
La coexistence de données contradictoires est un point essentiel dans nos différents projets de mini-serveurs non-centralisés. La généalogie va l'illustrer parfaitement.
Savoir que nous avons un ancêtre qui est né le 15 avril ou le 15 mai n'est pas essentiel en soi, et nous pouvons laisser ce genre d'erreurs dans un arbre. En revanche, ce qui est important, c'est de savoir de qui est née telle ou telle personne, afin de remonter aux parents, grands-parents, etc. (surtout, ne pas se tromper de branche).
Exemple réel (plusieurs publicateurs d'arbres en ligne avaient des données différentes) :
Dans un site de partage d'arbres généalogiques, on peut retrouver des données différentes pour un même individu. Ici, Henri Bayol a son prénom qui parfois se termine avec un Y, et son jour de naissance parfois le 16, parfois le 18. D'autres fois, il y a une incertitude sur le jour (certitude sur l'année seulement), et une autre fois, une erreur sur l'année (mais pas sur le jour… il s'agit d'erreur de transcription entre le document et la saisie au clavier). Mais ces erreurs ne sont pas importantes, elles peuvent coexister.
Nous aurons une base de données qui liera des versions non-concordantes à un même individu, au lieu d'avoir, comme ça se fait actuellement, plusieurs versions d'individus (dans l'exemple de Bayol, 6 individus différents, alors que c'est la même personne).
La nouveauté que nous introduirons sera de récupérer sur le réseau de notre base de données un ensemble de données contradictoires, par exemple plusieurs dates de naissance ou de décès pour une même personne, plusieurs orthographes de noms voire des prénoms différents, plusieurs parents différents, etc., et le tout, relié à des utilisateurs différents (ceux qui lisent et hébergent les données sur leur disque dur). Sur nos ordis qui serviront de mini-serveurs, nous enregistrerons les données contradictoires de tel ou tel utilisateur, en les reliant. (Nous n'hébergerons que des données partielles, celles avec lesquelles nous avons un lien, même ténu.)
Autrement dit, la généalogie est une bonne illustration comme quoi nous pourrons faire coexister différentes données contradictoires pour un même individu.
La suite du projet
Le code du projet sera remis à la communauté de programmeurs libres. Il continuera d'évoluer ainsi.
Toutefois, il y a de fortes probabilités pour que les améliorations servent pour le projet d'encyclopédie multi-versions.