Skip to content

Commit

Permalink
Correction de typos sur 2024-02-13-lcc-306-alors-tu-squash-ou-tu-poin…
Browse files Browse the repository at this point in the history
…tes.md
  • Loading branch information
marcwrobel committed Feb 14, 2024
1 parent 739176b commit 602a55e
Showing 1 changed file with 58 additions and 53 deletions.
111 changes: 58 additions & 53 deletions _posts/2024-02-13-lcc-306-alors-tu-squash-ou-tu-pointes.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ tweet: Episode 306 Alors tu squash ou tu pointes? #java #pytorch #dependabot #re
# tweet size: 91-93 -> 99-101 #######################################################################
---

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.
Dans cet épisode, Katia, Emmanuel et Arnaud explorent de nouvelles approches du Builder pattern en Java, l'introduction du Pattern Matching des Primitives en 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ébogage 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
Expand All @@ -27,28 +27,25 @@ Aidez-nous en partageant vos idées, suggestions et souhaits pour 2024, [dans no
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/](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](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)
- 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](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](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/](https://www.infoq.com/news/2024/02/java-enhances-pattern-matching/)
- Exemple:
Pattern Matching Primitives (JEP 455)
[https://openjdk.org/jeps/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.
- Ça l'explique bien ici. Les deux [https://www.infoq.com/news/2024/02/java-enhances-pattern-matching/](https://www.infoq.com/news/2024/02/java-enhances-pattern-matching/).
- Exemple :
- Avant

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

- Maintenant

``` java
if (i instanceof byte b) {
... b ...
Expand All @@ -61,92 +58,100 @@ Pattern Matching Primitives (JEP 455) [https://openjdk.org/jeps/455](https://ope
i instanceof byte; // false (not exact)
```

News Java, le tour [https://www.infoq.com/news/2024/02/java-news-roundup-jan29-2024/](https://www.infoq.com/news/2024/02/java-news-roundup-jan29-2024/)
News Java, le tour
[https://www.infoq.com/news/2024/02/java-news-roundup-jan29-2024/](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.
- 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.

### 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/](https://johnstawinski.com/2024/01/11/playing-with-fire-how-we-executed-a-critical-supply-chain-attack-on-pytorch/)
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/](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
- Soumettre une PR avec une correction de typo.
- Ça leur a permis de faire tourner la CI automatiquement quand ils poussent la PR.
- Soumis une PR qui curl fetch un gist qui tournait sur un runner auto-hébergé.
- 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/](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
- 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/](https://www.infoq.com/news/2024/01/hugging-face-gcp-ai/)
Collab entre Google et Hugging Face
[https://www.infoq.com/news/2024/01/hugging-face-gcp-ai/](https://www.infoq.com/news/2024/01/hugging-face-gcp-ai/)

- intégration avec [Vertex.ai](http://Vertex.ai) et d'autres services Google
- Facilite deploy dans le cloud google et l'intégration avec Kubernetes
- Intégration avec [Vertex.ai](http://Vertex.ai) et d'autres services Google.
- Facilite le 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
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/](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](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/](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
- 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/](https://stackoverflow.blog/2023/08/08/insights-into-stack-overflows-traffic/).
- StackOverflow a changé l’utilisation de Google Analytics, ce qui expliquerait en grande partie la tendance de ce graphe qui porte à confusion.

Amélie Benoit - Dependant Bot Visual way [https://twitter.com/AmelieBenoit33/status/1754397434812203455](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/](https://docs.renovatebot.com/bot-comparison/)
Amélie Benoit - Dependabot Visual way
[https://twitter.com/AmelieBenoit33/status/1754397434812203455](https://twitter.com/AmelieBenoit33/status/1754397434812203455)

- Un outil visuel pour dependabot, tout est dans l'image !
- Différences entre les bots Renovate et Dependabot: [https://docs.renovatebot.com/bot-comparison/](https://docs.renovatebot.com/bot-comparison/).
- Tableau comparatif intéressant

### Méthodologies

Le pouvoir des “conventional commits” par Julien Ponge
[https://julien.ponge.org/blog/the-power-of-conventional-commits/](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
- 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](https://www.nytimes.com/2024/01/11/technology/google-layoffs.html)
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](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&amp;t=C18cckWlfukmsB_Fx0FfxQ](https://x.com/kevinb9n/status/1745890746350321818?s=46&amp;t=C18cckWlfukmsB_Fx0FfxQ)
- Kevin Bourrillon, connu entre autre pour Guava, [fait partie des virés](https://x.com/kevinb9n/status/1745890746350321818).

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](https://techcrunch.com/2024/02/01/okta-layoffs-400-employees/?guccounter=1&guce_referrer=aHR0cHM6Ly9kdWNrZHVja2dvLmNvbS8&guce_referrer_sig=AQAAANLn7NCOa2yn44ysU3fSCDK5s1hgzVrIQzmKFzBjufCMzQhGfyc8mah4EhiPv1I0eoVrzVWbdKn0q6yOYR6-ctpZ42jc6ic-mz-Cdz8lWGVEDLIzEeqsCCE4PfxnhrsnChPT26DJxixmykS1YfPigsyf4vmqqpbMd5tme_GrMBjA)
Okta vire 400 personnes dont Matt Raible
[https://techcrunch.com/2024/02/01/okta-layoffs-400-employees/](https://techcrunch.com/2024/02/01/okta-layoffs-400-employees/)

- 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.
- Cela suit Microsoft (gaming), eBay, SAP, RIOT Games (League of Legends), Google, Amazon (Prime, Audible), Unity et plein 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.francetvinfo.fr/internet/reseaux-sociaux/facebook/facebook-a-20-ans-de-site-incontournable-pour-etudiants-a-truc-de-vieux-on-vous-raconte-la-lente-mutation-du-doyen-des-reseaux-sociaux_6323610.html)
[https://www.bbc.com/news/technology-68109208](https://www.bbc.com/news/technology-68109208)

- Quoi à dire de plus que le temps passe vite ... #old
- Quoi dire de plus, 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](https://www.duchess-france.fr/dossier/women%20in%20tech/alli%C3%A9s/2023/01/15/manuel-survie-femme-tech.html)
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](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
Java Thread Dump - VisualVM, `jstack`, `kill -3`, `jcmd`
[https://www.digitalocean.com/community/tutorials/java-thread-dump-visualvm-jstack-kill-3-jcmd](https://www.digitalocean.com/community/tutorials/java-thread-dump-visualvm-jstack-kill-3-jcmd)

- 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`.

## Conférences

Dans les coulisses du Call for Paper de [Devoxx France 2024](https://www.devoxx.fr/)
Dans les coulisses du Call for Paper de [Devoxx France 2024](https://www.devoxx.fr/).

La liste des conférences provenant de [Developers Conferences Agenda/List](https://github.com/scraly/developers-conferences-agenda)
par [Aurélie Vache](https://github.com/scraly) et contributeurs :
Expand Down

0 comments on commit 602a55e

Please sign in to comment.