Debrief : Devoxx BE 2017

Devoxx Belgique

Après notre article sur Mix-It 2016, Malek et moi renouvelons l’exercice cette année en vous faisant un debrief de Devoxx Belgique 2017 ! Pas grand-chose à dire pour présenter cet événement incontournable pour les devs javaistes que nous sommes. Il s’est bien démocratisé depuis sa création en 2001 par le BeJUG, ce qui fait que l’équipe Devoxx est maintenant très bien rodée à cet exercice. Pour cette 16ème édition, l’enchaînement des conférences s’est donc fait sans accro dans ces immenses salles de cinéma aux sièges spacieux et confortables du Kinepolis d’Anvers.

De plus, comme depuis l’année dernière, toutes les vidéos des conférences étaient disponibles dès le lendemain sur YouTube. Et nouveauté cette année, elles étaient également diffusées en direct !

Alors évidemment, niveau logistique, on ne peut pas vraiment avoir la qualité d’un petit Mix-It bien convivial avec des stands de crêpes. Il faudrait beaucoup trop de stands, avec 3500 ventres sur pattes à nourrir ! Heureusement, il y a quand même les boissons et le café à volonté.

Mais assez parlé de victuailles : voici une sélection de nos conférences préférées parmi celles auxquelles nous avons assisté. Bonne lecture !

Devoxx 2017 Banner

Malek Sahnoun et Damien Morellet

Mercredi 8 Novembre

Keynotes d’ouverture

Après la traditionnelle introduction par Stephan Janssen, c’était au tour de Mark Reinhold et Brian Goetz de nous présenter brièvement les principales nouveautés de Java 9, qui seront détaillées ensuite dans les multiples conférences sur le sujet. Mark a également expliqué le choix final du nommage des futures versions de Java. Ainsi le format YY.MM a donc finalement été abandonné au profit de 10, 11, 12…

Ensuite nous avons enchaîné sur une présentation de Derek Mathieson, un chercheur du CERN qui nous a présenté de manière humoristique l’évolution de l’IT dans cette organisation, notamment autour du projet d’accélérateur de particules.

Puis en fermeture, une présentation de Kevlin Henney un peu décalée pour faire réfléchir les développeurs sur leur métier.

Les vidéos :

Moving Java Forward Faster (by Mark Reinhold and Brian Goetz)

CERN, from an IT Perspective by Derek Mathieson

Move Slow and Mend Things by Kevlin Henney

La fiche Devoxx

A year of mob programming – tips and tricks

Par Tommy Tynjä

Cette présentation était un retour d’expérience d’une équipe qui a testé la technique du mob programming pendant 1 an. Le speaker nous a expliqué les principales difficultés rencontrées. Éviter que tout le monde ne parle en même temps n’était pas si facile par exemple… Les autres points soulevés concernaient l’obligation de mobiliser une salle de réunion tout le temps ou les techniques pour éviter l’ennui ou la fatigue durant des sessions qui peuvent parfois durer toute la journée.

Ainsi, il préconise l’utilisation d’un timer de 6-8 minutes pour faire tourner la personne qui pilote (c’est-à-dire celle qui a le clavier), et de faire une pause quand tout le monde est passé, un peu comme du pomodoro.

Il est également possible que tout le monde ne soit pas tout le temps en train de suivre le pilote, afin de pouvoir faire quelques tâches en parallèle à ce moment-là (recherches, travail sur un bout de code, etc.), toujours dans le but de gagner en efficacité.

Globalement, ils ont mesuré une augmentation de leur productivité (nombre de tickets traités et de déploiements). Ceci s’explique, selon le speaker, par le fait que l’information est constamment partagée et qu’au final les réunions sont devenues moins nécessaires, de même que le code review. L’équipe avance un peu comme un bulldozer !

Bien évidemment, pour que ça fonctionne il faut que tous les membres de l’équipe se forcent à respecter certaines règles qui peuvent être affichées dans la salle : par exemple, utiliser un OS en particulier, essayer de ne pas être plus de 5 par session, faire du vrai TDD, etc. Et le tout de préférence dans la bonne humeur.

La vidéo

La fiche Devoxx

Modular Development with JDK 9

Par Alex Buckley

Une bonne présentation pour se faire une meilleure idée du système de modules apporté par Java 9.

En gros, c’est un mélange de modules partagés (et accessibles en dehors du module courant) et de modules privés. Ce système de module permet également, avec une analyse de résolution, de n’importer qu’une seule version d’une dépendance si elle est utilisée en plusieurs endroits. Alex nous expliqua également comment faire une migration d’un projet existant vers ce système, avec quelques astuces au passage.

La vidéo

La fiche Devoxx

Zen Habits of using IntelliJ IDEA

Par Victor Kropp

Victor, développeur chez JetBrains, a présenté les raccourcis et les astuces qui permettent de faciliter et d’améliorer la productivité des développeurs qui utilisent les outils de Jetbrains, notamment Intellij, webstorm, pycharm, etc.

La vidéo

La fiche Devoxx

10 tips to become an awesome Technical Lead

Par Bart Blommaerts

La présentation débutait en posant quelques bases sur ce qu’est le “technical leadership” et le rôle d’un technical lead : guidage technique, gestion des risques, coaching et communication. S’en suivit un rappel sur l’importance du partage de la responsabilité et de la connaissance au sein d’une équipe. Bart Blommaerts poursuivit ensuite par d’autres recommandations comme bien partager son temps entre la partie technique et le management, mais également sur le fait de toujours chercher à améliorer les choses dans son équipe, ce qui revient parfois à se mettre à la place des développeurs et à creuser, même s’ils disent que tout va bien.

Hofstadter’s law :

” Ca va toujours prendre plus longtemps que prévu, même si on prend en considération la loi de Hofstadter.”

Également au programme de cette présentation : comment gérer les problématiques d’estimation de charge, le travail de mentoring, l’importance de la diversité au sein de l’équipe, savoir s’entourer d’autres tech leads pour échanger ses expériences avec eux, s’impliquer dans le recrutement de nouveaux développeurs, et ne pas oublier de passer de bons moments avec les membres de l’équipe.

Je vous invite à regarder cette vidéo très riche d’enseignements !

La vidéo

La fiche Devoxx

Jeudi 9 Novembre

Spinnaker – get control over your deployments

Par Gard Rimestad et Matthew Duftler

Gard Rimestad, contributeur actif sur Spinnaker, et Matthew Duftler, ingénieur logiciel chez Google, nous ont présenté cette plateforme de continuous delivery. Gard a commencé par expliquer le pipeline de Spinnaker, qui est composée en plusieurs “stages” et chacun contient un ensemble de tâches. Ensuite, Matthew a présenté différentes stratégies de déploiement en faisant une démo de Spinnaker avec Jenkins (Spinnaker supporte Jenkins et Travis)

À la fin de la présentation, Gard conseillait d’utiliser Halyard qui est un outil interactif permettant de créer facilement et rapidement une configuration de Spinnaker.

La vidéo

La fiche Devoxx

Polishing the Diamond: Core Library Improvements in Java 9

Par Richard Warburton et Raoul Gabriel Urma

Une présentation sans slides ! En effet, pas besoin de slide alors qu’on peut se servir du nouveau REPL de Java 9, aka Jshell, pour afficher le sommaire, puis montrer toutes ses nouveautés directement en live, le tout avec une bonne dose de fun !

La vidéo

La fiche Devoxx

Angular vs React Smackdown

Par Matt Raible et Deepu K Sasidharan

Matt (pro Angular) et Deepu (pro React) ont fait une présentation pour comparer React à Angular.

Ils ont commencé par l’historique des 2 technologies en donnant 2 exemples de “Hello World” et sur ce point React était le gagnant vu qu’il nécessitait beaucoup moins de code qu’Angular.

Ensuite, chacun a parlé des avantages et des inconvénients de chaque technologie. Il ont évoqué le fait qu’on ne pouvait pas vraiment comparer Angular (Framework) à React (librairie). Il faut plutôt prendre en compte React & friends (un ensemble de librairies tierces comme Redux, React Router..)

À la fin de leur présentation, ils ont donné leurs recommandations pour bien choisir entre React et Angular pour un nouveau projet suivant les besoins et les contraintes. Par exemple, si l’application a beaucoup de state à gérer, React serait l’idéal. Si on voulait une structure et une organisation de code universelle, Angular serait bien, par contre pour avoir plus de flexibilité sur la structure du projet, il faudrait partir sur React.

La vidéo

La fiche Devoxx

Common API security pitfalls

Par Philippe De Ryck

L’évolution des applications Web et mobile a déclenché une explosion des API REST facilement accessibles. Philippe, conférencier et formateur professionnel sur la sécurité (logiciels et Web), évoqua dans cette présentation les failles les plus courantes dans les API REST. Il donne comme exemple quelques pièges classiques en matière de sécurité des API, notamment le fait de leur donner un accès illimité. Il vaut mieux mettre en place un système pour limiter l’accès à une API, via une IP donnée, un compte utilisateur, etc.

Il aborda ensuite les JWT (JSON Web tokens) pour l’authentification, en soulignant le danger des cookies, vu qu’ils sont présents dans toutes les requêtes, même celles externes à l’application (par exemple pour récupérer une image), d’où le risque d’envoyer des données sensibles (ex : session) à des parties extérieures à l’application.

Je vous invite à regarder la vidéo pour en savoir plus sur les différentes failles de sécurités et les mesures à mettre en place pour y remédier.

La vidéo

La fiche Devoxx

Keynote de fermeture : The Rise of the Weaponized AI Propaganda Machine

Par Berit Anderson

Même si les conférences se poursuivaient le vendredi matin, la keynote de fermeture se déroulait le jeudi soir ! C’est donc sur un sujet dédié à l’intelligence artificielle que se terminaient ces 2 jours de conférences, avec une rétrospective de l’utilisation de bots lors de la campagne pour les élections présidentielles américaines.

Berit est une speakeuse très à l’aise, qui nous a fait prendre conscience de la puissance de l’utilisation des réseaux sociaux dans le cadre d’un marketing appliqué à la politique et aidé par de l’IA.

La vidéo

La fiche Devoxx

Vendredi 10 Novembre (Matin)

Java : Collections Refueled

Par Stuart Marks

J’aime bien les talks de Stuart car malgré le fait qu’ils soient très techniques, ils sont toujours très concis et clairs. Il nous présenta en détail les nouveautés de Java 9 sur les collections, les particularités des nouvelles méthodes utilitaires et comment les exploiter au mieux à travers quelques exemples. Il termina ensuite par un aperçu des prochaines évolutions sur le sujet.

La vidéo

La fiche Devoxx

Java Language Futures – All Aboard Project Amber

Par Brian Goetz

Le talk débuta par rappeler les principes directeurs de Java, que les architectes essaient de mettre en place depuis 2005. Par exemple, la facilité à lire du code doit être plus importante que la facilité à l’écrire. Il ne doit pas cacher ce qui se passe.

Brian nous présenta ensuite les nouveautés attendues pour Java 10, issue du projet Amber sur lequel il travaille, et qui contient entre autres l’inférence de type pour les variables locales (utilisation du mot clé var), un nouveau type de classe, appelé classe de données (un peu comme un POJO mais sans le code boilerplate getters, setters…), et enfin un nouveau switch amélioré pour prendre en compte les types des objets et même des patterns de transformation avec des lambdas.

La vidéo

La fiche Devoxx

Conclusion

C’était donc encore une bonne session de Devoxx Belgique, surtout avec cette possibilité de voir toutes les conférences manquées sur la chaîne YouTube de Devoxx. J’ai un peu regretté le manque de conférences orientées agilité & méthodes (sans doute trop marqué par Mix-It), mais coté technique, le menu était parfait. À noter : la très forte présence de Kotlin dans beaucoup de sessions, qui devient vraiment un langage de plus en plus populaire.

À bientôt pour notre prochain debrief !

 devoxx_back

Agenda :

Mercredi
Jeudi
Vendredi

Les photos officielles Devoxx 2017 sont disponibles ici.

Vous aimerez aussi...