Il y a 9 ans -
Temps de lecture 9 minutes
Revue de Presse Xebia
La revue de presse hebdomadaire des écosystèmes Java/JEE proposée par Xebia.
Agilité
Ai-je besoin d’un Scrum Master **et** d’un Coach Agile ?
Dans les organisations qui s’apprêtent à implémenter Scrum comme méthode agile, sans expérience préalable, la « Certification » peut paraître comme le mot magique qui va ouvrir la porte du Nirvana Agile à coups de 2 jours de formation.
Ceci est malheureusement une illusion. D’autant plus que l’agilité est plus qu’une méthode, une approche, des outils. C’est aussi et surtout une culture, un éloignement tout aussi non négligeable que bénéfique par rapport aux manières classiques de travailler.
Toutefois, devenir agile ne veut pas non plus dire devenir dépendant de « ceux qui savent ».
Dans son billet traitant des besoins d’accompagnement par un Scrum Master et/ou d’un Coach Agile, David March apporte quelques bonnes clarifications sur les différences entre les deux rôles et quelques éléments encadrant une intervention réussi.
Réduire votre dette de process
Nous connaissons tous la dette technique mais n’y aurait-il pas une dette lié au processus ? Si vous avez accumulé des solutions bizarres au fil des ans et jamais pris la peine de faire les choses efficacement, vous allez surement payer les « intérêts” en termes de temps et donc la performance et la capacité d’adaptation de votre entreprise. La dette de processus serait l’équivalent business de la dette technique. C’est beaucoup de complexité inutile.
Mais alors comment gérer cette dette de process ? L’auteur de cet article conseille de travailler sur ces axes :
- Clarifier la stratégie jusqu’à ce que soit complètement évident
- Supprimer les processus inutiles et automatiser ceux qui sont utiles
- Éliminer les dépendances entre les projets
- Réduire le nombre de variables, en enlevant les détails inutiles
- Lorsque c’est possible, éliminer l’engagement trop rapide sur le planning ou le budget
- Donner à chaque personne les moyens de s’exprimer
En réduisant la dette liée aux processus, vous augmentez votre capacité à livrer votre produit, vous réduisez le nombre d’erreurs et vous augmentez le morale de vos employés.
Le métier de coach expliqué en 4 min
Le métier de coach est souvent difficile à comprendre, encore plus à expliquer.
Cette vidéo a le mérite d’être claire sur le processus de coaching qui est détaillé en 5 étapes.
Le coaching est un accompagnement, sur un terrain d’expérimentation, offrant des moyens pour dépasser un obstacle ou passer à la vitesse supérieure.
10 things to drive your product owner crazy
Ce court billet est une petite gourmandise : il vous donne 10 trucs pour désespérer votre Product Owner. Vous l’avez compris, via le comique d’exagération, l’auteur vous alerte sur 10 comportements à proscrire dans une équipe Scrum.
L’auteur insiste sur l’importance de la transparence vis-à-vis du PO, de vous assurer qu’il est présent à TOUS les cérémonials (répétez après moi : TOUS), de communiquer.
C’est basique, rien de neuf sous le Soleil, mais revoir ses gammes de temps en temps a toujours du bon…
Mobilité
Les Chrome Apps arrivent sur iOS et Android
Les Chrome Apps ne cessent d’évoluer. Autrefois de simples extensions pour le navigateur Chrome, elles peuvent maintenant fonctionner en mode déconnecté, avoir un look-and-feel natif (selon la plateforme) et être lancées directement depuis un ordinateur via l’App Launcher. Et maintenant ? Elles arrivent sur mobile.
Google vient de sortir une chaîne de compilation permettant d’embarquer ses Chrome Apps dans un conteneur natif iOS et/ou Android (à l’aide de Cordova). Les applications Chrome pour mobile pourront alors utiliser à la fois les APIs de Chrome mais aussi celles supportées par la plateforme Cordova.
Plus d’informations sur le blog du projet Chromium.
Android – Protégez les données sensibles de vos utilisateurs en les chiffrant à l’aide de Conceal
Étant très confronté à des problématiques de performance et de protection de la vie privée de ses utilisateurs, Facebook a développé Conceal, une librairie pour Android permettant de chiffrer tout type de données. Cela permet à Facebook de mettre en cache les photos de ses utilisateurs en les stockant (dans un format chiffré, illisible par les applications malicieuses) sur l’espace de stockage du téléphone.
Conceal n’est pas un tout nouvel algorithme de chiffrement mais plutôt une version allégée d’OpenSSL. Alors que la librairie originelle prend environ 1MO une fois compilée pour armv7, Conceal ne prend que 85ko.
En plus d’être bien plus performante par rapport aux solutions de chiffrement Java actuelles (BouncyCastle…), Conceal est très simple d’utilisation : la méthode getCipherInputStream prend en paramètre un InputStream chiffré et retourne un InputStream déchiffré ; la méthode getCipherOutputStream fait l’opération inverse en utilisant des OutputStream.
Web
Comment centrer un élément en CSS ?
S’il y a bien une question récurrente quand on crée les feuilles de style d’un site web c’est comment réussir à centrer ce ****** d’élément ! Cette question qui peut sembler triviale ressort régulièrement car contrairement à vos premiers espoirs un vertical-align: middle associé à un text-align: center ne suffiront pas, il faudra aller jouer avec divers paramètres en premier lieu margin: auto. Cette page regroupe un certain nombre de pistes pour centrer un élément et, si vous avez du temps, vous pouvez même lire le débat sur hackernews.
Au pire, si vous êtes vraiment bloqué, il y a toujours cette librairie Javascript (mais bon je la garderais en tout dernier recours) ou alors essayer le nouveau composant Flexbox qui est très prometteur mais qui se retrouvera confronté au classique problème de la compatibilité IE.
Le coin de la technique
The Failures of « Intro to TDD »
Dans cet article, Justin Searls nous expose les 6 erreurs commises par le praticien de TDD naïf, tout frais sorti d’un kata d’initiation :
- la complexité du développement initial du composant,
- le refactoring nécessaire pour découper ce composant en petites entités,
- l’écriture de tests de caractérisation pour ces entités, paradoxale pour du TDD,
- la duplication de code de test qui découle des tests de caractérisation,
- la perte de l’aspect non régression lors de la déduplication des tests,
- l’utilisation abusive des mocks pour tester la collaboration des entités.
Ce processus aboutit à un système modulaire et soigneusement conçu, mais au prix de plusieurs étapes de refactoring coûteuses sur le code et sur les tests.
L’auteur propose une approche plus directe pour aboutir au même résultat. Elle consiste à décomposer progressivement le problème en entités logiques, sans dépendance externe et donc aisément testables, et en entités de collaboration, qui ne font qu’enchaîner les appels aux entités logiques. Elémentaire, mais articulé clairement avec de « jolis » diagrammes.
DevOps
Serf – Découverte de services et orchestration
Aujourd’hui je viens de découvrir le nouveau projet d’HashiCorp (auteur des excellents Vagrant et Packer): Serf. Le but de cet agent très léger est de créer et de gérer des clusters de machines. Il permet de savoir immédiatement quand une machine arrive dans le cluster, quand celle-ci ne répond plus ou quand elle quitte le cluster et de déclencher des actions en fonction de ces évènements.
Serf est une solution open-source,décentralisée, haute disponibilité et tolérante aux pannes. Le principe de fonctionnement ressemble fortement au protocole gossip utilisé par Cassandra.
Tout ceci est bien beau mais à quoi peut bien servir Serf ? A de nombreuses choses:
- Modifier dynamiquement la configuration d’un load-balancer lors de l’arrivée ou de l’arrêt d’un serveur web. Des outils tels que Puppet permettent également de réaliser cela mais ne sont pas conçus pour réagir aussi rapidement. On reste dans ce cas dépendant de la périodicité d’exécution du client Puppet.
- Mettre à jour les entrées DNS. Plus besoin d’attendre de nombreuses minutes, tout peut être mis à jour en quelques instants !
- Facilite grandement la découverte de services en permettant de savoir de manière fiable quel serveur est en ligne à un instant T
BigData / NoSQL
Cassandra vs. Riak
Cassandra et Riak sont deux bases de données très comparables en terme d’architecture, basées toutes deux sur Dynamo d’Amazon.
Alors en quoi sont-elles différentes ? Je vous propose de jeter un œil sur cet article assez avancé qui vous fera une synthèse globale parlant :
- du modèle de données
- de la réplication multi-sites
- de la résolution de conflits
- de la disponibilité en lecture en cas de panne
- de l’intégrité des données
Commentaire