Revue de Presse Xebia

Revue de Presse Xebia

La revue de presse hebdomadaire des écosystèmes Java/JEE proposée par Xebia.

Agilité

Agile Delivery in the Travel Beta; from Scrum to Kanban

La BBC a publié le billet Agile Delivery in the Travel Beta; from Scrum to Kanban pour relater la transition d’une équipe Scrum à un système Kanban.
Cette équipe est partie dans un cadre Scrum pour rapidement sortir un MVP (Minimum Viable Product) en 4 itérations de 2 semaines. Pour améliorer continuellement leur produit sur le site ‘live’, ils ont pivoté en Kanban et nous exposent les raisons de cette transition et les leçons qu’ils ont apprises.

Présentations patterns-agile-performance

Les présentations de Dan North sont toujours un plaisir à écouter. Celle-ci nommée « Accelerating Agile: Hyper-performing without the Hype » ne contredit pas la règle et nous explique comment accélérer l’agilité et réduire le temps de cycle de plusieurs mois à la minute. Dan North nous fait le retour d’expérience du travail d’une équipe ultra-efficace sur une application de trading.

Alors comment est-ce possible d’aller aussi loin dans l’agilité sur une application avec des problèmes complexes ?

En essayant de suivre ces principes :

  • apprendre le métier en mettant dans l’équipe un expert du métier voir en envoyant les développeurs faire le travail du métier (ce qui est aussi une technique de l’ergonomie)
  • ne pas mettre en priorité les fonctionnalités qui ont le plus de valeurs mais les fonctions les plus risquées en terme d’incertitudes liées à la technique ou au métier (ce qui semble contre intuitif)
  • planifier uniquement au besoin donc sur le court terme puis remettre à zéro ce planning (chaque semaine voir chaque jour!)
  • prendre le temps d’essayer d’autres solutions en terme de langage (Scala, NodeJS, Clojure …) ou d’architecture
  • essayer rapidement et directement avec les utilisateurs et faire des démos très régulières (on est clairement dans l’esprit Lean Startup)
  • construire des petits éléments séparés plutôt qu’une grosse application (pour l’avoir vu en action sur un vrai projet cette pratique est très efficace). Il faut d’ailleurs faire attention « Ne pas se répéter » (ou DRY) peut être l’ennemi du découplage (ou séparation des éléments)
  • déployer unitairement ces petits éléments de logiciel
  • préférer la simplicité plus que la facilité (et si vous ne voyez pas de différences entre les deux allez de suite voir cette conférence)
  • poser la question: est-ce que ce framework est réellement nécessaire ?
  • partager la passion: pair programming, Brown Bag lunch, Code review, Accueillir avec sympathie les nouveaux smile
  • être ok avec l’échec: développement de produit plus que livraison d’un projet, le progrès est une série d’expérimentation, Échouer rapidement pour apprendre rapidement

Cerise sur le gâteau de cette présentation, Dan North nous présente ces bonnes pratiques sans les enrober de marketing Agile smile

LKF 2013 : La prédictibilité ou comment tenir ses promesses par Yannick Quenec’hdu

Lors du Lean Kanban France Yannick Quenec’hdu a présenté un retour d’expérience sur la mise en place de la prédictibilité en Kanban et les bénéfices obtenus, dans le cadre d’une transformation Agile à grande échelle.

Si vous n’avez pas eu la chance d’assister à cette présentation, voici les slides présentés.

Mobilité

iOS 7 et Dynamic Type : présentation et implémentation

iOS 7 a apporté son lot de nouveautés. De nombreuses nouvelles APIs relatives au texte (Text Kit) sont accessibles par les développeurs mais aussi de nouvelles options sont directement exposées à l’utilisateur final. C’est le cas de la fonctionnalité appelée « Dynamic Type » qui permet aux utilisateurs de choisir une taille de texte qui sera utilisée à travers l’ensemble des applications iOS (à conditions qu’elles prennent en compte ce paramètre).

Une présentation plus détaillée de cette fonctionnalité et des points sensibles à prendre en compte lors de son implémentation est disponible dans cet article.

Hadoop

Cascading 2.2

Cascading est une API de référence pour écrire des flows complexes de jobs MapReduce simplement. Il y a plus d’un an, nous avions vu son fonctionnement. Et mardi dernier, le 8 octobre, la version 2.2 fut annoncée. On retiendra trois points.

  • Le typage maintenant possible des champs (documentation). Cela permet une meilleure intégration avec les sources et sinks de données utilisant un schéma. Certains types d’erreurs sont plus facilement détectables et Cascading peut désormais faire de la coercion en fonction de règles fournies par le développeur : par exemple, transformer une date en long.
  • La généralisation des ExpressionFunctions et filters à plusieurs lignes de script, potentiellement utile en attendant java 8 mais à utiliser avec parcimonie.
  • Le support du CombineFileInputFormat afin de traiter beaucoup de petits fichiers de façon « optimale », tout en sachant bien sur que la véritable solution reste de préférer un petit nombre de gros fichiers à un grand nombre de petits fichiers.

Pig 0.12

Pig est une des autres références pour construire des flows complexes de jobs MapReduce tout en ne manipulant pas directement une API Java. La version 0.2 vient juste de sortir (le 14 Octobre).

  • Le support d’avro a été complétement revu. (PIG-3015) Il n’est désormais plus inclus dans une librairie tierce (piggybank) mais packagé directement avec la distribution standard de pig. C’est également une nouvelle implémentation, plus simple, utilisant une version d’avro plus récente et plus rapide. Bref, c’est en soi la raison majeure pour migrer vers cette nouvelle version de pig.
  • L’ajout d’une commande assert va permettre de garantir qu’une condition est toujours valide. C’est bien sur à utiliser avec précaution car cela arrête le traitement.
  • L’opérateur case permet de simplifier l’écriture d’opérateurs ternaires imbriqués. C’est simplement une simplification de syntaxe.
  • Le support de BigInteger et BigDecimal permet de traiter plus facilement des nombres avec une précision arbitraire.

Hivemall : Machine Learning avec Hive

Mahout est la librairie la plus connue pour faire de la recommandation, de la classification ou encore du clustering en utilisant Hadoop. Si on regarde sous le capot, l’ensemble est bien sur implémenté directement en utilisant l’API java « de base » de Hadoop MapReduce. Pour toutes utilisation un peu complexe d’Hadoop, il est souvent pertinent d’utiliser une abstraction plus haut niveau, que cela soit Pig, Hive ou encore Cascading. Pour Twitter, un job de machine learning est simplement un script Pig parmis d’autres, selon la publication SIGMOD 2012 de Jimmy Lin et Alek Kolcz. Deux chercheurs japonais, Makoto YUI et Isao KOJIMA se sont intéressés à une approche hybride utilisant à la fois une base de donnée et Hadoop (IEEE 2nd International Congress). Récemment, le 2 octobre, le travail fait sur Hadoop a été publié sous le nom de Hivemall, fournissant un ensemble de points d’extensions (UDFs/UDAFs/UDTFs) pour faire de la classification et de la régression avec Hive. Pour ceux souhaitant un support plus visuel, les slides de la conférence sont également disponibles.

Hadoop User Group, c’est ce soir!

C’est la rentrée pour le Hadoop User Group. Pour tous ceux intéressés par Hadoop et son écosystème, rendez vous ce soir (le mardi 15 octobre) à partir de 18h30.

Au programme :

  • « Hadoop 2 and YARN » par M.C. Srivas (CTO at MapR)
  • « Elastic Search et Hadoop » par Costin Leau (Hadoop Senior Developer at Elasticsearch.com)
  • « SQL et in-memory sur Hadoop avec Pivotal et HAWQ » par Alexandre Vasseur (Team Lead Field Engineer at Pivotal) et Jérôme Campo (Field Engineer at Pivotal)

Les places sont, comme toujours, limitées. Inscrivez-vous afin d’être certain de pouvoir y participer.

Publié par

Publié par Xebia France

Xebia est un cabinet de conseil international spécialisé dans les technologies Big Data, Web, les architectures Java et la mobilité dans des environnements agiles. Depuis plus de 15 ans, nous avons la volonté de partager notre expertise et nos actualités à travers notre blog technique.

Commentaire

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Nous recrutons

Être un Xebian, c'est faire partie d'un groupe de passionnés ; C'est l'opportunité de travailler et de partager avec des pairs parmi les plus talentueux.