Scrum : un cadre pour la gestion agile

Dans le développement logiciel on avait l’habitude de travailler avec une méthode qui partait d’un besoin en les analysant de la manière la plus exhaustive possible, d’écrire un cahier des charges pour en définir la manière la plus précise possible puis de développer en se basant sur ce cahier des charges jusqu’à ce que le projet soit fini. Le problème est que souvent, le produit fini ne correspondait pas aux besoins. La difficulté est de savoir exactement ce dont on a besoin de bien l’exprimer. Mais les besoins peuvent changer. Cette façon de travailler

Une autre manière de travailler est venue en prônant 4 grandes valeurs : Les personnes sont plus important que les outils, les logiciels opérationnels plus que la documentation, la collaboration avec les clients plus que les négociations et l’adaptation aux changements. Ce sont les principes de l’agilité.

L’idée est de se concentrer sur le produit finie et d’avoir des retours le plus souvent possible pour coller au plus près du besoin. L’autre idée est d’avoir une équipe auto géré.

Scrum est un cadre de travail pour la méthode agile.

Qu’est-ce que SCRUM

Scrum est un cadre de travail (Framework) pour le développement, la livraison et la maintenance de produits complexes.

Scrum est fait pour des problèmes complexes. Il s’adapte en continue et améliore régulièrement le produit l’équipe et la façon de travailler

Scrum n’est pas en soi un processus, une technique ou une méthode définitive

Scrum est utilisé pour développer des logiciels, du matériel, des réseaux, des véhicules autonomes, des écoles, des gouvernements, du marketing, gestion des organisations bref tout ce qui est complexe

Théorie : l’empirisme

Scrum est basé sur l’empirisme qui affirme que la connaissance provient de l’expérience, la prise de décision est basée sur des faits connus. Son approche itérative et incrémentielle

Scrum c’est 3 piliers, 5 valeurs, 3 rôles, 3 événements et 3 artéfacts.

 

3 Piliers

  1. Transparence: Les aspects du processus doivent être visibles à tous les intervenants. Il faut donc une définition d’un standard commun pour une bonne compréhension (ex qu’est-ce qu’on comprend par fini)
  2. Inspections fréquentes: les utilisateurs doivent inspecter les documents pour suivre l’avancement du projet par rapport aux objectifs (sprint goal)
  3. Adaptation: en cas de dérive, un ajustement doit être fait.

Pour cela 4 évènements sont prévus

  • Le Sprint Planning : planification du Sprint
  • Daily SCRUM : mêlée quotidienne
  • Sprint Review : Revue du sprint
  • Sprint Retrospective

5 Valeurs

  • L’engagement (Commitment)
  • Le courage: un échec est un moyen d’apprendre. L’échec n’est pas trop grave à cause des itérations fréquentes
  • La concentration (Focus): Concentration sur l’objectif
  • L’ouverture (openness): Ouverture voir le pilier sur la transparence
  • Le respect (Respect): écouter, prendre en considération les opinions des autres tout en partageant sa vision

Les 3 rôles

Une équipe Scrum est composé d’un Product Owner, de développeurs et d’un Scrum Master. Elles sont autogérées.

Le responsable du produit (Product Owner)

C’est le responsable du produit. C’est lui qui gère le Backlog Product. Il doit bien avoir en vue ce qui est important (ce qui a de la valeur) pour l’ordonnancement

  • Il doit avoir la vision du produit et la partager
  • Expression claire du Backlog Product
  • Ordonnancement : structure et ordre dans le but de réaliser les objectifs (value organiser)
  • Optimisation du travail des développeurs
  • Rendre le Backlog Product visible par tous (transparence et inspection)
  • S’assure que les développeurs ont compris

Il est seul à décider des priorités et du contenu du Backlog Product. Si quelqu’un veut ajouter un élément il doit passer par lui.

Il fait le suivi de l’avancement vers le produit fini au moins une fois par sprint.

L’équipe de développement (Development Team)

L’équipe travaille pendant le sprint pour fournir un incrément fini publiable. L’équipe de développement s’organise elle-même.

  • Auto organisation. Décident elle-même comment faire
  • Pluridisciplinaire multi compétences
  • Pas de titre
  • Pas de sous équipes
  • Pas de responsabilité individuelles mais c’est une responsabilité collective de l’équipe

Nombre : entre 3 et 9 car si le nombre est trop faible il y a un risque d’avoir des limitations de compétences et si c’est trop grand, il faut faire trop de coordination et c’est moins efficace.

Le Scrum master : le conducteur serviteur

Il est au service des développeurs, du Product Owner et de l’organisation. Il fait la promotion de SCRUM pour tous comprennent bien la théorie, les pratiques et les règles. Il facilite les choses et détecte les freins.

  • Au service du Product Owner : Est-ce que les objectifs sont bien compris ? Le Backlog Product est-il compris par l’équipe ? Comprendre la planification ? Organisation du Backlog Product Faciliter les événements si besoin, Il aide à trouver des bons outils.
  • Au service de l’équipe de développement : coach pour l’auto organisation – aide l’équipe pour avoir un produit de grande valeur – Supprime les obstacles à la progression – Facilite les événements si besoin – forme sur Scrum. Il veille à ce que les réunions ait bien lieu et soient efficaces et pas trop longues.
  • Au service de l’organisation : accompagne dans l’adoption de Scrum – planifie des implémentations – accompagne l’organisation dans les changements pour augmenter la productivité – collabore avec d’autres Scrum Masters

Les 3 événements (réunions)

Le but est de cadrer les réunions pour éviter une perte de temps.

Le Sprint contient est un évènement mais il contient d’autres évènements. La durée du sprint ne peut pas être changer. La durée des autres évènements peuvent se terminer si leur objectif est atteint. Chaque évènement sont conçus pour permettre la transparence et l’inspection. Chaque évènement est une occasion d’inspecter et d’adapter.

Le sprint

Le sprint est au cœur de Scrum. Durée 1 mois maximum. A la fin du Sprint un incrément Produit fini fonctionnel et publiable est créé. Un nouveau Sprint commence dès que le précédent est fini.

Un Sprint comprend : un Sprint planning, des Daily Sprint, du développement, une Sprint Review et une rétrospective Sprint.

Un sprint est fixe : on ne fait pas de changement dans la durée. L’objectif est la qualité. Le Product Owner est toujours présent pour aider l’équipe de développement à bien comprendre ce qu’il faut faire.

Chaque Sprint est un projet d’un mois ayant pour objectif de faire un incrément.

Le Product Owner peut annuler un Sprint si l’objectif est obsolète par exemple si l’organisation change de direction. Il n’a donc plus de sens. Il est le seul à avoir ce pouvoir.

La planification (Sprint planning)

Ce travail est fait par tous les membres de l’équipe Scrum.

Durée maximum 8 heures

Le Scrum Master veille à ce que l’événement ait lieu et que tous en comprennent le but. Il fait attention à sa durée. Il y a deux parties dans cette planification

Première partie : que va-t-on faire ?

L’équipe de développement s’occupe des fonctionnalités à développer. Le PO lui se focaliser sur l’objectif et des éléments du Backlog qui seront fait. On se base sur la Backlog Product et le dernier incrément. L’équipe de développement doit se projeter pour évaluer ce qu’elle pourra faire.

Deuxième partie, comment va-ton faire ?

L’équipe de développement décompose le travail par jour ou moins. Le travail pour les premiers jours et déjà bien défini. Il faudra bien détailler les premiers jours quitte à laisser des tâches grossières pour après. On va dégrossir les choses après au fur et à mesure de l’avancement du travail.

Le Product Owner aide à la clarification du Backlog Product. Il y a négociation avec l’équipe de développement lui si il y a trop ou pas assez de travail.

D’autres personnes peuvent être invités pour apporter des conseils techniques ou des compléments d’informations fonctionnelles sur le métier

A la fin de la planification, l’équipe devrait pouvoir expliquer au Product Owner et au Scrum Master COMMENT elle s’organise pour réaliser l’objectif.

Sprint Goal : l’objectif du sprint

Durant ce Sprint Planning on fixe l’objectif du sprint (Sprint Goal). L’équipe aura ce but en tête et cela l’aidera à être plus motiver et produire un meilleur travail.

Daily Scrum

C’est une réunion coute quotidienne pour l’équipe de développement qui aura lieu à la même heure et au même endroit, sa durée est de 15 mn maximum. Le but est de faire un point pour que tout le monde soit informer de l’avancement du projet. Chacun partagera ce qu’il a fait et ce qu’il va faire aujourd’hui et si il y a un problème. Cette réunion n’est pas prévu pour de longue discussions.

Le Scrum Master ne participe pas à cette réunion qui est interne pour le développement mais il veille à ce qu’elle ait bien lieu et à ce qu’elle ne sorte pas du cadre. Si il y a des personnes externes, elle écoutent juste.

La revue : Sprint Review (présentation de ce qui a été fait)

A la fin du Sprint l’équipe de développement va présenter quelque chose de montrable. Le responsable du produit va expliquer les éléments qui sont fini. L’équipe de développement va faire la démo des fonctionnalité qu’elle a développé. C’est l’occasion de recevoir les retours des utilisateurs qui vont inspecter l’incrément. On pourra tenir compte des remarques et faire des adaptations pour le prochain sprint. Le Résultat est un Backlog Product révisé. Cet événement dure 4 heures maximum pour un sprint d’un mois.

La rétrospective

Durant cette réunion on va inspecter non plus le produit mais la manière de travailler et l’équipe. Comment le sprint s’est déroulé ? Quels sont les problèmes rencontrés etc.. On va prendre des décisions à mettre en priorité pour améliorer les choses pour le prochain sprint à mettre dans la Sprint Backlog. Cette réunion dure maximum 3 heures et seule l’équipe Scrum y participe.

Les artéfacts (documents)

Ils représentent soit un travail soit une valeur aidant à la transparence pour permettre l’inspection et l’adaptation

Carnet du produit (Product Backlog)

C’est le Product Owner qui en est responsable. C’est une liste des éléments identifiés comme nécessaires du produits. Il est en évolution continue. Il liste les fonctionnalités, les fonctions, les exigences, les améliorations et les corrections.

Les éléments se composent d’une description, d’un ordre, d’une estimation et d’un valeur. La description du test peut y figure pour les valider.

Plusieurs équipes peuvent travailler sur le même Backlog Product.

Product Backlog Raffinement : c’est la raffinement pour ajouter des détails d’estimations et d’ordonnancement. C’est la Product Owner avec l’équipe de Dev qui fait ça. Le temps passé est au plus de 10%.

C’est l’équipe de développement qui est responsable de l’évaluation.

Sprint Backlog

C’est l’équipe du développement qui en est responsable.

C’est l’ensemble des éléments sélectionnés pour le Sprint plus un plan pour livrer l’incrément et réaliser l’objectif du sprint. Qu’est-ce qu’on va faire et comment. Il comprend une amélioration prioritaire identifié lors de la réunion rétrospectives précédente. Le Backlog Sprint est une vue en temps-réel et très visible du travail que l’équipe de développement prévoit d’accomplir durant le Sprint et il appartient uniquement à l’équipe de développement.

Il faut que la progression soit facilement identifiée pour les Daily Sprints.

L’équipe de développement modifie le Backlog Sprint tout au long du sprint

Chaque jour pendant le Daily Scrum, il y a un suivi de la somme de travail qui reste à faire pour évaluer la probabilité d’atteindre l’objectif du sprint.

Incrément

Ce sont les éléments du Backlog Produit qui sont finis durant le sprint (ceux qui ont répondu à la définition de ce qui est terminé) plus ce qui a été déjà livré lors des sprints précédents. On peut le publier. Il est fini. Il faut s’entendre sur la définition de « fini ».

Les artéfacts de transparence

Scrum repose sur la transparence. Si la transparence est incomplète, les décisions peuvent être faussées et engendrer des risques. Le Scrum master est responsable de cette transparence.. Ce travail implique l’apprentissage, la persuasion et le changement. La transparence est un cheminement.

Définition de ce qui est terminé (Definition of Done)

Cette définition doit être la même pour tout le monde à l’intérieure d’une équipe Scrum. Cette définition peut évoluer et être plus juste au fur et à mesure des Sprints.

Si il n’y a pas de définition de ce qui est fini, c’est à l’équipe de développement de la créer. Si plusieurs équipes travaillent sur un même produit il y aura une définition pour le produit. Donc toutes les équipes devront avoir la même définition.

Conclusion

Les rôles, les événements, les artéfacts et les règles sont immuables. Scrum est : léger – simple à comprendre – difficile à maitriser

Trouvez ces informations sur le guide scrum officiel

Le guide scrum existe en plusieurs langues dont le français en version pdf téléchargeable gratuitement.

 

Méthode agile

On entend de plus en plus parler de méthode agile particulièrement dans le développement de logiciel. On entend aussi parler de SCRUM.

La méthode Agile représente un ensemble pratiques basées sur les valeurs et les principes du Manifeste Agile, qui repose entre autre sur la collaboration, l’autonomie et des équipes pluri-disciplinaires.

Scrum est un framework qui est utilisé pour implémenter la méthode Agile de développement et de gestion de projet.

En fait Agile est plus qu’un méthode, On parle plutôt de paradigme agile, d’état d’esprit agile, de philosophie agile, de culture Agile ou encore d’approche agile, de mouvement agile, de courant agile,

Une approche dite « traditionnelle » attend généralement du client une expression détaillée et validée du besoin en entrée de réalisation, laissant peu de place au changement. La réalisation dure le temps qu’il faut et le rendez vous est repris avec le client pour la recette. Cet effet tunnel peut être très néfaste et conflictuel, on constate souvent un déphasage entre le besoin initial et l’application réalisée. On se rapporte alors aux spécifications validées et au contrat. Certains projets se terminent dans la douleur (surtout dans le cadre d’un contrat au forfait classique) au risque de compromettre la relation client. De plus il n’est pas rare que certaines fonctionnalités demandées se révèlent finalement inutiles à l’usage alors que d’autres, découvertes en cours de route, auraient pu donner plus de valeur au produit.

Le manifeste agile comprend 4 valeurs

  1. Les individus et leurs interactions plus que les processus et les outils.
  2. Un logiciel qui fonctionne plus qu’une documentation exhaustive.
  3. La collaboration avec les clients plus que la négociation contractuelle.
  4. L’adaptation au changement plus que le suivi d’un place

 

Les 12 principes agiles

  1. Notre plus haute priorité est de satisfaire le client en livrant rapidement et régulièrement des fonctionnalités à grande valeur ajoutée.
  2. Accueillez positivement les changements de besoins, même tard dans le projet.
  3. Livrez fréquemment un logiciel opérationnel avec des cycles de quelques semaines à quelques mois et une préférence pour les plus courts.
  4. Les utilisateurs ou leurs représentants et les développeurs doivent travailler ensemble quotidiennement tout au long du projet.
  5. Réalisez les projets avec des personnes motivées. Fournissez-leur l’environnement et le soutien dont elles ont besoin et faites-leur confiance pour atteindre les objectifs fixés.
  6. Privilégiez la co-location de toutes les personnes travaillant ensemble et le dialogue en face à face comme méthode de communication.
  7. Un logiciel opérationnel est la principale mesure de progression d’un projet.
  8. Les processus agiles encouragent un rythme de développement soutenable. Ensemble, les commanditaires, les développeurs et les utilisateurs devraient être capables de maintenir indéfiniment un rythme constant.
  9. Une attention continue à l’excellence technique et à un bon design.
  10. La simplicité – c’est-à-dire l’art de minimiser la quantité de travail inutile – est essentielle.
  11. Les meilleures architectures, spécifications et conceptions émergent d’équipes auto-organisées.
  12. À intervalles réguliers, l’équipe réfléchit aux moyens possibles pour devenir plus efficace. Puis elle s’adapte et modifie son mode de fonctionnement en conséquence.

 

Comment installer Hubzilla sur un vps debian 9

Attention ce tuto a été écrit en mars 2019. Il a une durée de vie limité et inconnue. On trouve parfois de vieux tutos qui ne fonctionne plus simplement parce qu’il ne sont plus à jour.

Qu’est ce que Hubzilla

Hubzilla est une plateforme social qui permet d’interagir avec d’autres réseaux sociaux utilisant différents protocoles. Par exemple on peut communiquer avec Mastodon, Friendica, zap ou Diaspora. En plus d’être un réseau social Hubzilla permet de synchroniser ou partager des fichiers, de publier des pages web, d’avoir un wiki, un calendrier, de gérer ses contacts bref cette plateforme permet plus qu’un simple réseau social. La grande force de Hubzilla est sa sécutité qui permet une confidentialité trés fine et poussée et son identité nomade. En effet vous pouvez cloner un canal et l’utiliser depuis un serveur ou un autre. Cette identité nomade en fait une force. Si un serveur a des problèmes, le deuxième serveur va continuer à faire tourner le compte. Cela permet aussi de déménager un canal d’un serveur à un autre de façon transparente.

Hubzilla s’installe sur un serveur classique avec apache php mysql, il est même possible de l’installer chez certains hébergeur mutualisé.

Voici un tutoriel pour l’installer sur un serveur vps debian. Si vous avez un ubuntu cela ne devrait pas beaucoup changé car c’est la même famille.

Avant de commencer on suppose que vous avez un serveur par exemple un vps, que vous savez vous y connecter avec ssh et que vous avez des connaissance pour savoir taper des lignes de commande linux. Il est recommander d’avoir de bonnes bases de compréhension des commandes linux quoi qu’il n’est pas nécessaire de comprendre chaque lignes de commande

Etape 1 : Installation de apache et configuration du domaine

Pour ce tuto on va supposer que vous ayez un domaine avec le nom domaine.com (Il faudra remplacer ce nom par votre domaine ou sous domaine) et que les sources de votre site sera prévu pour se trouver dans le répertoire /home/sites/domaine.com. Changez ce nom par votre répertoire source.

apt update
apt-get install apache2

Configuration du DNS : il faudra faire pointer le domaine sur le serveur. Cela change selon les bureau d’enregistrement du domaine.

Pour la suite du tuto domaine.com représente soit votre nom de domaine soit votre sous domaine. Hubzilla fonctionne trés bien avec un sous domaine.

A ce stade il faudra définir le répertoire ou nous allons placer les sources du site. Il peut se trouver dans /var/www. Moi personnellement je les mets dans /home/sites/domaine.com

virtualhost : Création du fichier de configuration que nous allons mettre dans /etc/apache2/mods-available

<VirtualHost *:80>   
DocumentRoot /home/sites/domaine.com
ServerName domaine.com
<Directory /home/sites/domaine.com>
AllowOverride All
Allow from all
Require all granted
</Directory>
</VirtualHost>

Pour tester nous allons mettre un tout petit fichier texte avec juste le nom du domaine dans le répertoire /home/sites/domaine.com puis ne pas oublier de changer le propriétaire de ce source.

# chown -R www-data /home/sites/domaine.com

On va maintenant activer le serveur virtuel et relancer apache.

# a2ensite domaine.com.conf 
# service apache2 reload

Avant de tester il faut installer un certificat car les navigateurs nous génent de plus en plus si ce n’est pas fait.

# apt-get install certbot 
# apt-get install python-certbot-apache

Création du certificat. Ici j’ai encore de la peine et je suis encore un peu embrouillé mais j’y arrive avec ces deux lignes de codes

# apt-get install certbot 
# apt-get install python-certbot-apache
certbot certonly --standalone -d domaine.com --pre-hook "systemctl stop apache2" --post-hook "systemctl start apache2" 
certbot --apache -d domaine.com

A ce niveau la. Vous devriez pouvoir tester en lançant votre site https://domaine.com et voir afficher votre petit texte. Si c’est le cas Bravo !!! Sinon il peut avoir quantité de raisons. Vous pouvez faire un reboot, vérifier si tout est bien fait, vérifier les permissions refaire le certificat bref pour continuer il faut que cette étape soit terminé.

Etape 2 : installation des prérequis complémentaires ( php, mysql)

# apt-get install php7.2 php7.2-mysql php7.2-curl php7.2-json php7.2-cli php7.2-gd php7.2-xml php7.2-mbstring imagemagick php7.2-zip wget -y

Personnaly I install phpmyadmin

# apt-get install phpmyadmin

Etape 3 : Installation de hubzilla

Nous devons procéder à une création d’une base de donnée. Soit vous pouvez le faire par phpmyadmin soit par ligne de commande.

Ah j’oubliais il nous faut git

# apt-get git

Maintenant procédons à l’installation

cd /home/sites/domaine.com 
# do not forget the dot at the end
git clone https://framagit.org/hubzilla/core.git .
sudo chown -R www-data:www-data /home/sites/domaine.cosudo chmod -R 755 /home/sites/domaine.com
sudo a2ensite hubzilla.conf
sudo a2enmod rewrite
sudo systemctl restart apache2.service

Une fois ceci fait vous pouvez aller sur votre site https://domaine.com et vous suivez les instructions

Ecrant 1 : Ecran de controle. Si il vous manque quelque chose ce écran vous le signalera
Ecran 2 : il vous faut entrer les infos pour la base de donnée : utilisateur, mot de passe et nom de la base de donnée etc…
Ecran 3 : On vous demande l’email de l’adminstrateur. C’est avec cet email que hubzilla saura si vous être admin ou non

Etape 4 : Finir l’installation en paramétrant quelques réglages important

 

Si vous êtes à l’aise avec l’anglais voici la documentation officiel sur l’installation de Hubzilla

 

Comment faire un serveur virtuel

Voici un petit tuto rappel qui explique comment ajouter un sous domaine sur un serveur par exemple un vps. Nous avons déjà au préalable configuré un domaine (toto.com) sur ce serveur. La configuration des sous domaines pointe bien sur ce serveur

On va créer un sous domaine truc.toto.com. Les sources vont être dans /home/user/sites/truc.toto.com

Etape 1. Configuration apache. On va créer un fichier du nom de truc.toto.com.conf qu’on va mettre dans le répertoire /etc/apache2/sites-available

Voici l’exemple

DocumentRoot  /home/user/sites/truc.toto.com    
ServerName truc.toto.com
AllowOverride All
Allow from all
Require all granted

On copie ce fichier dans apache.
explication Ligne 2 vous l’avez compris : on défini le répertoire des sources.
ligne suivante on donne le nom du site. Les lignes suivante définissent les permissions.

Etape 2. Activation
Voici les lignes de commandes
a2ensite truc.toto.com
et bien sûr il faut relancer apache pour que cela soit pris en compte
service apache2 reload

Voilà c’est fini. Vous pouvez contrôler tout ça en envoyant un petit fichier texte index.html avec le nom du site et aller avec un navigateur afficher le site. Vous devriez voir cette page.

Aprés le fédiverse voici le zotiverse

Le ou la fédiverse (on ne sait pas trop si c’est un mot masculin pour univers ou féminin pour fédération) est l’ensemble des sites interconnectés entre eux grâce au protocole ActivityPub. Cela comprend Mastodon, Pléroma, Pixelfed, plume, peertube etc…

Le zotiverse est un nouveau terme qui désigne l’ensemble des sites utilisant le protocole zot : Hubzilla, Osada et Zap. Il utilise le protocole zot.

Le protocole zot est un protocole qui est plus puissant qu’ActivityPub. Il permet une meilleure sécurité, plus de confidentialité et surtout une identité nomade.

L’identité nomade permet de cloner votre canal sur un autre site et d’utiliser l’un ou l’autre de façon indifférente. Cela ressemble à l’usage des mails depuis son ordinateur du travail, son ordinateur de la maison ou son téléphone. Si un serveur a un problème on peut continuer sur l’autre. On peut utiliser l’identité nomade pour déménager d’un site à un autre sans demander à ses contacts de se réabonner.

Voici donc en ce début 2019 un tour d’horizon de ce nouvel univers. J’ai nomé zotiverse. La mascote est un koala.

Hubzilla est l’application la plus connue et la plus utilisée car elle est la plus ancienne. Elle trouve sont histoire dans Friendica et redmatrix. C’est une plateforme de publication ou une plateforme communautaire. Elle ressemble à wordpress qui au départ était un blog et qui est devenu un cms pouvant faire beaucoup plus. Actuellement on peut faire du commerce, des forums, un réseau social et beaucoup de choses avec wordpress. Hubzilla a été la première application à prouver la réalité de l’identité nomade. Cette application possède un volet social mais on peut avoir des albums photos, des wikis, des agendas, des calendriers, gérer des contacts, un cloud etc… C’est un vrai couteau suisse. Le tout permettant une sécurité quasi militaire, une confidentialité trés détaillée tout en étant ouvert grâce à des extentions à d’autres protocoles comme ActivityPub, Osatus ou Diaspora. Sa puissance a cependant une faiblesse sa complexité. D’aprés le site the-federation.info il y a environ 5000 comptes ce qui est modeste mais la progression continue.

Si vous voulez ouvrir un compte Hubzilla https://start.hubzilla.org/page/admin/start

Osada est plutôt orienté réseau social. Il possède nativement le protocole ActivityPub. On peut donc discuter avec les 3 millions d’utilisateurs de cette communauté grandissante. Les options ont été simplifiérs pour permettre à des nouveaux de se sentir rapidement à l’aise. Osada se veut être un concurent de Diaspora ou de Friendica. Ce réseau est donc trés ouvert vers l’extérieur. Cependant la confidentialités et la sécurité sera sommaire. Cette option est recommandé si vous voulez toucher le plus de monde possible. Ce réseau utilise les protocoles zot6 et ActivityPub. L’identité nomade n’est pas recommandé et ne fonctionnera pas si vous avez des contacts non zot. Savoir plus sur Osada

Zap est un réseau social pour ceux qui sont sensibles à la confidentialité, l’anonymat et la sécurité. Ce réseau est très résistant à la censure. Comme il utilise uniquement le protocole zot6, seuls les utilisateurs de hubzilla et osada seront accessibles. Par contre l’identité nomade fonctionnera très bien.

Liste des instances publiques Osada et Zap

En résumé si vous cherchez un réseau social style facebook, Osada est pour vous. Si vous recherchez la sécurité et la confidentialité dans un groupe, zap est pour vous. Si vous voulez faire plus et animer une communauté hubzilla est l’outil à faire tout. Hubzilla est une très bonne réponse pour une communication interne dans une petite entreprise, une association ou une famille.

Attention actuellement (fin janvier 2019) Hubzilla utilise une ancienne version du protocole zot alors que Osada et Zap ont une nouvelle version. Cela a pour conséquence une incompatibilité temporaire. La prochaine version de Hubzilla utilisera zot6 et sera pleinement compatible pour le zotiverse.

2019

Chaque année c’est le rituel. On fait le bilan et on se fixe des objectifs. On fait de bonnes résolutions (ou pas!) qu’on tient partiellement. C’est ce que je vais tenter de faire dans cet article.

2018 a été une année riche au niveau d’internet. C’était l’année d’ActivityPub qui a été pour la première année implémenté dans de nombreux logiciels. Grâce à la validation du W3C, ce protocole est LE standard de dialogue social sur internet. Il y a donc deux type d’internet le web centralisé et le web décentralisé. Le web en silo est toujours trés dominant mais on peut espérer plus de liberté et de sécurités pour l’avenir. J’utilise Mastodon, Pixelfed et peertube ainsi que hubzilla et osada, je trouve fantastique que ce monde grandit et touche chaque jours plus de personnes. Bientôt mes connaissances en feront partie. Aujourd’hui je communique principalement avec des inconnus.

Pour 2019 je vais essayer de creuser la facilité d’adoption de ActivityPub pour des gens qui sont ‘normaux’. Il va falloir travailler sur la motivation d’usage mais aussi sur la facilité de migration. J’ai un ami avec lequel j’amerais partager il est sur facebook et je lui dit non je ne veux pas utiliser facebook Tu peux communiquer avec moi avec Mastodon ou Osada. Je lui envois une invitation et on peut ainsi échanger. Ce processus n’est pas nouveau on se le pose tous et on se rend compte que ce n’est pas simple. C’est un parcours semé d’obstacles. Chacun de ces obstacle est une raison d’abandonner. Donc travailler sur la facilité de migration est un de mes objectifs cette année. (C’est bon c’est assez général)

L’autre point fort que je note c’est le phénomène des Gilets Jaunes. Cela commence par une révolte populaire lié à des taxes et cela continue en une révolte pour retrouver la démocratie. Ce que je note c’est la prise de conscience que la démocratie faiblit. Les gens ne vont plus voter car quelque soit le résultat ou le candidat, la politique est la même. L’idée du RIC Référendum d’Initiative Citoyenne est une trés bonne idée qui a le mérite de remettre en cause le système. Cette prise de conscience n’est pas encore suffisante. Nombreux ne voient pas que la perte de la démocratie est lié à cause de l’Union Européenne qui continue de prendre plus la souveraineté des nations. Autrement dit le président ou les députés ne sont plus libre de faire la politique qu’ils veulent à cause des traités européen. Il faut du temps pour réaliser cela. Une grande majorité ne le voient pas encore y compris chez les Gilets Jaunes.

2018 a été la naissance de ce blog. Et les statistiques ne sont pas bonnes.


Je constate qu’il y a très peu de visites. Moins de 10 par jour est pour moi négligeable. Les blogs ne sont plus à la mode. Aujourd’hui on est enfermé dans des applications et on ne va plus chercher sur le web avec des moteurs de recherches. Le temps passé à écrire n’est pas du tout rentable pour quelques lectures ou vues. Mais c’est pas grâce, ce qui me motive c’est de toucher une personne ou d’être utile à une autre. Il ne faut pas viser la masse mais la qualité. Toucher bien. Et puis je ne fais pas ce blog pour avoir de la popularité sinon il faudrait être vidéaste. Mais c’est pour pratiquer l’écriture. Plus je pratique plus je m’améliore. J’essaye de faire moins de fautes d’orthographes. Il doit en rester beaucoup mais le but est simplement de progresser. Même si la progression est faible, je m’encourage en disant que c’est un peu mieux qu’avant. 2019 doit être mieux que 2018 à ce niveau.

Oui je rêve d’un article qui change un coeur. Une phrase qui touche beaucoup de monde. Je rêve de viralité. Mais c’est juste du rêve. Pour cela il faut employer des techniques de marketings que je ne sais pas faire et que je n’ai pas envie de faire. Je préfère l’authenticité.

1500 vues c’est rien du tout en un an c’est vrai mais parmis ces 1500 vues peut être il y a eu une personne qui a pu être aidé par un tuto. Alors oui pour une seule personne cela vaut le coup de passer du temps.

Pour conclure on ne sait pas ce que 2019 va nous réserver. Personnellement je m’attends à des changement historiques. Le Brexit est un exemple d’incertitude. Nombreux ceux qui prédisent la mort de l’Euro. Mais on ne sait pas. ActivityPub et Zot sont aussi des promesses de futur pour avoir un web ouvert et libre facile pour tous.

Bonne année à tous.

Comment mettre à jour hubzilla

Hubzilla est une plateforme sociale multiusage. En plus de l’aspect social on peut faire du CMS, Wiki, calendrier, synchroniser ses contacts, partager et synchroniser ses fichiers et photos etc.. Le tout avec une identité nomade et un grand niveau de sécurité et de confidentialité.

L’identité nomade est la force de cette application. En deux mot votre compte n’est pas lié avec votre url comme c’est le cas pour la plupart des applications sociales. Cela signifie que vous pouvez cloner votre compte à une autre adresse et continuer de l’utiliser sur votre ancienne place ou la nouvelle.

Maintenant voici comment mettre à jour votre hubzilla. La méthode la plus simple est d’utiliser ssh

Allez dans le répertoire racine de votre site puis entrez les trois lignes de codes suivantes

git pull
util/update_addon_repo hzaddons
util/importdoc

Comment installer Peertube avec yunohost

Aprés avoir eu des soucis avec yunohost, j’avais donc réinstaller un serveur tout neuf avec ovh. Le but était d’avoir un serveur mastodon ou pleroma, funkwhale et peertube. Peut être encore d’autres choses mais on verra.

Me voici donc en train d’installer peertube.

Tentative numéro une avec l’interface web

Echec

Tentative numéro deux en ligne de commande

yunohost app install peertube

Echec!!!

Tentative numéro trois : c’est la bonne !!!

Aprés quelques recherches sur le forum de yunohost et ailleurs, je trouve une nouvelle ligne de commande qui peut peut-être réussir

sudo yunohost app install https://github.com/YunoHost-Apps/peertube_ynh

Bravo !!! ça marche

Bon je ne vais pas chercher pourquoi cette commande fonctionne alors que les deux tentatives précédentes n’ont pas marché. Yunohost n’est pas fait pour des administrateurs systéme mais pour Mr Michu.

Etape suivant : comment avoir un accés administrateur

Il faut aller sur le site peertube et cliquer sur lien J’ai oublié mon mot de passe et le changer. L’email donné pendant l’installation est l’email qui sera l’administrateur.

Voilà une fois qu’on a réussi à faire cette installation et se connecter en tant qu’admin on a gagné.

Voilà en espérant que cela serve peut être à d’autre.


15 décembre jour de l’espéranto

Aujourd’hui c’est le 15 décembre et c’est le jour pour écrire un article sur l’espéranto.

La date du 15 décembre est celle du jour anniversaire de la naissance de Ludwik Zamenhof et aussi celle de l’anniversaire de la présentation de sa langue, en 1887.

L’espéranto est la langue internationale. C’est une langue construite à la fin du 19ieme siècle dans le but de faciliter la communication des personnes parlant des langues différentes. L’espéranto n’a pas pour but de remplacer les langues existantes mais d’être une langue en plus. 

Aujourd’hui l’anglais est devenu de facto la langue internationale. Quand vous rencontrer quelqu’un dans un autre pays, la première chose est d’utiliser l’anglais. Mais l’apprentissage de l’anglais n’est pas trés simple et favorise les pays ayant l’anglais comme langue comme les Etats-Unis ou la Grande Bretagne.

L’espéranto se veut une langue facile à apprendre car elle repose sur quelques régles simples et logiques.

Par exemple tous les noms se terminent par o ainsi parolo c’est une parole, les adjectifs se terminent par a (parola veut dire oral), les adverbe se terminent par e (é) donc parole signifie oralement. etc…  Toutes les lettres se prononcent et on écrit comme on prononce. On ne va pas continuer ici avec les règles mais on peut les apprendre comme un jeu. Les racines des mots viennent des grandes langues de l’Europe du 19ieme siècle.

A ce jour le nombre de locuteurs estimé est compris entre 1 et 10 millions. La croissance du nombre de personnes connaissant l’espéranto est trés lente car cette langue n’est pas enseignée à l’école.  Sans un effet de masse, son apprentissage ne sert à rien sauf pour aider à l’apprentissage d’autres langues. Cette langue n’est officiel dans aucune institution internationales ni dans aucun pays sauf dans les associations espérantistes.

Yunohost : comment trouver les identifiants pour postgres ?

Pour la nieme fois, j’ai réinstallé un nouveau système vps avec debian9 yunohost tout neuf.

Tentative d’installation pleroma : ça plante. tient j’avais déjà réussi avant. Bon on va essayer mastodon peut être j’aurais plus de chance.

Oui !! Mastodon s’installe bien.

Yunohost est vraiment bizarre. Quand je dis que c’est une loterie pour être un peu provoquant, je le pense quand même. Une fois j’installe pleroma ça passe et une fois ça passe pas. Une fois j’installe mastodon ça passe pas et une fois ça passe. Je rappelle que yunohost est fait pour des gens qui veulent s’autohéberger et qui n’ont pas ou peu de connaissance informatiques. C’est mon cas.

Bon maintenant j’aimerais maitriser mon système et gérer la base de donnée. J’arrive à installer adminer. (l’autre fois je n’y avais pas réussi). Mais j’ai besoin de trois information

  • Un nom d’utilisateur
  • Un mot de passe
  • Un nom de base de donnée

Comment faire pour avoir ces trois informations. Je n’ai pas eu de compte rendu aprés l’installation. Je sais juste que ça s’est bien passé.

Quand j’ouvre un hébergement chez un hébergeur je reçois un mail avec des identifiants pour accéder à une base de donnée. Avec Yunohost cela devrait être pareil. C’est un peu un hébergement sur son propre serveur.

Comment accéder à la base de donnée. Si quelqu’un aurait une piste ?