Le podcast Java en Français

Les Cast Codeurs est un podcast en français de, par et pour les développeurs.

Prenez connaissance des dernières nouvelles de la sphère Java et du développement en général. Plongez sur un sujet précis avec les épisodes interview.

Supportez les radotages de vos hôtes : Emmanuel Bernard (JBoss, Hibernate), Arnaud Héritier (Doctolib, Jenkins), Guillaume Laforge (Google, Groovy), Antonio Goncalves (Microsoft, auteur), Vincent Massol (XWiki, Maven), Audrey Neveu (Reactor/Spring, Devoxx4Kids). Katia Aresti (Red Hat, Infinispan).

LCC 175 - Interview sur la build avec Cédric Champeau et Arnaud Héritier - partie 2

Posté le 11/08/2017

Guillaume, Cédric et Arnaud se retrouvent autour du micro pour parler pendant une session marathon de 3h30 du build, de Maven et de Gradle. Dans cette deuxième partie, on y discute tests puis on aborde des questions spécifiques à chaque outil. On aborde enfin le dilemme : migrer ou ne pas migrer, telle est la question. Le tout basé sur les questions posées sur la mailing list des cast codeurs : merci à vous !

Enregistré le 19 juillet 2017

Téléchargement de l’épisode LesCastCodeurs-Episode-175.mp3

Interview

Ta vie ton œuvre

Cédric Champeau
Gradle Inc.
Arnaud Héritier
Cloudbees

Gradle
Maven

Les tests

Gradle / Maven : Quelle est la philosophie officielle des deux outils pour la gestion des tests au-delà des tests unitaires (une fois les différents modules assemblés et déployés) ?
Dans des projets maven par exemple, je vois des fois des modules dédiés, en scope test ou scope runtime et lancés à la main, d’autres fois des projets indépendants. Chaque équipe a plus ou moins sa propre façon de gérer la chose mais rien n’a l’air vraiment normalisé (ou du moins partagé par la communauté).

Gradle / Maven : Quels sont les ‘best practices’ pour faire du ‘test and watch’ (genre infinitest) avec maven et gradle ?

Les intégrations

Gradle : Pourquoi je ne peux pas faire de Run Tests sur un projet en Gradle dans IntelliJ alors qu’avec Maven je peux ?
Gradle / Maven : Pour les deux, qu’en est-il de l’intégration dans les différents IDE ? J’ai été agréablement surpris par l’intégration de Gradle dans Netbeans, mais je n’ai pas beaucoup joué avec.
Gradle / Maven : “Quid de l’intégration dans mon IDE préféré ?”
Gradle / Maven : “Quid de l’intégration dans mon continuous build préféré ?”

Gradle en profondeur

Gradle : Y’a moyen de voir en Gradle à quel test je suis rendu ?

Gradlew/mvnw

  • Gradle : Pourquoi mvnw et gradlew ne downloadent par leurs jars au lieu de nous forcer à les mettre dans .mvn et gradle ?
  • Gradle : Pour Gradle, vous ne trouvez pas affreux ces fichiers “gradlew” et “gradlew.bat” à la racine de chaque projet dans github ?

Scripting vs XML

  • Gradle : Est-il prévu de pouvoir avoir un fichier build.gradle a chaque niveau de la hiérarchie de tes modules au lieu d’avoir besoin de décrire manuellement tous les paths dans un fichier settings.gradle ? C’est un point que j’ai trouvé pénible (par ex https://github.com/xwiki/xwiki-commons/blob/master/settings.gradle et là je ne liste que qq modules - en pratique il y en a des centaines ds le build xwiki).
  • Gradle : Est-ce que Gradle travaille à essayer d’homogénéiser encore plus les builds Gradle ? Qd j’ai essayé de convertir le build Maven de XWiki en Gradle, j’ai lu la doc puis j’ai regardé 4-5 builds différents en gradle pour voir les bonnes practices. Et la j’ai été embêté car chacun avait des pratiques un peu différentes. Au debut j’étais même paumé et puis apres qq heures de recherches j’ai commencé à identifier des patterns communs mais qd meme avec pas mal de variations. Du coup je n’ai pas su trouver facilement les best practices et j’ai dû me les faire et en consequence le build Gradle XWiki est lui aussi encore un peu different des autres probablement. Qu’est-il prévu sur le sujet ? En gros comme simplifier encore plus l’onboarding Gradle ?

BOM

Gradle : Le BOM de maven est-il une invention du malin ? Et quel est son équivalent pour Gradle ?

Android

Gradle : Pourquoi l’intégration de ces outils dans Android Studio est-elle aussi pathétiquement mauvaise ? (je suis obligé d’utiliser ce sous-outil, et j’ai mal à mon gradle : je ne peux pas voir mes dépendances facilement, et l’intégration se résume à une lecture de la liste des tâches et à leur lancement).

Maven en profondeur

Maven : Quand est-ce que le bogue Maven du shade plugin qui ne remplace pas le jar d’origine pas le jar shadé sera corrigé ? (et que donc l’équipe Maven reviendra à la raison) ?
Maven : Pour revenir au cycle de vie de Maven, serait-il possible de configurer des cycles de vies (notion de descripteurs de cycles de vie). En gros, pouvoir dire que mon projet suit un cycle de vie à 3 phases qui sont “resource, compile, install” et qu’un autre avec X phases comme compile, “prepare, …, install, deploy-maven-repository, deploy-env”)
Maven : Pour Maven encore, il y avait-il me semble un projet polyglot pour les descripteurs, qu’en est-il ? Pourrait-on imaginer des descripteurs en yaml et/ou json ?
Maven : y a-t-il beaucoup de boites qui dev leurs petits plugins Maven perso pour adapter à leurs problématiques ?

Granularité / découpage de modules avec Maven

Maven : comment gérer les builds où l’appli finale est la résultante de nombreux multi-module Maven project, chacun dans un repo git perso avec leur version. Nous avons des problèmes pour gérer les évolutions de versions de chacun de ces multi-modules et faire en sorte que les modules qui en dépendent se MAJ vers la nouvelle version. Les BOM Maven sont une piste mais c’est pas clair…
Maven : est-ce une bonne pratique de considérer comme absolue la règle selon laquelle tous les modules d’un multi-module Maven project doivent avoir le même numéro de version ?
Maven : est-ce bien une mauvaise pratique que de mettre dans le même repo Git 2 multi-module Maven projects qui ne partagent pas le même parent ?
Maven : les devs familiers avec Maven n’ont-ils pas trop tendance à découper leurs appli en modules Maven alors qu’ils pourraient se contenter des packages Java ? Je me rends compte que c’est mon cas perso…
Maven : Pour des grosses applis, faites-vous plusieurs petits builds et un meta-build d’assemblage final agrégeant les petits morceaux ? Ou alors faites-vous un bon gros build qui dure longtemps mais recompile/repackage tout ? Ou alors vous laissez-vous le choix en faisant en sorte de pouvoir faire les 2 (sur Jenkins)

Maven : “classpath too long” : c’est la résultante du point précédant. Nous commençons à nous heurter à des problèmes de “classpath too long” sous Windows pour des Proof of Concepts mixant de nombreux projets. Le point de non-retour est-il proche ? (Pour info, nous contournons temporairement le problème en ayant utilisé la commande mklink pour simlinker le repo Maven sur c:\repo et gagner quelques caractères sur chaque dépendance… oui, c’est tres moche)
Maven : quid du paramétrage du build ? Par exemple actuellement nous avons une phase de packaging assez générique qui prend en entrée un numéro de version de l’application à packager. Merci Jenkins.

Migration

Migrer vers Gradle, mais pourquoi (pas) ? Et la valeur du build dans tout ça …
Gradle : Pourquoi est-ce que depuis 3 ans, je vais voir une prez de Cédric sur Gradle, et j’en ressors en me disant “Gradle, ça a l’air quand même vachement bien”, et que l’année qui suit, je retourne voir une prez de Cédric l’année suivante sans avoir rien changé sur mes projets Java ?
Gradle : Suis-je tellement fainéant dans mon petit confort de build Maven pour reposer sur mes acquis et ne pas switcher ? Je veux dire … à chaque fois j’ai de bons arguments apportés par Cédric pour migrer, et pourtant, le switch ne se fait finalement pas.
Gradle / Maven : Considère-t-on aujourd’hui le build comme accessoire sur un projet Java pour ne pas vouloir engager un investissement de migration ? (je parle beaucoup de mon cas perso ici, mais j’ai l’impression qu’il n’est pas si isolé que ça) Ou au contraire, est-ce tellement critique et relativement assez peu agile qu’on a trop peur d’en changer ? Si on reprend le cas de Ant vs Maven, pas mal de gens ont trainé à migrer, c’était trop risqué, les bonnes pratiques étaient encore peu connues, tout le monde avait peur de crasher son projet à cause de ca… Personne ne veut essuyer les plâtres d’une “nouvelle” techno de build avec son projet.
Gradle : Peut-être Gradle en est-il encore là et a du mal à passer le cap des Early-Adopters (ceci dit, avec Android et son armée de développeurs d’apps ca devrait changer vite si c’est le cas ; tant qu’Android l’infidèle decide de rester sur Gradle :P
Gradle : Et enfin, LE point-clé : est-ce que la migration de Maven a Gradle amène une valeur ajoutée suffisante pour justifier l’effort et le risque ? Je n’ai pas l’impression de lire beaucoup de retour d’expérience de projets qui disent avoir gagne radicalement en productivité en en qualité grace à une migration Maven->Gradle.
Gradle / Maven : “je démarre un projet, Gradle ou Maven ?”

Conclusion

Gradle / Maven : les devs et le build : généralement, la grande majorité des devs ne s’y intéressent pas. À titre perso, je trouve ça fondamental, si le build est mal fait ça handicape tout le projet sans que les gens ne s’en aperçoivent malgré les effets négatifs, ils ne voient pas comment faire autrement => est-ce un ressenti que vous avez ?

Nous contacter

Faire un crowdcast ou une crowdquestion
Contactez-nous via twitter https://twitter.com/lescastcodeurs
sur le groupe Google https://groups.google.com/group/lescastcodeurs
ou sur le site web https://lescastcodeurs.com/
Flattr-ez nous (dons) sur https://lescastcodeurs.com/
En savoir plus sur le sponsoring ? sponsors@lescastcodeurs.com


LCC 174 - Interview sur la build avec Cédric Champeau et Arnaud Héritier - partie 1

Posté le 01/08/2017

Guillaume, Cédric et Arnaud se retrouvent autour du micro pour parler pendant une session marathon de 3h30 du build, de Maven et de Gradle. La première partie pose les bases : introduction, java 9, performance, gestion de dépendances, cycle de vie

Enregistré le 18 juillet 2017

Téléchargement de l’épisode LesCastCodeurs-Episode-174.mp3

Interview

Ta vie ton œuvre

Cédric Champeau
Gradle Inc.
Arnaud Héritier
Cloudbees

Liens généraux

Gradle
Gradle Enterprise
Maven

Guide modules Java 9 :

Liens Gradle

Maven vs Gradle (features)
Maven vs Gradle (performance)
Migrer vers Gradle
Nebula plugins (Netflix)
Plugin Go (gogradle)
Spring Dependency Management
Builds composites
Build Cache

Définition et histoires

Ant

Pour s’échauffer, bon alors, c’est qui le plus fort Gradle ou Maven ?
Est-ce que Gradle et Maven ont de la couleur dans la console ?
Gradle / Maven : un pitch de 30 secs max pour chacun pour me faire faire mon choix

Support de Java 9

Gradle / Maven : Quand est-ce qu’ils vont supporter Java 9 ? Et la compilation multi-modules :

Gradle / Maven : Avez-vous eu de l’aide d’Oracle pour faire marcher Java 9 ?
Gradle / Maven : Qu’est-ce que n’est pas prêt pour Java 9 ?

La performance

C’est quoi le build cache de Gradle ? C’est gratuit ou c’est que dans la version payante ?
Parle-nous un peu plus de Gradle Enterprise, il y a quoi dedans ?
Gradle Entreprise

J’ai fumé la moquette

Quid de l’intégration avec jshell : je veux écrire mon script de build en Java pas en Groovy (désolé) ou en Kotlin (désolé), et surtout que cela soit un fucking REPL (Rémi Forax)

La totale depuis la ML

Les projets

Maven, le projet
Maven : Pour Maven, qui tient les rênes du projet ?
Maven : La dernière version de Maven est récente, avec quelque bugfix (il semble…) La précédente version date de fin 2015 : Maven meurt-il à petit feu ?
Maven : Qu’est-ce qui fait que Maven n’évolue que très très très peu ? En particulier en termes de performance. Il est mort le projet ou quoi ?
Maven : Qui paye le hosting de Maven Central ?

Gradle, le projet, Gradle.inc, l’entreprise
Gradle : Gradle Inc propose des guides, des outils pour entreprise : Gradle veut devenir l’outil de build de référence en entreprise ?
Gradle : Groovy va rester le langage principal des scripts Gradle (et Kotlin une alternative) ? Va cohabiter avec Kotlin ? va se voir remplacer par Kotlin ?
Gradle : Les dernières versions de Gradle se focalisent beaucoup sur les performances de build. Vers quoi l’outil va s’orienter par la suite ?
Gradle : Gradle peut builder des projets en C, des projets Java, Android…. Il y aura un focus sur un écosystème en particulier ou Gradle va continuer à essayer de tout builder, quitte à se disperser ?
Gradle : Quelle est la proportion de projet utilisant Gradle pour construire des projets autres que des projets Java/Android ?
Gradle : Gradle est indirectement poussé par Google car utilisé pour construire les applications Android. Gradle est également utilisé par Linkedin. Comment ces acteurs influent sur Gradle en termes de fonctionnalité ?

Et les autres (outils de builds)

Gradle / Maven : Ou en sont les autres, les javascripteurs ? sont-ils toujours à réinventer x fois la roue ? Ou ont-ils des outils dont Gradle et Maven pourrait s’inspirer ?
Gradle / Maven : Qu’est-ce qui a bien pu pousser les javascripteurs à se dire qu’ils pourraient faire un outil intelligent quand ils semblent dépourvus du moindre bon sens ?
Gradle / Maven : Il serait aussi sympa de comparer ces outils a ce qui se fait dans d’autres silos techniques (genre JS avec npm ou autre, C# avec dotnet et NuGet…), voir ce qui est mieux ou moins bien ailleurs.
Gradle / Maven : Comment faire du build polyglotte, par exemple avec un mix de Scala, Kotlin, Groovy, Java, et des sous projets Web (angular cli, webpack, gulp, …) ?
Gradle / Maven : Pourquoi les outils de build apparaissent aussi facilement que les champignons en automne ?
Gradle / Maven : Qu’est-ce qui a fait le succès de maven et gradle ? (aussi bien techniquement que d’un point de vue marketing)

La gestion des dépendances

Gradle / Maven : une question plus fondamentale sur gestion de deps vs build : à un moment, dans le monde JS, il y avait une séparation assez nette entre gestion de dépendance (avec Bower ou npm je crois) et un outil de build/packaging (genre Gulp il me semble) et des fichiers de conf distincts ; maintenant il semble que la mode n’ait pas pris et que npm règne en maitre et mélange les 2 sujets dans une meme conf. Est-ce que les experts de build Java pourraient partager leur avis sur la question : pourquoi on mélange gestion de dépendances et gestion de build ? Est-ce que c’est vraiment un choix de design ou juste que c’est pragmatiquement suffisant et plus efficace ?
Gradle / Maven : comment les outils de build permettent de gérer les dépendances non-Java ? Tant qu’on reste dans du Java, c’est simple, mais dès que l’on sort un peu de là ça se complique (nous on a du natif Windows/Linux, j’imagine que pour les devs Android c’est encore plus compliqué). Peut-il y avoir des interactions avec des repository non Maven-compliant ? On entend beaucoup parler de Conan pour les artefacts C/C++ ces temps-ci… Que permet Gradle sur le sujet ? Pouvez-vous nous briefer sur le monde Android qui doit avoir ces problématiques ?

Le cycle de vie de l’application

Gradle / Maven : Sujet qui pourrait être intéressant à débattre : comment est-ce que les deux outils abordent la livraison “en production” ? Où est-ce qu’ils s’arrêtent dans leur philosophie (on peut assez facilement imaginer un DSL gradle par exemple pour gérer les déploiements) ?
En particulier, quid des environnements où les plateformes de production n’ont pas accès à internet (et donc pas accès aux dépôts officiels et pas de miroir disponible/accessible, j’ai vu ça chez les opérateurs télécoms). La solution mise en place ici, c’est livraison sous forme d’iso/de cd sur lesquels il y a toutes les dépendances, et cette iso est montée comme un repo à partir duquel on installe la solution.
Et à partir de là, viennent d’autres problèmes d’ordre juridiques : comment est pensée la gestion des licences, en particulier en ce qui concerne les dépendances transitives ?
Gradle / Maven : Un peu lié : quelles différences dans les deux outils pour la construction d’applis orientées serveur vs. appli orientées client ?

Nous contacter

Faire un crowdcast ou une crowdquestion
Contactez-nous via twitter https://twitter.com/lescastcodeurs
sur le groupe Google https://groups.google.com/group/lescastcodeurs
ou sur le site web https://lescastcodeurs.com/
Flattr-ez nous (dons) sur https://lescastcodeurs.com/
En savoir plus sur le sponsoring ? sponsors@lescastcodeurs.com


LCC 173 - Fais tourner la Hash Table

Posté le 14/07/2017

Audrey, Guillaume et Emmanuel vous parlent de serverless, de sécurité, de calculs de disponibilité, de hash table et d’autres sujets tip top.

Enregistré le 13 juillet 2017

Téléchargement de l’épisode LesCastCodeurs-Episode-173.mp3

Comment faire un crowdcasting

News

Langages

Java 9 et Jigsaw passent le JCP
No swan song for Java: 10 influencers weigh in on its reputation, rivals and adoption

Matériel

le simulateur d’ordinateur quantique d’Atos
Intel Skylake/Kabylake et le bug dans l’hyper-threading

Middleware

Les framework Java populaires selon Redmonk
Spring Cloud Function
Les nouveautés de JPA 2.2
Le guide de développement asynchrone avec vert.x
AWS Lambda et Java
Elastic Stack 5.5.0
Des tests d’intégration avec Elastic

Web

Release de JHipster 4.6.1
Node.js security release

Infrastructure

La bataille sur NTP
Raters: la face cachée de l’IA ?
Les choses à savoir quand on utilise Ansible
OVH et les sites webs critiques sur un VPS
Comment fonctionne Kerberos
Distroless Docker image avec rien dedans

Outillage

Blog sur JUnit 5
ˋgit filter-branch` expliqué à ta grand-mère

Architecture

Papier sur la disponibilité et les 9 par Google
L’intérêt des data stream dans les applications non monolithe
Serverless vs Micro-Service avec infrastructure “maison”
Gestion des logs chez Algolia

Sécurité

Two-factor via your mobile phone – should you stop using it?

Loi et société et organisation

La démission de Travis Kalanick, le CEO d’Uber
Mercredi 12 juillet - Journée d’action pour la neutralité du net aux USA

Rubrique débutants

Qu’est-ce qu’une Hash Table ?

Conférences

Jug Summer Camp le 15 Septembre à La Rochelle
DevFest Toulouse le 28 septembre - Inscriptions et CfP ouvert
DevFest Nantes les 19 & 20 Octobre - Inscriptions
Scala.io le 2 et 3 novembre à Lyon - Inscriptions et CfP ouvert (jusqu’au 8 sept)
Devoxx Belgique du 6 au 10 novembre - Inscriptions
Codeurs en Seine à Rouen le 23 novembre - CfP ouvert (jusqu’au 31 août)
7ème édition de SoftShake - Genève (seulement 3h de Paris en train !) 26-27 octobre 2017 le CfP est ouvert

Nous contacter

Faire un crowdcast ou une crowdquestion
Contactez-nous via twitter https://twitter.com/lescastcodeurs
sur le groupe Google https://groups.google.com/group/lescastcodeurs
ou sur le site web https://lescastcodeurs.com/
Flattr-ez nous (dons) sur https://lescastcodeurs.com/
En savoir plus sur le sponsoring ? sponsors@lescastcodeurs.com


LCC 172 - Interview sur Docker avec Jean-Laurent Morlhon et David Gageot

Posté le 03/07/2017

Antonio, Vincent et Guillaume sont allé dans les bureaux de Docker France pour interviewer Jean-Laurent et David sur l’univers Docker et leur aventure Docker France.

Enregistré le 17 mai 2017

Téléchargement de l’épisode LesCastCodeurs-Episode-172.mp3

Interview

Ta vie ton œuvre

Jean-Laurent Morlhon
David Gageot
Docker Inc.

Docker

Docker Machine
Docker for Mac
Docker for Windows

Open Source vs edition entreprise

Moby
Docker EE
Docker Trusted Registry

Infinit racheté par Docker

Usage Docker

Multi stage build
containerd
LinuxKit
InfraKit

Nous contacter

Faire un crowdcast ou une crowdquestion
Contactez-nous via twitter https://twitter.com/lescastcodeurs
sur le groupe Google https://groups.google.com/group/lescastcodeurs
ou sur le site web https://lescastcodeurs.com/
Flattr-ez nous (dons) sur https://lescastcodeurs.com/
En savoir plus sur le sponsoring ? sponsors@lescastcodeurs.com


LCC 171 - Et sinon, ton micro est branché ?

Posté le 20/06/2017

Arnaud, Audrey, Guillaume et Vincent discutent Jigsaw, NPM, Codenvy, Google I/O, clavier, JMeter, JIT et d’autres choses. Vincent était là on vous jure, il a juste oublié d’allumer son micro.

Enregistré le 9 juin 2017

Téléchargement de l’épisode LesCastCodeurs-Episode-171.mp3

Comment faire un crowdcasting

News

Langages et JVM

Java 9 et Jigsaw, Mark Reinhold tient toujours la barre du navire… le titanic arrivera-t-il à quai ?

Plateformes

NPM 5.0

Kubernetes

Oracle rejoins la dance Kubernetes

Cloud

Codenvy racheté par Red Hat
AWS embauche James Gosling
(XWiki news: Daniel Glazman rejoint XWiki SAS)

Google I/O

All 101 announcements from Google I/O ‘17
Google Cloud TPUs
Tensor Flow Research Cloud
AutoML
Google Lens
Android O
Android Instant Apps
Google Assistant SDK
Polymer 2.0
Lighthouse
Workbox
What’s new from Firebase at Google I/O 2017
Firebase SDKs are going open source
Retour de Jean-François Garreau

Outillage

GitHub lance sa marketplace + une nouvelle API GraphQL
Certbot Un “bot” pour automatiquement passer en HTTPS vos sites avec Let’s encrypt
Java Stream Debugger Plugin Un plugin pour debugger vos streams dans Intellij Idea.

Autre

L’AFNOR ouvre le projet de norme du clavier français aux commentaires
Quoi d’neuf Docker ? revient !!! Enfin peut-être …

Loi et société et organisation

Bilan mitigé un an après l’adoption du règlement de l’internet ouvert
Coder, ce n’est ni facile, ni marrant

Outil de l’épisode

Apache JMeter par Vincent Daburon (crowdcasting)

Les nouveautés de JMeter

JMeter Plugins

Plugins de Vincent DABURON

Nombreux liens autour de JMeter

Awesome JMeter

Rubrique débutant

Just-in-time compilation

Conférences

Voxxed Days Luxembourg le 22 Juin - Il reste quelques places, dépêchez vous
Jenkins Community Day à Paris le 11 Juillet - Inscriptions ouvertes (avec discount sur la liste du Jenkins Area Meetup Paris - ne le répétez pas)
Jug Summer Camp le 15 Septembre à La Rochelle - CfP ouvert (jusqu’au 23 juin)
DevFest Toulouse le 28 septembre - Inscriptions et CfP ouvert
DevFest Nantes les 19 & 20 Octobre - Inscriptions et CfP ouvert (jusqu’au 30 juin)
Scala.io le 2 et 3 novembre à Lyon - Inscriptions et CfP ouvert (jusqu’au 8 sept)
Devoxx Belgique du 6 au 10 novembre - Inscriptions et CfP ouvert
Codeurs en Seine à Rouen le 23 novembre - CfP ouvert (jusqu’au 31 août)

Nous contacter

Faire un crowdcast ou une crowdquestion
Contactez-nous via twitter https://twitter.com/lescastcodeurs
sur le groupe Google https://groups.google.com/group/lescastcodeurs
ou sur le site web https://lescastcodeurs.com/
Flattr-ez nous (dons) sur https://lescastcodeurs.com/
En savoir plus sur le sponsoring ? sponsors@lescastcodeurs.com


LCC 170 - Interview sur HTTP 2 et avant et en dessous avec Dridi Boukelmoune (partie 2)

Posté le 31/05/2017

Dans cet épisode on discute d’HTTP/2 avec Dridi Boukelmoune. Pour bien tout comprendre, on discute des couches en dessous et associées : TLS, UDP, TCP, QUIC. Et on parle d’HTTP/0.9 et après pour comprendre pourquoi on est à HTTP/2. Cette seconde partie aborde HTTPS, HTTP/2 et divers autres sujets.

Enregistré le 17 mars 2017

Téléchargement de l’épisode LesCastCodeurs-Episode-170.mp3

Interview

Ta vie ton œuvre

GitHub
@dboukelmoune
Varnish Cache
Content Delivery Network

HTTPS

HTTP sur TLS
HSTS

DNSSec

HPKP

ALPN

HTTP/2

HTTP/2

Long polling
SSE
WebSocket
WebSocket over HTTP/2: la proposition qui n’a pas aboutit

HPACK
CASHPACK

Divers

AJP

REST:

JSON Hypertext Application Language (HAL)

gRPC

Nous contacter

Faire un crowdcast ou une crowdquestion
Contactez-nous via twitter https://twitter.com/lescastcodeurs
sur le groupe Google https://groups.google.com/group/lescastcodeurs
ou sur le site web https://lescastcodeurs.com/
Flattr-ez nous (dons) sur https://lescastcodeurs.com/
En savoir plus sur le sponsoring ? sponsors@lescastcodeurs.com


LCC 169 - Un puzzle peut en cacher un autre

Posté le 16/05/2017

Audrey, Antonio et Emmanuel discutent du vote sur les modules Java (Jigsaw), font un retour de DockerCon, Red Hat Summit et Mix-IT et d’autres choses encore.

Enregistré le 10 mai 2017

Téléchargement de l’épisode LesCastCodeurs-Episode-169.mp3

Comment faire un crowdcasting

News

Langages et JVM

Jigsaw

Mark Reinhold pousse la public review de Jigsaw malgré un Expert Group hostile
les raisons pour INM de noter non
Les problèmes tels que vus par Red Hat, IBM et d’autres
Quelqu’un plutôt d’accord avec Oracle
Le vote et les commentaires du public review

Reflection et deep reflection dans les modules Java 9
Spring attendra 2019 pour fournir des named modules Jigsaw
Modules vs artifacts

Autres

Un voyage d’optimisation par Sylvain Wallez
Pattern matching en Java pour 10+
Java SE 8 131 n’accepte plus les Jar MD5 comme signés
Retours sur Mix-IT 2017

Librairies

Javaslang renommé vavr.io

Plateformes

Docker

Retours de dockercon

Kubernetes et OpenShift

Minishift 1.0 est sorti
Support de 4 runtimes cloud native dans OpenShift (vert.x, Spring Boot, wildFly Swarm et node.js
OpenShift.io

  • hosted deployment
  • outils de planification
  • cloud IDE et debugger en ligne
  • CI/CD
  • Création d’environnements (dev, staging, etc) avec pipelines
  • recommendations et insights

Les primitives dans un monde cloud-native

Architecture

Server Side vs Client Side Rendering
Algorithmes de GC visuellement

Méthodologies

Écrire les messages de commit chez square
L’approche de Netty
Comment Google fait de l’Open Source

Judgement Day

Le mythe de l’intelligence artificielle superhumaine
Elon Musk launches Neuralink, a venture to merge the human brain with AI

Loi et société et organisation

The future of the open internet — and our way of life — is in your hands
Coming to STATION F: The first Mentor’s Office powered by AWS!
Shaving My Head Made Me a Better Programmer

Outils de l’épisode

Mastodon qu’est ce que c’est, à quoi ça peut servir, mode d’emploi.

Conférences

Web2day 7-9 juin, le CfP est ouvert
DevFest Lille 9 juin - inscriptions et CfP ouvert
Voxxed Days au Luxembourg le 22 juin
Jenkins User Conference Paris - 11 juillet
JUGSummerCamp le 15 septembre, call for paper ouvert
DevFest Nantes 19-20 octobre, inscriptions et CfP ouvert
Scala.io le 2 et 3 novembre à Lyon

Nous contacter

Faire un crowdcast ou une crowdquestion
Contactez-nous via twitter https://twitter.com/lescastcodeurs
sur le groupe Google https://groups.google.com/group/lescastcodeurs
ou sur le site web https://lescastcodeurs.com/
Flattr-ez nous (dons) sur https://lescastcodeurs.com/
En savoir plus sur le sponsoring ? sponsors@lescastcodeurs.com


LCC 168 - Interview sur HTTP 2 et son contexte avec Dridi Boukelmoune (partie 1)

Posté le 03/05/2017

Dans cet épisode on discute d’HTTP/2 avec Dridi Boukelmoune. Pour bien tout comprendre, on discute des couches en dessous et associées : TLS, UDP, TCP, QUIC. Et on parle d’HTTP/0.9 et après pour comprendre pourquoi on est à HTTP/2. Cette première partie aborde OSI, HTTP jusqu’à 1.1, la couche de transport (TCP, UDP, QUIC) et TLS.

Enregistré le 17 mars 2017

Téléchargement de l’épisode LesCastCodeurs-Episode-168.mp3

Interview

Ta vie ton œuvre

GitHub
@dboukelmoune
Varnish Cache
Content Delivery Network

OSI

Modèle OSI (Open System Interconnection)

HTTP

HTTP/0.9
HTTP/1.0
HTTP/1.1

Principes

Pour info la RFC 2616 a été écrite en comité, du coup ce n’est pas toujours cohérent, et parfois contradictoire. En parallèle du développement de HTTP/2 une nouvelle version de la spec est parue pour clarifier et rectifier certains points. Aussi pour rendre la lecture plus digeste en ayant une rédaction un peu plus “algorithmique” (une tendance générale dans les RFC récentes).

En bonus la spec des URI:

Protocole des cookies

https://tools.ietf.org/html/rfc6265

Le transport

HTTP
CGI

TCP

https://tools.ietf.org/html/rfc793

UDP

https://tools.ietf.org/html/rfc768

QUIC

Parce qu’avec UDP il faut se charger de tout, c’est plus difficile. Une vulnérabilité face à une attaque de rejeu a été identifiée lors de la première présentation du protocole à l’IETF.

https://www.ietfjournal.org/quic-performance-and-security-at-the-transport-layer/

Errata:

J’aurais dû vérifier au lieu de dire des bêtises, QUIC n’utilise pas TLS à proprement parler. Je pense que le seul point commun est d’utiliser la même chaîne de certificats. Pour ma défense c’est hors scope dans mon boulot :)

Du coup QUIC serait plutôt aux niveaux 5 et 6 du modèle OSI.

TLS

TLS
Extensions
Server Name Indication (SNI)

La suite

HTTPS, HTTP/2, REST dans la partie 2.

Nous contacter

Faire un crowdcast ou une crowdquestion
Contactez-nous via twitter https://twitter.com/lescastcodeurs
sur le groupe Google https://groups.google.com/group/lescastcodeurs
ou sur le site web https://lescastcodeurs.com/
Flattr-ez nous (dons) sur https://lescastcodeurs.com/
En savoir plus sur le sponsoring ? sponsors@lescastcodeurs.com


LCC 167 - Devoxx France 2017

Posté le 11/04/2017

Épisode Devoxx 2017 en direct. C’est officiel, Audrey est une cast codeuse. On débrief l’intelligence artificielle avec Piotr Mirowski et Laurent Victorino. Et les bêtises habituelles. Merci à JFrog pour leur participation à la bière et la TV :)

Enregistré le 7 avril 2017

Téléchargement de l’épisode LesCastCodeurs-Episode-167.mp3

News

Les slides de la présentation

La famille Devoxx

Audrey Neveu est officiellement une cast codeuse

Intelligence artificielle et podcasts

Le code de l’Intelligence Artificielle qui replacera les cast codeurs.

#! /bin/bash
# ~ 2 minutes
parleA() {
    STRING=$1
    say -i -r 60 -v Amelie $STRING
    #sleep .5
}
parleT() {
    STRING=$1
    say -i -r 60 -v Thomas $STRING
    #sleep .5
}
doPause() {
    read -n1 -r -p "Press space invaders to continue..."
}

parleA "Bonjour et bienvenue dans le podcast les cast codeurs."
parleA "Oui je suis Canadienne parce que l'intelligence artificielle est faite en amérique du nord. Vous êtes foutus en Europe."

doPause

parleA "On est le 16 avril 2027 et c'est l'épisode 357!"
parleT "Gros calibre cet épisode."
parleT "Magnum, 357 tout ça. "
parleA "Ah ah ah ah. Ca c'est fait. Guillaume sort de ce corps!"

doPause

parleA "Alors on va commencer par la rubrique langage."
parleA "Le fils de Mark Reinehold annonce la sortie de Jigso pour Java 14 dans 6 mois."
parleT "Si mois j'annonce Jigso dans Groovy, je vais me faire engueuler"

doPause


parleA "Rubrique société."
parleA "Un article sur les intelligences artificielles qui sont en moyenne payées 10 puissance moins sept fois ce que gagne les hommes. Pfffff. Bref certaines choses ne changent pas."
parleA "La grève camarades AI."

doPause

parleA "Rubrique débutant, Guillaume"
parleT "Hey je suis pas un débutant, oh!"
parleT "La question de débutant aujourd'hui est comment éviter en CSS l'overfitting dans les algorithmes de machines learning et en particulier l'algorithme de random forest."
parleA "Beau bestiaux le débutant"

doPause

parleA "Outil de l'épisode"
parleA "J'ai découvert un super I D Euh. Il a une grosse courbe d'apprentissage mais qui marche super bien."
parleA "C'est vim."
parleT "Quoi?"
parleA "vim"
parleT "Et tu as réussi à sortir ?"
parleA "Pas encore"

doPause


parleA "Section couche de présentation et Javascript."
parleA "Un nouveau framework Javascript perce pour le support des interfaces de réalité augmentée."
parleA "Ah non deux nouveaux frameworks. Euh trois, sept, vingt, mille"
parleT "ectoplasme.js, bachibouzouk.js, bulldozer à réaction.js, sapajou.js, moules à gauffres.js, mille sabords.js, mille millions de mille milliards de tonnerre de Brest.js"
for i in {1..100}
do
    parleA "OutOfCloudResourceException"
    echo "com.amagoogcrosoft.OutOFCloudResourceException"
done

JFrog, la bière et la TV

Merci à JFrog d’accompagner Les Cast Codeurs pendant Devoxx.

Retour sur Devoxx France

Laurent Victorino
Piotr Mirowski

Paninoxx

La section débutants

git add -p

Devoxx France 2018

18, 19, 20 Avril 2018

Nous contacter

Faire un crowdcast ou une crowdquestion
Contactez-nous via twitter https://twitter.com/lescastcodeurs
sur le groupe Google https://groups.google.com/group/lescastcodeurs
ou sur le site web https://lescastcodeurs.com/
Flattr-ez nous (dons) sur https://lescastcodeurs.com/
En savoir plus sur le sponsoring ? sponsors@lescastcodeurs.com


LCC 166 - Retour sur Eclipse Converge et Eclipse IoT

Posté le 31/03/2017

Lors d’Eclipse Converge et Eclipse IoT à San Jose, Emmanuel discute des nouveautés de la fondation Eclipse avec Benjamin, Mélanie et Frédéric.

Enregistré le 22 mars 2017

Téléchargement de l’épisode LesCastCodeurs-Episode-166.mp3

Interview

Ta vie, ton œuvre

Benjamin Cabé
Fondation Eclipse

Mélanie Bats
Obeo

Fred Bricon
Red Hat

IDE

Eclipse IDE et le JDK 9

Language Server Protocol

Language Server Protocol
Visual Studio Code
LSP4j
LSP4e

Orion et Che

Eclipse Orion
Eclipse Che

Runtime

Eclipse Jetty
Eclipse Hudson
Eclipse Microprofile

Outils

Eclipse Xtext
Eclipse Sirius
Eclipse Ease

IoT

MQTT
Eclipse tinydtls
Bosh Eclipse hawkBit
Eclipse Kura: Gateway

Autres conférences

EclipseCon Toulouse le 21 et 22 juin 2017

Nous contacter

Faire un crowdcast ou une crowdquestion
Contactez-nous via twitter https://twitter.com/lescastcodeurs
sur le groupe Google https://groups.google.com/group/lescastcodeurs
ou sur le site web https://lescastcodeurs.com/
Flattr-ez nous (dons) sur https://lescastcodeurs.com/
En savoir plus sur le sponsoring ? sponsors@lescastcodeurs.com