LCC 306 - Alors tu squash ou tu pointes ?

Épisode de Les Cast Codeurs Podcast par Emmanuel Bernard, Guillaume, Antonio, Arnaud, Katia · 13 février 2024 · 1 h 32 min

Dans cet épisode, Katia, Emmanuel et Arnaud explorent de nouvelles approches du Builder pattern en Java, l'introduction du Pattern Matching Primitives dans Java, et les déboires de l'intelligence artificielle avec des attaques de la chaîne d'approvisionnement sur Pytorch. Ils abordent aussi les licenciements dans diverses entreprises technologiques, l'évolution du trafic de Stackoverflow et donnent de conseils pratiques pour les développeurs, notamment sur les commits conventionnels, la mise à jour de dépendances avec Dependabot, Renovate et le déboggage des programmes Java. Ils terminent avec leur retour d'expérience sur la relecture des sujets de Devoxx France 2024.

Enregistré le 9 février 2024

Téléchargement de l'épisode LesCastCodeurs-Episode-306.mp3

Votre avis compte énormément pour nous ! 🎧 Nous voulons rendre Les Cast Codeurs encore plus genial, et c'est là que vous intervenez. 🌟 Aidez-nous en partageant vos idées, suggestions et souhaits pour 2024, dans notre tout nouveau formulaire de retour. C'est rapide, facile et ça ne prend que 2 minutes.

News

Langages

Une approche différente du Builder pattern en Java, inspirée par ce qui se fait dans la communauté Golang https://glaforge.dev/posts/2024/01/16/java-functional-builder-approach/

Les builders, surtout quand ils sont imbriqués les uns dans les autres, peuvent devenir un peu verbeux à lire

Est-ce qu'on peut prendre une nouvelle approche ? Oui, en tirant parti des lambdas, avec des méthodes de mutation qui retournent des lambda qui effectuent la mutation

On retrouve le plaisir de pouvoir construire une instance à l'aide d'un constructeur, plutôt qu'un builder

En recherchant le sujet, Guillaume est aussi tombé sur une approche type safe du builder classique https://www.endoflineblog.com/type-safe-builder-pattern-in-java-and-the-jilt-library (qui est implémentée sous forme d'annotation processor dans le petit projet open source Jilt)

Pattern Matching Primitives (JEP 455) https://openjdk.org/jeps/455

Uniformité autorisant le pattern de type pour tous les types, qu'ils soient primitifs ou de référence et sécurité dans la conversion de types et éviter les erreurs runtime pour les conversions de type. Plus de robustesse

Ca l'explique bien ici. Les deux https://www.infoq.com/news/2024/02/java-enhances-pattern-matching/

Exemple:

Avant

if (i >= -128 && i 127) { byte b = (byte)i; ... b ... }

Maintenant

if (i instanceof byte b) { ... b ... } byte b = 42; b instanceof int; // true (unconditionally exact) int i = 42; i instanceof byte; // true (exact) int i = 1000; i instanceof byte; // false (not exact)

News Java, le tour https://www.infoq.com/news/2024/02/java-news-roundup-jan29-2024/

Open JDK avec preview de Classe File API

JDK 22 et 23

Glassfish, GraalVM, Spring, Quarkus, Infinispan, Hibernate, Grails, Vert.x… plein d'outils

Keycloak

Langchain

Lire les détails dans l'article d'InfoQ

etc.

Data et Intelligence Artificielle

Une attaque de supply chain sur Pytorch et l'IA https://johnstawinski.com/2024/01/11/playing-with-fire-how-we-executed-a-critical-supply-chain-attack-on-pytorch/

Soumettre une PR avec une correction de typo

ca leur a approuvé de faire tourner la CI automatiquement quand ils poussent la PR

soumis une PR qui curl fetch un gist qui tournait sur un runner self-hosté

et ils ont choppé les tokens pour plus tard publier les binaires dans les repos officiels

et personne n'a rien vu

Support du modèle de génération d'image Imagen dans LangChain4j rajouté dans la dernière version du project https://glaforge.dev/posts/2024/02/01/image-generation-with-imagen-and-langchain4j/

contribué par Guillaume

on peut générer des images, mais aussi les éditer

Collab entre Google et Hugging Face https://www.infoq.com/news/2024/01/hugging-face-gcp-ai/

intégration avec Vertex.ai et d'autres services Google

Facilite deploy dans le cloud google et l'intégration avec Kubernetes

Guillaume a écrit un article et développé une application pour visualiser les tokens générés par les large language models dérivés du modèle PaLM https://glaforge.dev/posts/2024/02/05/visualize-palm-based-llm-tokens/

Outillage

Stackoverflow voit son traffic diminuer doucement depuis quelques années, mais depuis l'avènement de ChatGPT et consort, la chute s'accélère https://twitter.com/swyx/status/1753122780709871834

mais apparemment, ce graphique ne serait pas correct selon StackOverflow, qui n'aurait perdu que 5% par rapport à l'année dernière

https://stackoverflow.blog/2023/08/08/insights-into-stack-overflows-traffic/

StackOverflow ont changé l'utilisation de Google Analytics, ce qui expliquerait en grande partie la tendance de ce graphe qui porte à confusoin

Amélie Benoit - Dependant Bot Visual way https://twitter.com/AmelieBenoit33/status/1754397434812203455

Un outil visuel pour dependant bot! tout est dans l'image!

Différences entre les bots Renovate et Dependabot https://docs.renovatebot.com/bot-comparison/

Tableau comparatif intéressant

Méthodologies

Le pouvoir des "conventional commits" par Julien Ponce https://julien.ponge.org/blog/the-power-of-conventional-commits/

Convention poussée par l'équipe Angular, à la base

Pour standardiser et clarifier les messages de commits

Mais aussi pratique pour les outils comme JReleaser pour automatiser les release notes d'un projet

Loi, société et organisation

Google vire encore des ingénieurs dans la division matérielle pixel, et dans les ingénieurs cœur https://www.nytimes.com/2024/01/11/technology/google-layoffs.html

Kevin Bourrillon connu pour Guava entre autre fait partie des virés https://x.com/kevinb9n/status/1745890746350321818?s=46&t=C18cckWlfukmsB_Fx0FfxQ

Okta vire 400 personnes dont Matt Raible https://techcrunch.com/2024/02/01/okta-layoffs-400-employees/?guccounter=1&guce_referrer=aHR0cHM6Ly9kdWNrZHVja2dvLmNvbS8&guce_referrer_sig=AQAAANLn7NCOa2yn44ysU3fSCDK5s1hgzVrIQzmKFzBjufCMzQhGfyc8mah4EhiPv1I0eoVrzVWbdKn0q6yOYR6-ctpZ42jc6ic-mz-Cdz8lWGVEDLIzEeqsCCE4PfxnhrsnChPT26DJxixmykS1YfPigsyf4vmqqpbMd5tme_GrMBjA

cela suit Microsoft (gaming), eBay, SAP, RIOT Games (League of Legend), Google, Amazon (prime, audible), Unity etc pleins d'autres. Tout ça juste en janvier.

Facebook fête ses 20 ans https://www.francetvinfo.fr/internet/reseaux-sociaux/facebook/facebook-a-20-ans-de-sit[…]la-lente-mutation-du-doyen-des-reseaux-sociaux_6323610.html https://www.bbc.com/news/technology-68109208

Quoi à dire de plus que le temps passe vite … #old

Rubrique débutant

Manuel de survie de la femme dans la tech https://www.duchess-france.fr/dossier/women%20in%20tech/alli%C3%A9s/2023/01/15/manuel-survie-femme-tech.html

Parfois vos programmes Java ont l'air bloqués. Vous pouvez effectuer un thread dump dans un autre terminal en récupérant le PID du process Java et en faisant un kill -3 PID https://www.digitalocean.com/community/tutorials/java-thread-dump-visualvm-jstack-kill-3-jcmd

Conférences

Dans les coulisses du Call for Paper de Devoxx France 2024

La liste des conférences provenant de Developers Conferences Agenda/List par Aurélie Vache et contributeurs :

8-9 février 2024 : Touraine Tech - Tours (France)

15-16 février 2024 : Scala.IO - Nantes (France)

6-7 mars 2024 : FlowCon 2024 - Paris (France)

14-15 mars 2024 : pgDayParis - Paris (France)

17-18 mars 2024 : Cloud Native Rejekts EU 2024 - Paris (France)

19 mars 2024 : AppDeveloperCon - Paris (France)

19 mars 2024 : ArgoCon - Paris (France)

19 mars 2024 : BackstageCon - Paris (France)

19 mars 2024 : Cilium + eBPF Day - Paris (France)

19 mars 2024 : Cloud Native AI Day Europe - Paris (France)

19 mars 2024 : Cloud Native StartupFest Europe - Paris (France)

19 mars 2024 : Cloud Native Wasm Day Europe - Paris (France)

19 mars 2024 : Data on Kubernetes Day - Paris (France)

19 mars 2024 : Istio Day Europe - Paris (France)

19 mars 2024 : Kubeflow Summit Europe - Paris (France)

19 mars 2024 : Kubernetes on Edge Day Europe - Paris (France)

19 mars 2024 : Multi-Tenancy Con - Paris (France)

19 mars 2024 : Observabiity Day Europe - Paris (France)

Autres épisodes de « Les Cast Codeurs Podcast »

À propos du podcast

Les Cast Codeurs : le 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 (ex Red Hat,…

Les Cast Codeurs Podcast

Épisodes similaires

Tous les épisodes de Les Cast Codeurs Podcast · Plus de podcasts Actualités