15ème édition de la conférence Devoxx, et 8ème participation pour moi. Toujours autant de passionnnnnés. Du geek dur à l’étudiant en passant par le développeur indépendant… il y avait beaucoup de monde. Plus de français que l’an dernier et globalement, une meilleure ambiance.
Côté contenu, beaucoup de Big Data, de Machine Learning, d’architecture avec micro-services, de conteneurs avec Docker (mais pas que). Un peu d’Angular2, des nouvelles de Java 9 (repoussé à mi-2017) et du Spring par dessus. Il y a aussi d’autres sujets comme la robotique, du Swift, Kotlin pour Android, CSS Flexbox et par contre rien du côté Agilité, et très peu du côté sécurité.
Je vais plus vous parler de ce que les participants ont aimé, en prenant en compte les présentations les mieux notées par les conférenciers. J’ai fait un classement en ne prenant en compte que les talks ayant eu plus de 50% de votes, afin de garder les sujets les plus vus (et donc les plus notés).
Sur les Universités, les 3 sujets les mieux notés sont :
- Reactive programming par Venkat Subramaniam
- Java EE, TypeScript and Angular2 par Antonio Goncalvès et Sébastien Pertus
- Exploring Java 9 par Venkat Subramaniam
Suivi de peu par des universités sur Kubernetes, Tensorflow, sur la modularité dans Java 9 et JHipster.
Coté Tools-in-Action, cocorico nous avons 2 speakers Français dans le top 3 sur les 28 Tools-in-Action :
- « Make CSS Fun Again with Flexbox! » par Hubert Sablonnière
- « Supercharge your web app with the new Firebase » par Bret McGowen
- « The end of polling : why and how to transform a REST API into a Data Streaming API? » par Audrey Neveu
Sur les 90 conférences, intéressons-nous uniquement aux conférences qui ont eu au moins plus de 50% de la moyenne des votes :
- « Declarative Thinking, Declarative Practice » par Kevlin Henney
- « Twelve Ways to Make Code Suck Less » par Venkat Subramaniam
- « Are you botching the security of your AngularJS application? » par Philippe De Ryck
- « How Google DeepMind conquered the game of Go » par Roy van Rijn
- « Refactoring to Java 8 » par Trisha Gee
- « Continuous Delivery At GitHub » par Alain Hélaïli
- « Modular monoliths » par Simon Brown
- « Programming your body with chip implants » par Pär Sikö
- « Machine Learning for Developers » par Danilo Poccia, Sebastien Stormacq
- « Optional – The Mother of All Bikesheds » par Stuart Marks
J’ai vu les 2 premières conférences, et sincèrement celle de Kevlin Henney était top. Dans cette présentation, il compare l’approche impérative, naturelle pour les développeurs Java, et l’approche déclarative/fonctionnelle. Pour cela il reprend 2 classiques des entretiens d’embauche : le FizzBuzz et les chiffres Romains. Si vous voulez comprendre pourquoi la programmation fonctionnelle est différente, ce talk est pour vous.
Dans sa présentation « Twelve ways to make code suck less », Venkat liste des classiques du développement logiciel et les contre-mesures à utiliser pour améliorer son code. Simplicité d’abord, avec des propositions faciles à utiliser dès le lundi suivant Devoxx. J’ai beaucoup aimé. Et si vous n’avez jamais vu Venkat Subramaniam… ce gars est très fort pour faire passer ses messages.
Roy van Rijn a fait une présentation digne d’une keynote sur l’intelligence artificielle. Comment Google a créé et entrainé un programme pour pouvoir battre un humain au jeu de Go ? En comparant aussi ce qui s’est fait avec le jeu d’échecs, cette présentation est très ouverte et devrait vous intéresser.
Globalement, pas beaucoup de présentations ultra techniques dans ce top 10. Les participants apprécient toujours les conférences généralistes sur le métier de développeur. Mais la clé de ces 10 sujets, c’est que les speakers ont aussi tous fait un sacré travail de préparation et de restitution. Si vous avez la chance d’être sélectionné pour venir parler à une conférence, je vous recommande de regarder les techniques de présentations de ces speakers.
Si on regarde plus largement, en prenant en compte les conférences qui ont eu moins de vote, la liste est légèrement différente. Josh Long est l’un des meilleurs présentateurs que j’ai eu la chance de voir, avec à chaque fois un contenu top. Ce qui frappe lorsque l’on est dans la salle, c’est que le public est « mou » : il est très difficile d’interagir avec la salle, et de la faire rire. Alors que ce même speaker, en France, arrive à faire rire et à faire participer la salle.
- « Cloud Native Java » par Josh Long (59 votes et une note de 4.88)
- « Declarative Thinking, Declarative Practice » par Kevlin Henney (145 votes et une note de 4.72)
- « Twelve Ways to Make Code Suck Less » par Venkat Subramaniam
- « Tensorflow and deep learning – without at PhD » par Martin Görner
- « Wait, what!? Our microservices have actual human users? » par Stefan Tilkov
- « Are you botching the security of your AngularJS application? » par Philippe De Ryck
- « How Google DeepMind conquered the game of Go » par Roy van Rijn
- « Refactoring to Java 8 » par Trisha Gee
- « Continuous Delivery At GitHub » par Alain Hélaïli
- « Modular monoliths » par Simon Brown
A titre personnel, j’ai pu suivre beaucoup de conférences cette année. Le contenu était globalement meilleur que l’édition 2015.
Petit focus sur Java 9
Côté Java, on a commencé à parler de Java 9 et de la modularisation. Cependant comme l’a dit Mark Reinhold et Alan Batman : il ne sera pas obligatoire de revoir son packaging avec Java 9. Ce sera simplement une possibilité offerte pour les personnes qui construisent les applications. Jigsaw arrive enfin après plusieurs déprogrammations depuis quelques années. Coté langage, Java 9 ne devrait pas introduire de révolutions aussi importantes que les Lambdas de Java 8. On parle des Values classes depuis 2014, qui restent assez mineurs et qui existent déjà en Scala (avec quelques limitations cependant).
Pour revenir sur Jigsaw : je me demande si sincèrement la modularité est nécessaire lorsque l’on est développeur Java d’applications de gestions. L’argument de la taille des JAR est déjà réglé avec Java ME pour l’embarqué. Je peux comprendre qu’avoir un Java plus « léger » sans le legacy de Swing soit intéressant… Mais est-ce que l’on a anticipé la somme de problèmes que cela va créer ? Quid dans un IDE qui devra comprendre ce que « ma » version de Java propose ? Quid aussi du travail des gestionnaires de package comme Maven ? Nous avions Java SE et Java EE. Java SE est certes gros. Mais franchement… allez voir la taille des images Dockers stockées dans un répertoire et là on parlera taille les amis. Toute cette énergie, et le fait que Jigsaw a été repoussé à maintes reprises, devraient alerter la communauté.
Plus intéressant : Java platform modules devrait permettre la construction d’un gros JAR (uber-JAR) pour la distribution, avec uniquement ce qui est nécessaire à une application. La question avait été lancée lors de Devoxx 2015 et n’a pas encore été tranchée (référence).
Java 9 c’est aussi l’arrivée d’un REPL pour évaluer du code Java. Cela permet de lancer un interpréteur de commandes et de taper du code Java directement. A quoi cela sert-il ? A découvrir le langage Java, à faire une petite démonstration, ou à tester une idée rapidement. Rien de révolutionnaire.
Je vous invite à regarder la présentation de Brian Goetz : Java Language and Platform Futures: A Sneak Peek
Côté dates, Java 9 a été repoussé et la version finale est prévue pour l’instant pour le 2ème trimestre 2017 (source)
Conclusion
Devoxx est l’une des meilleures conférences pour les développeurs en général. Certes il y a beaucoup de conférences autour de Java. Mais la famille des conférences Devoxx c’est plus de 10 000 participants. Le channel YouTube de Devoxx a plus de 11 000 abonnés et l’ensemble des vidéos est déjà en ligne. (2500 pour le channel de Devoxx France).
Rendez-vous à Devoxx France en avril prochain, et n’oubliez pas que le CFP est ouvert jusqu’au 8 janvier 2017 !
0 no like
Merci pour ce retour complet, comme d’habitude…