Il y a 8 ans -
Temps de lecture 10 minutes
Revue de Presse Xebia
La revue de presse hebdomadaire des technologies Big Data, Cloud et Web, architectures Java et mobilité dans des environnements agiles, proposée par Xebia.
Agilité
Agilité & DévOps @ Voyages-sncf.com – YouTube
Voici une belle vidéo à la mode « Spotify » qui explique de manière simple et ludique les différentes étapes de la transformation Agile de Voyages SNCF depuis 2012.
Cette histoire est un exemple logique d’évolution de maturité agile d’une grande entreprise confrontée à de nouveaux enjeux économiques qui passent forcément par une transformation culturelle et organisationnelle forte centrée sur le produit.
Enjoy.
The Five Poisons of Big Company Disease
Cet article nous présente les 5 poisons des grandes entreprises tels qu’ils sont vus par Toyota :
- La perte de contact avec les clients
- Le désengagement des personnes
- Dépenser de l’argent dans des choses idiotes (comme les réunions ou des machines flambant neuves)
- L’héritage technique
- L’empreinte écologique.
Pour l’auteur de cet article, le Lean consiste avant tout à combattre ces 5 poisons.
Ten Benefits of Flow
Dans son court article, Bob Marshall (un féru de lean) mets en avant 10 bénéfices d’un fonctionnement en flow bien rodé : comme l’amélioration de la prédictibilité, la meilleure réactivité au changement, et un bien être amélioré pour les membres de l’équipe.
Mobilité
Rétrospective détaillée sur la refonte de l’application SoundCloud
Michael Nino Evensen, designer chez Soundcloud, nous explique dans cet article détaillé comment l’équipe a procédé pour refondre totalement l’application iOS.
L’article raconte le chemin complet qui a permis à l’équipe de repenser le produit en se concentrant sur l’expérience utilisateur, et comment elle a utilisé des gestures plus adaptées au mobile pour améliorer grandement l’application. Une excellente étude de cas dans la refonte d’un produit mobile, pensée mobile first.
Après le rachat de Testflight par Apple, celui d’HockeyApp par Microsoft…
Vous vous en souvenez sûrement, nous évoquions le rachat de testFlight par Apple en début d’année. Cela avait fait grand bruit, car cela annonçait dans le même temps la fin du support des applications Android dans cet outil de Mobile Application Management (MAM).
Bien cette fois-ci, c’est au tour d’HockeyApp d’annoncer son rachat par Microsoft. On y apprend que le support des applications iOS et Android va perdurer, ce qui est une bonne nouvelle pour ceux qui avaient pris l’habitude de centraliser la gestion des crashs de leurs applications mobiles ainsi que leur déploiement en bêta au sein d’un même service. On y apprend également une intégration avec Visual Studio Online, ce qui va permettre à Microsoft de disposer d’une solution étoffée et multi-plateforme à destination des entreprises.
Google aime les développeurs iOS
Google va proposer une nouvelle web-série sur sa chaîne Google Developers à destination des développeurs iOS. Nommée Route 85, elle présentera des outils made-in Google que les développeurs iOS pourront utiliser dans leurs applications.
La vidéo d’introduction de Route 85 est d’ores et déjà disponible.
Craftsmanship
Une autre manière de nommer ses classes et méthodes de test
Sandro Mancuso nous présente dans cet article de blog sa façon de nommer les classes et méthodes de test, lorsqu’il commence un nouveau projet.
L’objectif principal restant d’exprimer le plus clairement possible le comportement que l’application doit avoir à travers les tests.
Beaucoup de discussions ont déjà eu lieu à ce sujet et l’on connaît tous différentes implémentations possibles (suffixer la classe de test par « Test », et préfixer les méthodes par « test », « should » ou « have_to_ », par exemple BankAccountTest.should_have_balance_of_zero_when_created()).
Ici, l’approche consiste à suffixer la classe de tests par « Should » (par exemple : BankAccountShould), et commencer le nommage des méthodes de test toujours par un verbe (exemple : have_the_balance_increased_after_a_deposit()).
Le contenu des méthodes, quant à lui, reste de type « given – when – then ».
L’approche est intéressante et permet d’éviter une redondance peu nécessaire au niveau du préfixe des méthodes.
La théorie des catégories pour les développeurs – Craftsmanship
La théorique des catégories provient d’études mathématiques. Elle est intimement liée à la programmation fonctionnelle et fournit bien des outils extrêmement utiles pour tout développeur qui souhaite construire une API complexe. Et pourtant, son contenu est souvent bien difficile d’accès pour tout ceux qui n’ont pas déjà un doctorat en mathématiques.
Bartosz Milewksi a commencé dernièrement une série d’articles sur son blog pour nous aider à comprendre certains concepts de base. Après une préface sur la théorie des catégories, il nous propose de comprendre l’essence même de la composition ou encore la définition des types et fonctions.
Bonne lecture à tous.
Functional and Reactive Domain Modeling – Craftsmanship
Debasish Gosh a débuté avec l’éditeur Manning l’écriture d’un livre sur les techniques de modélisation de structures de données immuables et réactives. Un Early Access Program est possible. Moyennant quelques dizaines d’euros, vous avez accès à la préface et la première partie décrivant l’intérêt d’utiliser Scala pour la modélisation de domaine. On attend avec impatience les autres sections sur CQRS, l’EventSourcing, les patterns fonctionnels les plus utiles ou encore les structures de données pour des architectures réactives.
Front
Maelstrom, ou le navigateur selon BitTorrent
Bittorrent la société derrière le protocole peer-to-peer (P2P) du même nom a annoncé le lancement de son navigateur internet jeudi dernier. Ce dernier aura la particularité comme on pouvait s’y attendre, d’utiliser le protocole peer-to-peer pour surfer sur le web. Concrètement, toute personne utilisant le navigateur devient miroir de site web et donc partage automatiquement tous les sites qui parcours avec le reste du réseau. Au delà du gain potentiel en terme de performance et de résistance à la panne, ce navigateur apporte une approche radicalement différente de celle actuelle car il permettrait de s’affranchir en grande partie de serveurs centraux pour donner accès à un Internet distribué !
Actuellement en version Alpha il est disponible uniquement sur invitation ici.
Back
Big data streaming with Akka @ Intel
Vu aujourd’hui sur le site de typesafe, Le Big Data pole de Intel prépare un systême de streaming Big Data nommé GearPump.
La description est sommaire:
« GearPump is a lightweight real-time big data streaming engine. »
Mais le projet se veut ambitieux, il s’agit rien de moins que de profiter des performances phénoménales de Akka pour réaliser un systême de streaming Big Data à haute-vitesse.
Les premiers retours sont alléchants avec 11 million de messages par seconde (100 octets par message) avec chacun 17 millisecondes de latence sur un cluster à 4 noeuds.
Voici encore la preuve que Java est une plateforme à haute-performance, permettant de faire ses preuves dans une logique de traitement temps réel de données à haute volumétrie.
La description de l’architecture est ici
Data
Hortonworks entre en bourse et ça démarre très fort
Hortonworks, un des trois principaux fournisseurs d’une distribution Hadoop (avec Cloudera et MapR) est entré en bourse vendredi dernier. Cette introduction a permis de récolter 100 millions de dollars après en avoir levé 150 millions au printemps dernier. Tout d’abord estimé entre 12 et 14 dollars, le prix initial de l’action a finalement été fixé à 16 dollars. Plus d’informations ici : http://www.lemondeinformatique.fr/actualites/lire-hortonworks-s-introduit-en-bourse-et-leve-100-m$-59593.html
Et le moins que l’on puisse dire c’est que le succès est au rendez-vous. Après une journée, l’action s’élevait à 26,38 dollars, soit un hausse de 64,87% (!) (http://finance.yahoo.com/q?s=HDP).
Si Hortonworks est le premier fournisseur Hadoop à entrer en bourse il ne devrait pas le rester très longtemps, ses deux concurrents ayant prévu de leur emboîter le pas très rapidement.
Le coin de la technique
Le Tech’Radar nouveau est arrivé
L’éditeur Thoughtworks a publié cette semaine ses tendances dans la mouture 2015 du TechRadar. Voici les quelques éléments qui ont retenu notre attention
- Docker ainsi que Boot2Docker passent en Trial
- Cursive, un plugin d’Intellij pour Clojure ou encore un étonnant REPL graphique pour Clojure nommé Gorilla, pratique pour écrire du code qui manipule des données edans ce langage et les affichés sous forme de graphe immédiatement.
- ReactJS fait son entrée dans la catégorie Assess
- Le gestionnaire de ressources matériels Apache Mesos fait aussi son entrée en catégorie Assess
- Un hommage au portefeuille de projets open-source de Netflix. Sans recommandé l’utilisation de tous les composants, elle est jugée pleine de bonnes idées. Certains outils sont cependant plus ou moins facile à utiliser indépendamment des autres.
Le coin de l’Alliance
Thiga
Une perspective triste pour un produit qui, malgré le fait qu’il apporte une réponse aux orientations globales du trafic aérien (en croissance avec des problèmes de congestions) pourrait paradoxalement avoir du mal à trouver son marché.
http://www.geek.com/news/airbus-may-scrap-the-worlds-largest-passenger-plane-the-a380-1611568/
Commentaire
5 réponses pour " Revue de Presse Xebia "
Published by Xavier Goblet , Il y a 8 ans
Concernant le paradigme « Reactive … », outre le livre de Debasish Gosh, il faut noter le démarrage de 2 autres livres dans ce domaine chez le même éditeur: « Reactive Application Development » http://www.manning.com/devore/ et « Reactive Design Patterns » http://www.manning.com/kuhn/
C’est un sujet brûlant, au moins chez Manning! et qui sortira gagnant dans le lot?
Published by Jean-Christophe Narwa , Il y a 8 ans
» comme on pouvait SI attendre »
Published by Christophe L , Il y a 8 ans
Debasish Gosh; dans la modélisation de domaine avec Scala; énonce l’avantage d’avoir des objets immuables dans un environnement multi-thread; et donne en exemple via la classe Balance qui représente une abstraction de compte bancaire. Or, cet objet étant, dans la vie réelle, modifiable; on transforme le problème d’avoir un objet non immuable (donc posant le problème de modifications parallèles) par le problème d’avoir plusieurs instances représentant un seul objet réel (quand je retire 100 $ de mon compte, ça ne crée pas un nouveau compte) et de savoir quelle instance représente l’état courant.
Et si je mets un identifiant à la classe Balance, je me retrouve avec plusieurs instances avec le même id et des états différents.
On déplace le pb … non ?
Published by Xavier Bucchiotty , Il y a 8 ans
@Xavier Goblet
Effectivement, je suis aussi avec attention ces deux livres, j’ai déjà acheté « Reactive Design Pattern » en MEAP :-)
Published by Xavier Bucchiotty , Il y a 8 ans
@Christophe L
Le fait de passer par des structures immuables permet d’avoir la possibilité d’apporter une réponse « métier » à un problème de concurrence.
Si un même objet est modifié par deux threads différents, il se peut que l’objet au final se retrouve dans un état qui ne soit ni correct du point de vue du thread1, ni correct pour le second. Cet objet est alors corrompu, plus aucune réponse correcte peut y être apportée. Pire, on a perdu le cheminement d’événements qui nous a mené à cet état.
Alors qu’une structure immuable donnera en effet deux instances différentes, chacune d’elle sera correcte du point de vue du thread qui l’aura créée. Ensuite, le merge doit souvent soulever une vraie problématique métier. Oui, cela doit se coder, ce n’est pas magique.
C’est ce qu’il se passe avec GIT. Les modifications sont une suites de changements immuables. Le merge peut très bien se passer, et dans quelques rares cas, l’intervention manuelle peut être demandée en cas de conflit.
De mon point de vue, le problème n’est pas déplacé, mais soulevé :-)