La revue de presse hebdomadaire des écosystèmes Java/JEE proposée par Xebia.
Agilité
The Dribbblisation of design
Voici un très bon article qui différencie bien le design visuel du design d’interactions. On y trouve quelques phrases chocs : « Le meilleur travail de conception produit est souvent le plus moche » (je ne sais pas pourquoi je pense à Gmail), « trop de designer travaillent pour impressionner leurs pairs plutôt que pour résoudre de réels problèmes utilisateurs », « beaucoup de personnes qui se proclament UX designer sont plutôt des artistes ou des stylistes mais ils ne font pas de la conception produit ». L’article décrit exactement le problème auquel nous sommes souvent confronté dans les projets digitaux : l’équipe de développement reçoit en entrée une spécification graphique très précise et aboutie mais totalement statique, aucun comportement, aucune histoire utilisateur derrière la masse d’écrans. Mon collègue Yannick Grenzinger me souffle également à l’oreille les principes de Lean UX qui visent à s’éloigner du travail sur le livrable et met l’accent sur la co-conception et les itérations rapides.
Agilité et Lean Startup
Cet article en anglais chez InfoQ nous explique comment Lean Startup s’associe très bien et peut compléter les méthodes de développement agile tout en se concentrant sur les besoins des clients. Par exemple, la partie la plus important d’une Story, « as a user, I want a feature so that benefit », n’est pas la fonctionnalité mais le but business, le bénéfice, qu’on veut atteindre. Or Lean Startup permet de mieux comprendre votre client et ses véritables problèmes. Lean Startup peut aussi aider à améliorer et simplifier votre backlog.
Mobilité
iOS – L’ergonomie et le design d’iOS 7 décryptés
Cet article et cet article font une analyse du nouvel iOS 7, de son design « à plat », et de ses nouvelles interactions gestuelles. Certains considéreront sûrement cette mouture d’iOS comme très bien faîte et pratique, pourtant, elle suppose pas mal de ré-apprentissage pour l’utilisateur final. Notamment, elle peut parfois être moins lisible sur les actions à effectuer au sein de l’interface, ou encore proposer des interactions gestuelles qui peuvent entrer en conflit. Cet article vous permettra d’en apprendre plus sur ces points.
iOS – Variable d’instance ou property ?
Nous nous sommes souvent demandés si – sous iOS – les variables d’instance étaient plus performantes que les propriétés et peut-être que beaucoup d’entre vous connaissent déjà la réponse. En tout cas, cet article par le Big Nerd Ranch donne une couverture approfondie sur la question et fournit une analyse qui tient compte de l’introduction d’iOS 7.
Android – Espresso disponible en developer preview
Espresso, l’outil créé et utilisé par Google pour tester l’interface utilisateur de la plupart de ses applications Android (Drive, Maps, G+…) est enfin sorti et mis à disposition des développeurs.
Espresso permet d’écrire facilement des tests d’interfaces (black-box et white-box) lisibles, fiables et rapides. Ci-dessous un exemple de sa syntaxe, où l’on demande au système de saisir une valeur dans un champ company_name, pour ensuite cliquer sur le bouton de confirmation :
onView(withId(R.id.company_name)).perform(typeText(« Xebia »));
onView(withText(« Confirm »)).perform(click());
Big Data
Apache annonce la première version stable de Hadoop 2
Apache Hadoop 2.x est désormais Generally Available avec la release de la version 2.2.0.
Les avancées majeurs de cette version sont :
- YARN : La nouvelle version de MapReduce
- Haute Disponibilité pour la NameNode dans HDFS (qui élimine un Single Point of Failure)
- HDFS Federation, qui permet la scalabilité horizontale des metadonnées de HDFS
- Le support des Snapshots pour HDFS qui va faciliter la gestion des backups d’un cluster Hadoop
- Le support de NFSv3, qui permet à HDFS d’être monté comme n’importe quel autre file system.
- La compatibilité descendante pour les jobs MapReduce de Hadoop v1
- L’amélioration des performances
- La possibilité de faire tourner Hadoop v2 sous Windows
Pour aller plus loin, vous pouvez consulter la documentation à cette adresse : http://hadoop.apache.org/docs/r2.2.0/
Hive 0.12
Hadoop MapReduce est une formidable opportunité mais encore faut-il choisir le bon niveau d’abstraction. Cascading, Pig et Hive sont trois solutions matures permettant d’écrire simplement vos jobs MapReduce. La semaine dernière nous vous avions informé de la dernière release de Cascading et Pig. Cette semaine, c’est au tour de Hive avec la version 0.12. Le détail est fourni dans la release note. Il ne semble pas y avoir de résumé haut niveau mais il y a cependant deux points à retenir :
- travail sur HCatalog : l’ouverture aux autres projets de l’écosystème du metastore Hive où sont stocker les définitions des tables, c’est à dire l’adresse des fichiers et leurs formats, lorsque les données manipulées sont sur HDFS
- phase 2 du projet Stinger : une initiative pour améliorer les performances mais aussi l’utilisation de Hive