#DEV #DevoxxFR 2017 Feedback


Préambule

J’ai assisté aux trois jours de Devoxx cette année.
Voici mon classement très personnel, orienté à la fois par mes intérêts et aussi ceux de mon employeur (pris d’une sorte de syndrome de Stockholm je suis allé voir pas mal de conférences sur la sécurité)
C’est donc :
1. Personnel
2. Subjectif au possible
3. une note qui mélange à la fois qualité de la conférence, mon intérêt pour sujet et ce que j’en ai retiré

PS: En bas de page vous trouverez des liens vers d'autres comptes rendus

Liste des conférences

Université : CQRS/ES from scratch

  • Speakers : Emilien Pecoul et Florent Pellet
  • Slides : https://www.slideshare.net/ouarzy/universit-eventsourcing-cqrs-devoxx-fr-2017
  • Repo : http://devlyon.fr/mixter/#/
  • Video : https://www.youtube.com/watch?v=S1V4t7SXXCU
  • Intérêt : 4/4
  • Résumé :
    Et si la complexité d’un logiciel reflétait la complexité fonctionnelle et non technique ? Le but de ce livecode est de vous montrer une méthode de développement qui se focalise sur les problématiques métiers et non technique. Pas besoin d’un langage de programmation ou d’un Framework spécifique. Nous ferons émerger une petite application « twitterlike » pendant la session. Et nous verrons comment l’Event Sourcing et CQRS se présentent d’eux même pour supprimer les problématiques techniques que nous rencontrons souvent dans une application en couche, même de petite taille.
  • Avis : Des concepts intéressants et clairement présentés.
    Live coding simple sans framework en TDD.
    avec un bon état d’esprit : coder simple ajouter des comportements complexes (asynchrone, cache, …) par la suite en cas de besoin uniquement.
    Parfait pour se plonger dans les concepts CQRS
  • Divers
    L’université du matin était suivie par un “Hands on” l’après-midi. Je n’ai pas pu le faire, mais en voici:

Conference - La nouvelle éthique technologique

  • Speaker : Christian Fauré
  • Vidéo : https://www.youtube.com/watch?v=scx358-7OIs
  • Intérêt : 4/4
  • Résumé :
    Malgré la vague des transformations digitales exacerbée par le risque de se faire disrupter, il subsiste encore et toujours au sein de nos entreprises une forme de refus, voire de refoulement de la technique. Cela se manifeste de diverses manières : des carrières techniques moins bien valorisées que des carrières managériales ou marketing, des DSI qui n’ont pas voix au chapitre dans les instances de gouvernance – avec cette sensation d’être les soutiers de leur propre organisation – et cela va parfois jusqu’à l’absence de toute stratégie technologique dans l’évolution des modèles d’affaire. Cette intervention vise à donner des arguments et des références pour détecter ces comportements et surtout essayer de les changer ; il mettra en évidence de nouvelles formes d’éthique de la technique qui émergent au sein de ceux qui font et qui œuvrent à la digitalisation du monde.
  • Avis
    Une conférence passionnante. Christian Fauré nous parle d’éthique technologique.
    Attention ceci n’est pas l’éthique à la laquelle nous pensons.
    Je n’en dit pas plus pour vous inciter à suivre cette conférence réfléchie, profonde mais limpide et qui nous amène à réfléchir sur notre rapport à la technologie et au changement qu’elle induit.

Conference - Spring Framework 5.0

  • Speaker : Stéphane Nicoll
  • Vidéo : https://youtu.be/fPagoyhlS3s
  • Intérêt : 3/4
  • Résumé :
    La nouvelle génération de Spring Framework est bientôt disponible ! Pour fonctionner sur Spring 5.0, les applications devront respecter de nouveaux pré-requis (versions minimales de JDK, conteneurs, libraries…). En contrepartie, vous pourrez vous préparer à l’arrivée de JDK9, activer les nouvelles améliorations de performance et migrer vers HTTP/2 et Servlet 4. Vos nouvelles applications pourront profiter aussi du support de Kotlin et même du nouveau Spring Reactive.
  • Avis :
    Si l’on veut savoir ce que Spring 5 amène de plus important de façon concise, alors cette conférence est celle qu’il faut voir

Conference - Reactive Spring

  • Speaker : Sebastien Deleuze
  • Vidéo : https://youtu.be/fPagoyhlS3s
  • Intérêt : 3/4
  • Résumé :
    Spring 5.0 arrive dans le monde Reactive avec un nouveau framework web Spring WebFlux qui se base à 100% sur Reactive Streams et s’adapte aux APIs réactives telles que Reactor 3 ou RxJava 2, mais également avec les différents projets de la galaxie Spring qui ajoutent progressivement le support de ce type de programmation. Cette session de live coding va vous montrer comment créer une application réactive avec Spring 5.0 et Spring Boot 2.0. Nous coderons ensemble une API REST JSON, des vues HTML avec Mustache enrichies avec du push Server-Sent Events, du micro-batching, le tout avec une couche persistence utilisant Spring Data Reactive Mongo et le nouveau WebClient pour composer des données issues de services distants (API REST ou streaming). L’application utilisera Netty comme moteur HTTP côté client et serveur. Nous vous donnerons également un aperçu de l’API fonctionnelle WebFlux (basée sur des lambdas au lieu des annotations) en Java 8 et en Kotlin.
  • Avis
    Bon complément à la présentation plus générale. Permet de mieux saisir ce que que le non blocking va impliquer sur nos futur devs

Hands on lab : Après Angular et React, voici … VueJS

  • Speakers : Emmanuel Demey et Aurélien Loyer
  • Slides : http://slides.com/emmanueldemey-1/deck-13#/
  • Repo : https://github.com/Gillespie59/devoxx-vuejs
  • Intérêt : 3/4
  • Résumé :
    Depuis le temps que vous allez à des conférences, vous avez sûrement participé à des codelabs React et/ou Angular2. Vous êtes même devenu peut-être un expert sur l’une de ces technos. C’est pour cela que nous avons décidé de ne pas choisir l’un de ces deux projets. Pendant ce codelab, nous avons choisi une toute autre librairie que nous sommes en train de tester pour des projets perso : VueJS. A travers ces 3 heures, nous allons aborder tous les concepts vous permettant de créer une application riche : composants, directives, mixins, routers, … A la fin de ce codelab, vous allez pouvoir vous rendre compte que VueJS gagne le combat des frameworks/librairies JavaScript par sa simplicité et sa facilité de mise en oeuvre, tout en réutilisant certains concepts de ses deux concurrents.
  • Avis
    3 heures (sans pause) tellement le sujet est passionnant.
    Et bien en 3 heures on a vu et expérimenté les concepts principaux de VueJS.
    Une très bonne façon de “sentir” ce que le framework VueJS a dans le ventre.
    J’ai eu une très bonne impression : il n’est pas sans défaut mais il est beaucoup plus sobre et moins complexe qu’Angular. Je comprend l’intérêt qu’on lui porte à l’ombre des géants…

Conférence - Comment être Tech Lead dans une pizza team XXL sans finir sous l’eau ?

  • Speaker : Damien Beaufils
  • Video : https://www.youtube.com/watch?v=eEUfsjYj3rw
  • Intérêt : 3/4
  • Résumé :
    *Être Tech Lead, c’est être au service de l’équipe en étant à la fois formateur, facilitateur, expert et coach. Mais quand l’équipe projet est composée de plus de 15 personnes, dont 10 développeur·euse·s, comment remplir ce rôle tout en continuant à prendre le temps de développer avec l’équipe, et ce sans finir sous l’eau ?
    Dans cette conférence, je vous partagerai un retour d’expérience d’1 an dans le rôle du Tech Lead d’une équipe de développement travaillant sur un site web grand public. Cette équipe de 10 développeur·euse·s était mixte à plusieurs titres : multi-compétences, homme/femme mais également client/prestataire.
    Après une présentation générale des différentes facettes du Tech Lead, je vous détaillerai les pratiques et mesures qui ont été mises en place pour améliorer la propriété collective du code et la qualité du produit au quotidien. Je vous partagerai également les succès qui ont favorisés l’apprentissage, la progression et l’autonomie de l’équipe (sans avoir à être un super-héros ou un dictateur), mais aussi les problèmes rencontrés et ce qui a moins bien fonctionné.*
  • Avis :
    Un vrai retour d’expérience direct et sans faux semblants
    100% craftmanship inside !

Tools in action : JUnit-docker 3/4

  • Speaker : Xavier Detant et Vincent Demeester
  • Slides : http://vincent.demeester.fr/devoxxfr-junit-docker/#/
  • Repo : https://github.com/FaustXVI/junit5-docker
  • Video : https://www.youtube.com/watch?v=4RsJjE-K3iA
  • Intérêt : 3/4
  • Résumé :
    Si vous avez déjà écris des tests d’intégration, vous avez probablement rencontré des difficultés à faire tourner vos dépendances. En effet, il faut : démarrer la dépendance * s’assurer que la dépendance est dans un état correct avant de lancer le test * arrêter la dépendance à la fin du test À tout ceci se rajoute le problème de reproductibilité du test (différents environnements, système d’exploitation). Cela peut s’avérer assez complexe. Heureusement, grâce à docker, le problème de reproductibilité est en grande partie résolue, mais encore faut-il pouvoir l’utiliser dans nos tests ! Nous avons écris une extension à JUnit 5 qui rends tout ceci beaucoup plus simple. Durant ce talk, nous vous présenterons notre solution après avoir fais une présentation de jUnit 5.*
  • Avis
    Deux speakers, à l’aise en présentation, nous parlent avec enthousiasme de l’outil qu’ils ont développés et qu’ils nous mettent à disposition pour que nos tests d’intégration ne soient plus un cauchemar de plantage aléatoire.
    Il me tarde déjà de passer en Junit5 pour pouvoir l’utiliser !

Soyez une “feign”-asse quand vous écrivez un client REST java

  • Speaker : Alexandre Navarro
  • Video : https://www.youtube.com/watch?v=VXVpVnJ_f7c
  • Intérêt : 3/4
  • Résumé
    Soyez une “feign”-asse quand vous écrivez un client REST java Le but de ce quicky est de vous faire découvrir feign, une libraire opensource avec une approche originale de simplicité pour créer des clients REST java comparée aux jaxrs, restTemplate à base d’interface et d’annotations. Cette lib opensource a été créé par Netflix et est notamment utilisée dans spring-cloud / spring-boot avec eureka et ribbon. Si vous ne connaissez pas du tout feign, que vous commencez à appeler pas mal d’api REST et à créer des microservices via spring-boot, cette présentation peut vous intéresser.
  • Avis
    J’écris, nous écrivons trop de clients REST qui manipulent toujours les même verbes REST.
    Feign est un bonne façon de rationnaliser cd code forcément redondant

Quickie - Tuez vos branches, faites des Feature Toggles

  • Speaker : Morgan LEROI
  • Video : https://www.youtube.com/watch?v=btrTtVWInc0
  • Intérêt : 3/4
  • Résumé
    Qui n’a pas déjà vécu l’expérience traumatisante de devoir merger une branche vieille de 2 mois contenant un refactoring ou une fonctionnalité importante ? Et si avec les Feature Toggles, vous pouviez vous passer de faire des branches avec en plus la possibilité d’activer à la demande les nouvelles fonctionnalités de votre application ? Lors de cette présentation, vous découvrirez les concepts derrière les feature toggles, les acteurs majeurs de notre industrie qui l’utilisent ainsi qu’un retour d’expérience très concret sur cette gestion un peu particulière des développements.
  • Avis
    Intéressant ! Même si ce n’est pas une silver bullet
    Avec le format impossible de répondre à la question pratique : comment faire avec la DB ?

Conference - 10 méthodes pour rendre heureux les développeurs, la 7e va vous étonner !

  • Speaker : Cyril Lakech - Romain Linsolas
  • Vidéos : https://www.youtube.com/watch?v=KH40vSYLENA
  • Intérêt : 2/4
  • Résumé
    Une entreprise sans bons développeurs, c’est comme du code sans test unitaire : à un moment ou à un autre, ça ne fonctionnera plus. Aussi devient-il impératif, sinon vital, d’attirer les meilleurs d’entre eux, mais également de savoir les garder au sein de son entreprise. Si cela est simple à dire, réussir à le faire correctement et à maintenir un tel contexte attractif n’est pas chose facile. Vous vous interrogez sur la façon de créer un environnement de développement qui incite les développeurs à donner le meilleur d’eux-mêmes et à progresser chaque jour ? Vous voulez également vous assurer de la cohérence des évolutions technologiques tout en permettant aux équipes de tester les dernières nouveautés et en ayant une roadmap technologique à suivre ? Au sein de nos entreprises respectives, nous avons pu prendre une part active à l’animation des communautés de développeurs et à la mise en mouvement de leur environnement de travail. Nous souhaitons partager nos découvertes, nos expériences et nos convictions.
  • Avis
    Enfonce pas mal de portes ouvertes
    Mais cela fait du bien de voir que certaines problématiques communes et dont le management pourrait prendre conscience (si ce n’est pas trop tard)

Conference - Log me tender

  • Speaker : Olivier Croisier
  • Vidéos : https://www.youtube.com/watch?v=x73Bq9uTsZo
  • Intérêt : 2/4
  • Résumé
    Nos logs sont trop souvent bordéliques et difficiles à exploiter : niveaux incohérents, messages mal formatés, instructions de log éparpillées dans le code… Et s’il était temps de repenser globalement notre façon de loguer, pour la simplifier et l’industrialiser ?
  • Avis
    Synthèse : du bénéfice de se faire rapidement une API de log avec une orientation métier et des optimisations simples et utiles

Tools in action : Boîte à outils d’investigation des soucis de mémoire

Conference - Architecture par la pratique: patterns d’utilisation de systèmes in-memory - WD-40 entre vos données et vos applis

  • Speaker : Emmanuel Bernard & Galder Zamarreño
  • Video : https://www.youtube.com/watch?v=ATh1PuTho-M
  • Intérêt : 2/4
  • Résumé :
    Les systèmes in-memory comme Infinispan sont largement utilisés et deviennent le lubrifiant WD-40 de la donnée: accélérer l’accès aux données, tailler la donnée aux petits oignons pour le cas d’utilisation, etc. Ces outils sont versatiles et peuvent être utilisés d’un milliard de façons différentes. Mais contrairement au ruban adhésif et au WD-40, il n’est pas intuitif de savoir quand et comment les utiliser.
  • Avis
    Architecture et produit InfintySpan forment le thème central de la conférence.
    Produit intéressant (exemple : la souscription, en push, à des résultat de requêtes.
    Bien présenté MAIS à voir SI on veut utilisee le produit

Quickie - Pourquoi votre entreprise, à l’instar de Google et Facebook, devrait stocker l’ensemble de son code dans un seul repo ?

  • Speaker : Thierry Abaléa
  • Video : https://www.youtube.com/watch?v=7Dfes-qJQ54
  • Intérêt: 2/4
  • Résumé :
    Traditionnellement, l’organisation du code source d’une entreprise est calquée sur ces applications: un repository par application. Récemment, avec l’adoption d’architecture de type microservices et la popularité de GitHub au sein de nos entreprises, on peut observer une tendance à créer de multiples repositories par application. Cependant peu de développeurs savent que trois des grands du web, Google, Facebook et Twitter, gèrent leur code avec un unique repository. Alors que certains d’entre nous prennent le chemin inverse de ces entreprises, il est intéressant de se demander ce qui leurs ont poussés à faire ce choix et à vouloir le conserver. Ce talk répondra à cette question et montrera que ce n’est pas réservé aux grands du web. Vous apprendrez ainsi les nombreux avantages de ce type d’organisation, tels que par exemple: La facilité de partager du code, L’accroissement des contributions cross-équipe, La suppression de gestion des versions, Une Continuous Integration cross-applications qui fonctionne. Nous verrons également comment cela fonctionne en pratique et quels sont les inconvénients.
  • Avis
    Un quickie c’est trop court pour un sujet aussi organisationnel (suivant la loi de Conway).
    Je n’ai pas réussi à savoir comment ils organisent le build

Keynote - Video games: The quest for smart dumbness

  • Speaker : Laurent Victorino
  • Video : https://www.youtube.com/watch?v=Kc8VO97ukB8
  • Intérêt : 2/4
  • Résumé :
    A l’heure où tout le monde s’inquiète de la singularité technologique, de l’avènement des machines, et de la prise de contrôle du monde par les micro-ondes connectés, un domaine entier de l’informatique lutte et résiste de toute ses forces pour que le pire soit évité. Ce domaine, qui cherche à tout prix à éviter l’IA parfaite, c’est le jeu vidéo. Petite rétrospective sur l’état de l’Intelligence Artificielle au sein des jeux vidéo. Ou, comment, chez nous, le fun ne peut venir que grâce à des IA bancales.
  • Avis
    Un orateur brillant qui expose avec humour les problématiques de L’IA dans les jeux vidéos.
    En dehors de nos problématiques quotidiennes

Keynote - Révolution cyberindustrielle en France

  • Speaker : Laurent Bloch
  • Video : https://www.youtube.com/watch?v=aN3DBrO8Uy0
  • Intérêt : 2/4
  • Résumé
    Depuis vingt ans nous vivons une révolution culturelle engendrée par l’irruption dans toutes les activités humaines de l’Internet et par conséquent de l’informatique. Les répercussions de cette révolution sont comparables à celles de l’invention de l’écriture, de la machine à vapeur, de l’électricité. Cette extension du monde informatisé exige la refondation du système éducatif, des normes juridiques, de l’organisation des entreprises et des administrations, les pays qui ne sauront pas prendre ce virage deviendront des pays sous-développés. La France, et plus largement l’Europe, disposent pour cela d’atouts considérables : le premier marché mondial, un territoire exceptionnel, la population la plus éduquée du monde, des infrastructures de premier ordre. Et nous sommes pourtant menacés de devenir « une colonie du monde numérique », par manque de compréhension et de vision. Qui sait que parmi les six entreprises au monde capables de fabriquer des microprocesseurs à l’état de l’art il y a le franco-italien STMicro ? Systèmes d’exploitation et logiciel, réseaux et micro-électronique sont nos missions impérieuses pour les années à venir.
  • Avis
    Qu’est ce qui rend une nation indépendante technologiquement ? C’est une bonne question politique et économique

Keynote - Quel droit pour les robots ?

  • Speaker : Alain Bensoussan
  • Video : https://www.youtube.com/watch?v=PN1V4CoVsh8
  • Intérêt : 2/4
  • Résumé
    Grâce à la technologie robotique, l’émergence de nouveaux « êtres » est en passe de devenir une réalité. Intelligence artificielle oblige, les robots sont aujourd’hui beaucoup plus que de simples automates : leurs capacités grandissantes les amènent à véritablement collaborer avec les hommes. Faut-il s’en inquiéter ou s’en réjouir ? Une chose est certaine : les questions d’ordre éthique et juridique sont majeures, et les défis à relever immenses. Bienvenue dans une nouvelle civilisation : la robohumanité.
  • Avis
    Au dela de la verve de l’orateur (avocat) de vraies question à se poser pour ceux qui mettent en place des algorithmes

Conference - Dev et Sécu : c’est fromage ou dessert ?

  • Speakers : Johanne Ulloa, Nicolas RUFF, Emmanuel Bernard, Hervé Schauer, Sébastien Gioria & V׀adimіr Kο׀׀a
  • Video : https://www.youtube.com/watch?v=M8xudWtacMk
  • Intérêt : 1/4
  • Résumé :
    La sécurité c’est important, on a tous compris qu’il y a beaucoup à perdre si nos applis, nos clients, nos boîtes se font pirater. Bon OK. Mais en tant que dev, qu’est-ce que je peux faire ? Pourquoi les mecs de la sécu râlent autant sur nous ? Quelles approches pour sécuriser mon architecture web ? Mobile ? Mon nouveau déploiement IoT ? Mes déploiements dans le cloud ? Quels sont les métiers dans la sécurité ? Que font-ils pendant que les devs implémentent les fonctionnalités métier. Pendant mes devs, je dois faire gaffe à quoi ? Venez rejoindre les baroudeurs de NoLimitSecu pour une discussion autour de ces sujets. Cela sera sous forme d’une table ronde animée par un dev.
  • Avis
    La discussion informelle qui ne vous apprendra pas grand chose au niveau sécu.
    La forme n’est pas très adaptée en fait
    Il faut que je raye le sujet sécurité de mon prochain Devoxx (s’il y en a un)

Tools in Action : Protéger son application web des risques de sécurité les plus critiques

  • Speaker : Pascal Abaziou
  • Repo : https://github.com/javathought/devoxx-2017
  • Video : https://www.youtube.com/watch?v=qjR-BW5EG0c
  • Intérêt : 1/4
  • Résumé
    Comment sécuriser son application AngularJS basée sur des services REST en la protégeant du Top 10 OWASP (10 risques de sécurité les plus critiques) : - gérer les habilitations - contrôle des données côté serveur - éviter les fuites de données sensibles - protection CSRF … Où l’implémenter (frontend ou backend) ? Comment la tester ? BDD avec RestAssured et Cucumber
  • Avis
    Problèmes techniques (plantages), grand moment de solitude du speaker.
    Le contenu étant plutôt “révisons les OWASP top ten” plutôt que “quelles solutions ?”.
    Dommage.

Quickie - Anonymisation des données

  • Speaker : Jérôme Mainaud
  • Video : https://www.youtube.com/watch?v=adwXwMtZ7Og
  • Intérêt : 1/4
  • Résumé
    Aujourd’hui, pratiquement toutes les applications possèdent des informations à caractère personnel, ne serait-ce que l’adresse électronique et le mot de passe de l’utilisateur. Et il est de votre responsabilité, morale et légale, de protéger ces données. L’anonymisation et la pseudonymie sont deux techniques utiles pour parvenir à cette tâche. Mais gare aux pièges ! Une mise en œuvre naïve peut être facilement déjouée. Nous verrons au cours de cette présentation, pourquoi les utiliser, ainsi que quelques méthodes efficaces pour y parvenir.
  • Avis
    Le format trop court ne permet que d’introduire les concepts et problèmes mais pas les solutions

Keynote - De la responsabilité des ingénieurs

  • Speaker : Eric Sadin
  • Video : https://www.youtube.com/watch?v=jpvMOIVU-Z4
  • Intérêt : 1(3)/4
  • Résumé
    Nous sommes tous tenus au devoir de responsabilité. À l’égard de nous-mêmes, des autres et de la société. Tous, nous sommes égaux devant cet impératif qui nous est imposé par le fait même d’exister. En revanche, le poids de responsabilité de chacun, lui, n’est pas égal. Car le degré de responsabilité est fonction d’un pouvoir exercé dans la mesure où les actes engagent bien au-delà de soi-même. Si l’on se fie à ce critère, apparaît alors une cartographie très diverse des responsabilités. On peut distinguer, sur l’un des reliefs les plus élevés, la présence d’une catégorie de personnes exerçant une activité à laquelle nous n’aurions pas immédiatement pensée parce qu’elle nous semble, de prime abord, presque aussi commune et banale que tant d’autres. Cette profession qui, aujourd’hui se situerait au plus haut sur cette cartographie des responsabilités, c’est celle des ingénieurs. Car les ingénieurs, particulièrement les concepteurs d’algorithmes et les programmeurs, pratiquent un métier qui engage l’une des plus importantes, sinon la plus importante, charge de responsabilité au sein de la société. Vu que leurs actes entraînent toute sorte de conséquences sur nos vies individuelles
  • Avis
    Ce n’est sans doute pas le bon format pour Eric Sadin. Trop de choses à dire en un temps trop court.
    Mais Eric Sadin a des choses à dire sur nous codeurs, sur la numérisation du monde, sur nos responsabilités. Ses livres sont certainement plus adaptés.

Autres comptes rendus

Commentaires