Types de données répliquées convergentes et commutatives

TL;DR

Une thèse d’informatique traite des types de données permettant de créer des applications distribuées dont les données convergent sans synchronisation à priori. J’ai traduit et vulgarisé ce papier en deux articles.

Lire la suite Types de données répliquées convergentes et commutatives

Types de données répliquées convergentes et commutatives – Partie 2 : Exemples Pratiques

«La cohérence à terme vise à assurer que les répliques d’un objet partagé modifiable convergent sans synchronisation à priori.»

Ce sujet est composé de deux articles : la première partie est théorique. Elle définit les propriétés mathématiques que doivent respecter les types de données répliqués convergentes et commutatives.

La seconde partie de l’article est un portfolio d’exemples pratiques. Y sont présentés les différents types de base et d’autres types plus élaborés.

Partie 2 : Exemples pratiques


Lire la suite Types de données répliquées convergentes et commutatives – Partie 2 : Exemples Pratiques

Types de données répliquées convergentes et commutatives – Partie 1 : Théorie

«La cohérence à terme vise à assurer que les répliques d’un objet partagé modifiable convergent sans synchronisation à priori.»

Ce sujet est composé de deux articles (hors introduction) : une exploration théorique de ce qu’est un type de données répliquées convergent et commutatif. Cette première partie définit les propriétés mathématiques que doivent respecter ces types de données.

La seconde partie de l’article est un portfolio d’exemples pratiques.

Partie 1 : Modèle théorique


TL;DR

Partons du principe que le réseau distribue à la longue les opérations de mises à jour entre tous les nœuds. Les nœuds sont de confiance et peuvent être déconnectés et reconnectés. Les nœuds continuent à opérer pendant les instants de déconnexion.

Plusieurs contraintes sur les opérations possibles sur les objet de ces nœuds garantissent la cohérence à terme des répliques de cet objet partagé sans synchronisation, ni consensus, à priori.

En basant le type de données sur l’état, ces contraintes sont :

  • Associativité : fusion(x, fusion(y,z)) = fusion(fusion(x,y), z)
  • Commutativité : fusion(x,y) = fusion(y,x)
  • Idempotence : fusion(x,x) = x

En basant le type de données sur l’opération, ces contraintes sont :

  • Associativité : op(x, op(y,z)) = op(op(x,y), z)
  • Commutativité : op(x,y) = op(y,x)

Lire la suite Types de données répliquées convergentes et commutatives – Partie 1 : Théorie

« Il y a deux choses très difficiles en informatique: l’invalidation du cache, et nommer des objets » Phil Karlton

« Mal nommer un objet, c’est ajouter au malheur de ce monde » Albert Camus

Je pense avoir trouvé la cause du malheur de ce monde. Peut-on l’appeler le Karlmus ?

eureka

Tout est un remix. Raydio 1978 – Victor Demé 2008 – Synapson 2014.

Ce matin, en appréciant un brunch fraîchement préparé, jouait en fond ma radio de funk préférée (radiomeuh sisi). Quand soudain l’épiphanie ! Je pense avoir trouvé une déclinaison de cette chanson, que j’ai tenté de recréer en direct !

Lire la suite Tout est un remix. Raydio 1978 – Victor Demé 2008 – Synapson 2014.

Planifier un projet innovant

Récemment, nous discutions avec Cédric Carvalho, un ami de l’université, des problèmes rencontrés lorsque l’on travaille sur un domaine nouveau. Un de ces problèmes est qu’il est difficile de prédire finement la date de sortie d’un projet innovant à partir d’un cahier des charges pour de multiples raisons. Le cahier des charges est amené à évoluer au fur et à mesure du développement du projet (méthode agile). De plus, l’estimation du temps de réalisation d’une tâche de programmation est souvent trop optimiste, et ne prend pas en compte les difficultés et opportunités de la réalité. Face à une telle difficulté, pourquoi s’entêter ? Parce qu’une prédiction fine de la date de sortie du projet permet à l’équipe marketing de créer une campagne adaptée, et à l’équipe administrative d’anticiper la trésorerie de l’entreprise.

Cédric m’a conseillé de lire, et j’ai donc lu, Work Rules! (livre en anglais) écrit par Laszlo Bock, le Senior Vice Président of People Operation (Expert vice président de l’équipe management ?) de Google.

De cette discussion dans un petit café a émergé la problématique suivante:

Comment planifier finement la date de sortie d’un projet innovant tout en laissant une marge de manœuvre suffisante à mes collègues pour qu’ils puissent s’adapter aux difficultés et saisir les opportunités ?

Afin de répondre à cette problématique, dans un premier temps (« La culture mange la stratégie au petit déj »), je commenterai une portion de Work Rules!. Ensuite je proposerai deux réponses possibles (Trop de planification tue la planification et Davantage d’informations et d’autonomie) à la problématique.

Lire la suite Planifier un projet innovant

Le Hockey subaquatique

Lors de ma phase de documentation sur le sommeil # polyphasique, j’ai découvert que l’un des auteurs d’un livre sur ce style de vie pratique également un sport atypique appelé Hockey subaquatique.

Au Hockey sub, deux équipes de 6 joueurs + 4 remplaçants s’affrontent pendant 12 minutes. Ce sport d’équipe se joue en apnée, au fond d’une piscine d’une profondeur de 2 à 3 mètres, et au fond de préférence plat. Je m’entraîne avec le club parisien HOPE tous les mercredis.

Lire la suite Le Hockey subaquatique

Horaires de sommeil « Everyman » Break. Pourquoi «gagner du temps éveillé» ?

Dormir est vital.

Le corps humain dispose de moyens puissants pour faire connaitre ses besoins à la conscience. À l’image de la faim qui fait saliver à l’odeur de frites dans les rues bruyantes de la ville, la carence de sommeil déclenche des envies de position horizontale, une aversion pour la lumière, ainsi qu’une irritabilité qui détériore les échanges avec les autres afin de réduire le temps restant jusqu’au lit. Les instincts sont naturels et existent pour une « bonne raison » (pas vrai Darwin ?). Si le corps veut dormir, quel autre choix que de l’écouter ?

Lire la suite Horaires de sommeil « Everyman » Break. Pourquoi «gagner du temps éveillé» ?

Dormir d’un sommeil polyphasé afin de gagner du temps éveillé dans une journée.

  • Conditions de l’expérience : Everyman : comme Uberman en plus gentil. Dormir 3h/3h30 la nuit, puis faire trois siestes de 20 minutes la journée.
  • Motivation : maitriser mon sommeil, publier plus de contenu original sur sérendipiteur.
  • Contraintes : conserver mes activités sociales et sommeil monophasé avec ma compagne. Everyman va s’insérer dans les périodes de solitude uniquement.

(suite…)

Sénèque et le Stoïcisme

Lettres à Lucilius

Lettre 1

  1. Suis ton plan, cher Lucilius ; reprends possession de toi-même : le temps qui jusqu’ici t’était ravi, ou dérobé, ou que tu laissais perdre, recueille et ménage-le. Persuade-toi que la chose a lieu comme je te l’écris : il est des heures qu’on nous enlève par force, d’autres par surprise, d’autres coulent de nos mains. Or la plus honteuse perte est celle qui vient de négligence ; et, si tu y prends garde, la plus grande part de la vie se passe à mal faire, une grande à ne rien faire, le tout à faire autre chose que ce qu’on devrait.

Lire la suite Sénèque et le Stoïcisme

Non, the open source modular DAW for linux.

Non is a modular Digital Audio Workstation. It consist of four modules : Timeline, Sequencer, Mixer, and Session Manager. The suggested workflow is to open Session Manager first, to record and save your session : which modules did you launched ? what actions did you do with them ? etc. This modular setup helps making Non a robust software : if Session Manager doesn’t crash, a process that crashes only means the sound will be disabled until Session Manager restores this process.

Lire la suite Non, the open source modular DAW for linux.