Gehen Sie mit der App Player FM offline!
LCC 292 - Enterprise Go Beans
Manage episode 358434715 series 25488
Cet épisode nouvelles discute d’améliorations dans le JDK, d’Hibernate 6, de Service Weaver, de la fin d’options dans DockerHub pour certains projets open source, de Gradle, de cURL et pleins d’autres choses encore.
Enregistré le 17 mars 2023
Téléchargement de l’épisode LesCastCodeurs-Episode–292.mp3
News LangagesQuelle version de JDK utiliser en fonction des fonctionnalités que l’on souhaite utiliser mais aussi du long time support https://whichjdk.com/
JetBrains propose une formation Rust intégrée aux IDEs https://blog.jetbrains.com/rust/2023/02/21/learn-rust-with-jetbrains-ides/
- Un apprentissage directement intégré à l’IDE
- Avec un plugin “Academy” dédié, qui rajoute un troisième panneau avec les instructions, les explications, et on fait des exercices dans la partie IDE
- Une chouette manière d’apprendre intégrée directement à son IDE
- Chacun doit pouvoir créer ses propres ressources d’apprentissage, et on pourrait appliquer ça à des frameworks, des outils, ou pourquoi pas son propre projet informatique !
Retravail de classes du JDK Bits / ByteArray vers un usage via VarHandle pour le swapping de bits dans Java 21 https://minborgsjavapot.blogspot.com/2023/01/java–21-performance-improvements.html
- petit changement mais utilisé par beaucoup de classes comme ObjectInputStream RandomAccessFile etc
- améliore la serialization en java
Rajout de la notion de “sequenced collection” dans la hiérarchie des collections, planifié pour JDK 21 https://www.infoq.com/news/2023/03/collections-framework-makeover/
- va permettre de codifier les collections qui ont un ordre donné (pas forcément trié)
- rajouter aussi des méthodes pour traverser des collections séquentielles à l’envers, ou pour récupérer ou ajouter un élément au début ou à la fin d’une collection ordonnée
- aujourd’hui ces methodes sont eparpillées dans les implémentaions et n’avaient aps de contrat commun
Le guide ultime des virtual threads https://blog.rockthejvm.com/ultimate-guide-to-java-virtual-threads/
- un très long article qui couvre le sujet des nouveaux virtual threads
- comment en créer
- comment ils fonctionnent
- le scheduler et le scheduling coopératif
- les “pinned” virtual threads (lorsqu’un thread virtuel est bloqué dans un vrai thread, par exemple dans un bloc synchronized ou lors d’appel de méthondes natives)
- les thread local et thread pools
Quarkus 3 alpha 5 avec Hibernate ORM 6 et une nouvelle DevUI https://quarkus.io/blog/quarkus–3–0–0-alpha5-released/
- passage d’Hibernate 5 a 6 (donc testez!
- switch de compatibilité supérieur pour aider la transition https://github.com/quarkusio/quarkus/wiki/Migration-Guide–3.0:-Hibernate-ORM–5-to–6-migration#database-orm-compatibility (DB interaction esp schema
- StatelessSession injectable
- Gradle 8
- nouvelle DEvUI (nouveau look and feel, plus extensible pour els extensions et pplus facile a utiliser, va au dela des integrations d’extension (config etc)
- quarkus deploy dans la CLI, gradle et maven: deploie dans Kube, knative, OpenShift
La route vers Quarkus 3, article sure infoq https://www.infoq.com/news/2023/03/road-quarkus–3/
- Jakarta EE, ORM 6, Microprofile 6, virtual threads, io_uring, ReactiveStreams=> Flow
- io_uring reduit les copie de buffer entre userspace et kernel space
- pas de support JPMS en vue mais Red Hat contribue a project Leyden
- Camel extensions, attendez Camel 4 (passage Jakarta EE)
Interview de Geert Bevin, l’auteur du framework Java RIFE2 https://devm.io/java/rife2-java-framework
Google annouce Service Weaver https://opensource.googleblog.com/2023/03/introducing-service-weaver-framework-for-writing-distributed-applications.html
- EJB is back (Enterprise Go Beans :D)
- ecrire en tant que modular monolith
- permet au deploiement décider ce qui est distribué
- basé sur leur experience du surtout de maintance des microservices (contrats plus difficiles a casser - dbesoin de coordination de rollout etc)
- dans la communauté des entousiastes
- et des gens concernés par les 10 falaccies of distributed computing et le fait de cacher les appels distants
- EJB et corba avant cela ont été des échecs de ce point de vue la
- ils n’expliquement pas comment le binding de nouveax contrats et de deploiement se fait de maniere transparente
- des deployeurs implementables (go et GKE initialement)
Etude d’opinion de certains utilisateurs de Jakarta EE (OmniFaces community) https://omnifish.ee/2023/03/10/jakarta-ee-survey–2022–2023-results/
- biaisée donc attention
- Java EE 8 suivi par Jakarta EE 8 et derriere Jakarta EE 10 etc
- WildFly puis Payara puis glassfish ensuite tomee et JBoss EAP
- gens contents de leurs serverus d’app sand Weblogic et Websphere
- les api utilisées le plus JPA, CDI, REST, Faces, Servlet, Bean Validation, JTA, EJB, EL etc
- Produit microprofile: Quarkus puis WildFlky puis Open Liberty puis Payara et Helidon
- Dans microprofile: Config, rest client, open api, health et metric sont les plus utilisés
Comment utiliser des records et Hibernate https://thorben-janssen.com/java-records-embeddables-hibernate/
- pas en tant qu’entité encore (final, pas de constructeur vide)
- mais en tant qu’@Embeddable
- records sont immuable
- dans hibernate 6.2, c’est supporté par default (annoter le record @Embeddable
- Ca utilise le contrat EmbeddableIntentiator
Cinq librairies Java super confortables https://tomaszs2.medium.com/5-amazingly-comfortable-java-libraries–887802e240de
- mapstruct mapper des entités en DTO
- jOOQ requête de bases de données typées
- WireMock mocker des API ou être entre le client et l’API pour ne mocker que certaines requêtes
- Eclipse Collections : pour rendre le code plus simple et facile à comprendre. Attention à la,surface d’attaque
- HikariCP connection pool rapide - agroal est dans la meme veine mais supporte JTA. C’est ce qui est dans Quarkus.
Retour d’expérience sur Hibernate 6 https://www.jpa-buddy.com/blog/hibernate6-whats-new-and-why-its-important/
- côté APIs et côté moteur
- jakarta persistence 3 ; java 11
- annotations de types hibernate sont typesafe
- support des types JSON OOTB
- meilleur support des dates avec @TimeZoneStorage soit natif de la base soit avec une colonne séparée
- changement dans la génération des ID (changement cassant) mais stratégies de noms historique peut être activé
- Options autour de UUID (Time base et IP based)
- composite id n’ont plus besoin d’être serialisable
- type texte long supportés via @JdbcTypeCode
- multitenancy (shared schema, resolver de tenant a plugger)
- read by position (SQL plus court car sans alias, deserialisarion plus rapide, moins de joins dans certains cas)
- modele sous jacent commun entre HQL et l’api criteria et donc même moteur
- meilleure génération du SQL et plus de fonction SQL modernes réduisant le gap entre HQL et SQL
- ronctions analytiques et fenêtre quand la base les supportent
- graphe traverse en largeur plutôt qu’en profondeur (potentiellement plus de join donc bien mettre lazy sur vos associations)
Docker supprime les organisations open source sur DockerHub https://blog.alexellis.io/docker-is-deleting-open-source-images/
- Les projets open source risquent de devoir passer de 0 $ à 420 $ par an pour héberger leurs images
- Rétropédalage de Docker https://www.docker.com/blog/we-apologize-we-did-a-terrible-job-announcing-the-end-of-docker-free-teams/
Une base de connaissance sur le fonctionnement et les bonnes pratiques autour des WebHooks https://nordicapis.com/exploring-webooks-fyi-the-webhooks-knowledge-center/
Guillaume a refondu son blog https://glaforge.dev/
- Cette fois ci, c’est un site web statique, généré avec Hugo, avec des articles en Markdown, hébergé sur Github Pages, buildé / publié automatiquement par Github Actions
Gradle 8.0 est sorti https://docs.gradle.org/8.0/release-notes.html
Une CLI connectée à OpenAI’s Davinci model pour générer vos lignes de commandes https://github.com/TheR1D/shell_gpt
- sgpt -se "start nginx using docker, forward 443 and 80 port, mount current folder with index.html"
- -> docker run -d -p 443:443 -p 80:80 -v $(pwd):/usr/share/nginx/html nginx
- -> Execute shell command? [y/N]: y
Un petit outil en ligne basé sur le modèle GPT–3 qui permet d’expliquer un bout de code https://whatdoesthiscodedo.com/g/db97d13
- Copiez-collez un bout de code de moins de 1000 caractères, et le modèle de code de GPT–3, et l’outil vous explique ce que fait ces quelques lignes de code
- Assez impressionnant quand on pense que c’est un modèle de prédiction probabiliste des prochains caractères logiques
- Certaines réponses donnent vraiment l’impression parfois que l’outil comprends réellement l’intention du développeur derrière ce bout de code
Git: Comment rebaser des branches en cascade https://adamj.eu/tech/2022/10/15/how-to-rebase-stacked-git-branches/
native-image va être inclu dans la prochaine version de GraalVM JDK. Plus besoin de gu install native-image https://github.com/oracle/graal/pull/5995
Si vous utilisez l’outil Mermaid pour faire des graphes d’architecture, d’interactions, etc, il y a un petit cheatsheet sympa qui montre comment faire certains diagrammes https://jojozhuang.github.io/tutorial/mermaid-cheat-sheet/
Un site avec plein de trucs et astuces sur psql, le langage SQL de PostgreSQL https://psql-tips.org/
CURL a 25 ans ! https://daniel.haxx.se/blog/2023/03/10/curl–25-years-online-celebration/
- Son créateur, Daniel Stenberg, est toujours à la tête du projet
- cURL est utilisé dans d’innombrables projets
- par défaut dans plein de systèmes d’exploitation
Cédric Champeau explique le concept de version catalog de Gradle et comment il améliore la productivité https://melix.github.io/blog//2023/03–12-micronaut-catalogs.html
- permet de réduire le temps et l’effort nécessaire à gérer la version de ses dépendances
- apport aussi plus de sécurité, de flexibilité, pour s’assurer qu’on a les bonnes versions les plus récentes des dépendances et qu’elles fonctionnent bien entre elles
La pyramide des besoins du code de qualité https://www.fabianzeindl.com/posts/the-codequality-pyramid
- le bas de la pyramide supporte le haut
- performance de build
- performance de test
- testabilité
- qualité des codes de composants
- fonctionalités
- performance du code
- pour chaque bloc, il explique les raisons, ses definitions et des astuces pour l’ameliorer
- par exemples les fonctionalites changent et donc build, testabilité et qualite de code permet des changements légers en cas de changement dans les fonctionalités
- perf viennent ensuite ("premature opt, root of all evil), regader des besoins globaux
Le DevSusOps est né https://www.infoq.com/news/2023/02/sustainability-develop-operation/?utm_campaign=i[…]nt&utm_source=twitter&utm_medium=feed&utm_term=culture-methods
- bon serieusement, comment on couvre avec un nom pareil sans déraper :man-facepalming:
- ah dommage Micreosoft rejoints la FinOps foundation https://www.infoq.com/news/2023/02/microsoft-joins-finops-org/?utm_campaign=infoq_content&utm_source=twitter&utm_medium=feed&utm_term=Cloud Imagine si ils avaient rejoint la DevSusOps fondation
Plein de choses qu’on peut faire avec des Yubikeys https://debugging.works/blog/yubikey-cheatsheet/
- Pour générer des time-based one-time passwords, pour l’accès SSH,, pour sécuriser un base Keepass, comme 2FA pour le chiffrement de disque, pour la vérification d’identifiant personnel, pour gérer les clés privées…
Le fabricant de graveurs de CPU hollandais ASML se voit interdire d’exporter ses technologies vers la chine https://www-lemagit-fr.cdn.ampproject.org/c/s/www.lemagit.fr/actualites/365532284/Processeurs[…]le-escalade-dans-les-sanctions-contre-la-Chine?amp=1
- en tous cas les technologies de gravure des deux dernières generations
- de la pression commerciale on passe au registre d’exclusion par decision militaire
- ASML s’était fait espionner récemment
- CAnon et Sony aussi dans la restriction
Meta supprime de nouveau 10000 emplois soit 25% au total depuis la fin de l’année dernière https://www.lesechos.fr/tech-medias/hightech/meta-va-supprimer–10000-postes-de-plus–1915528
Rubrique débutantBouger les éléments d’une liste https://www.baeldung.com/java-arraylist-move-items
- discute le concept d’array list en dessous et donc le coût d’insérer au milieu
- decouverte de Collections.swap (pour intervertir deux elements)
- decouverte de Collections.rotate pour “deplacer” l’index zero de la liste
La liste des conférences provenant de Developers Conferences Agenda/List par Aurélie Vache et contributeurs :
- 15–18 mars 2023 : JChateau - Cheverny in the Châteaux of the Loire Valley (France)
- 23–24 mars 2023 : SymfonyLive Paris - Paris (France)
- 23–24 mars 2023 : Agile Niort - Niort (France)
- 30 mars 2023 : Archilocus - Online (France)
- 31 mars 2023–1 avril 2023 : Agile Games France - Grenoble (France)
- 1–2 avril 2023 : JdLL - Lyon 3e (France)
- 4 avril 2023 : AWS Summit Paris - Paris (France)
- 4 avril 2023 : Lyon Craft - Lyon (France)
- 5–7 avril 2023 : FIC - Lille Grand Palais (France)
- 12–14 avril 2023 : Devoxx France - Paris (France)
- 20 avril 2023 : WordPress Contributor Day - Paris (France)
- 20–21 avril 2023 : Toulouse Hacking Convention 2023 - Toulouse (France)
- 21 avril 2023 : WordCamp Paris - Paris (France)
- 27–28 avril 2023 : AndroidMakers by droidcon - Montrouge (France)
- 4–6 mai 2023 : Devoxx Greece - Athens (Greece)
- 10–12 mai 2023 : Devoxx UK - London (UK)
- 11 mai 2023 : A11yParis - Paris (France)
- 12 mai 2023 : AFUP Day - lle & Lyon (France)
- 12 mai 2023 : SoCraTes Rennes - Rennes (France)
- 25–26 mai 2023 : Newcrafts Paris - Paris (France)
- 26 mai 2023 : Devfest Lille - Lille (France)
- 27 mai 2023 : Polycloud - Montpellier (France)
- 31 mai 2023–2 juin 2023 : Devoxx Poland - Krakow (Poland)
- 31 mai 2023–2 juin 2023 : Web2Day - Nantes (France)
- 1 juin 2023 : Javaday - Paris (France)
- 1 juin 2023 : WAX - Aix-en-Provence (France)
- 2–3 juin 2023 : Sud Web - Toulouse (France)
- 7 juin 2023 : Serverless Days Paris - Paris (France)
- 15–16 juin 2023 : Le Camping des Speakers - Baden (France)
- 20 juin 2023 : Mobilis in Mobile - Nantes (France)
- 20 juin 2023 : Cloud Est - Villeurbanne (France)
- 21–23 juin 2023 : Rencontres R - Avignon (France)
- 28–30 juin 2023 : Breizh Camp - Rennes (France)
- 29–30 juin 2023 : Sunny Tech - Montpellier (France)
- 29–30 juin 2023 : Agi’Lille - Lille (France)
- 8 septembre 2023 : JUG Summer Camp - La Rochelle (France)
- 19 septembre 2023 : Salon de la Data Nantes - Nantes (France) & Online
- 21–22 septembre 2023 : API Platform Conference - Lille (France) & Online
- 25–26 septembre 2023 : BIG DATA & AI PARIS 2023 - Paris (France)
- 28–30 septembre 2023 : Paris Web - Paris (France)
- 2–6 octobre 2023 : Devoxx Belgium - Antwerp (Belgium)
- 10–12 octobre 2023 : Devoxx Morroco - Agadir (Morroco)
- 12 octobre 2023 : Cloud Nord - Lille (France)
- 12–13 octobre 2023 : Volcamp 2023 - Clermont-Ferrand (France)
- 12–13 octobre 2023 : Forum PHP 2023 - Marne-la-Vallée (France)
- 19–20 octobre 2023 : DevFest Nantes - Nantes (France)
- 10 novembre 2023 : BDX I/O - Bordeaux (France)
- 6–7 décembre 2023 : Open Source Experience - Paris (France)
- 31 janvier 2024–3 février 2024 : SnowCamp - Grenoble (France)
- 1–3 février 2024 : SnowCamp - Grenoble (France)
Pour réagir à cet épisode, venez discuter sur le groupe Google https://groups.google.com/group/lescastcodeurs
Contactez-nous via twitter https://twitter.com/lescastcodeurs Faire un crowdcast ou une crowdquestion Soutenez Les Cast Codeurs sur Patreon https://www.patreon.com/LesCastCodeurs Tous les épisodes et toutes les infos sur https://lescastcodeurs.com/
318 Episoden
Manage episode 358434715 series 25488
Cet épisode nouvelles discute d’améliorations dans le JDK, d’Hibernate 6, de Service Weaver, de la fin d’options dans DockerHub pour certains projets open source, de Gradle, de cURL et pleins d’autres choses encore.
Enregistré le 17 mars 2023
Téléchargement de l’épisode LesCastCodeurs-Episode–292.mp3
News LangagesQuelle version de JDK utiliser en fonction des fonctionnalités que l’on souhaite utiliser mais aussi du long time support https://whichjdk.com/
JetBrains propose une formation Rust intégrée aux IDEs https://blog.jetbrains.com/rust/2023/02/21/learn-rust-with-jetbrains-ides/
- Un apprentissage directement intégré à l’IDE
- Avec un plugin “Academy” dédié, qui rajoute un troisième panneau avec les instructions, les explications, et on fait des exercices dans la partie IDE
- Une chouette manière d’apprendre intégrée directement à son IDE
- Chacun doit pouvoir créer ses propres ressources d’apprentissage, et on pourrait appliquer ça à des frameworks, des outils, ou pourquoi pas son propre projet informatique !
Retravail de classes du JDK Bits / ByteArray vers un usage via VarHandle pour le swapping de bits dans Java 21 https://minborgsjavapot.blogspot.com/2023/01/java–21-performance-improvements.html
- petit changement mais utilisé par beaucoup de classes comme ObjectInputStream RandomAccessFile etc
- améliore la serialization en java
Rajout de la notion de “sequenced collection” dans la hiérarchie des collections, planifié pour JDK 21 https://www.infoq.com/news/2023/03/collections-framework-makeover/
- va permettre de codifier les collections qui ont un ordre donné (pas forcément trié)
- rajouter aussi des méthodes pour traverser des collections séquentielles à l’envers, ou pour récupérer ou ajouter un élément au début ou à la fin d’une collection ordonnée
- aujourd’hui ces methodes sont eparpillées dans les implémentaions et n’avaient aps de contrat commun
Le guide ultime des virtual threads https://blog.rockthejvm.com/ultimate-guide-to-java-virtual-threads/
- un très long article qui couvre le sujet des nouveaux virtual threads
- comment en créer
- comment ils fonctionnent
- le scheduler et le scheduling coopératif
- les “pinned” virtual threads (lorsqu’un thread virtuel est bloqué dans un vrai thread, par exemple dans un bloc synchronized ou lors d’appel de méthondes natives)
- les thread local et thread pools
Quarkus 3 alpha 5 avec Hibernate ORM 6 et une nouvelle DevUI https://quarkus.io/blog/quarkus–3–0–0-alpha5-released/
- passage d’Hibernate 5 a 6 (donc testez!
- switch de compatibilité supérieur pour aider la transition https://github.com/quarkusio/quarkus/wiki/Migration-Guide–3.0:-Hibernate-ORM–5-to–6-migration#database-orm-compatibility (DB interaction esp schema
- StatelessSession injectable
- Gradle 8
- nouvelle DEvUI (nouveau look and feel, plus extensible pour els extensions et pplus facile a utiliser, va au dela des integrations d’extension (config etc)
- quarkus deploy dans la CLI, gradle et maven: deploie dans Kube, knative, OpenShift
La route vers Quarkus 3, article sure infoq https://www.infoq.com/news/2023/03/road-quarkus–3/
- Jakarta EE, ORM 6, Microprofile 6, virtual threads, io_uring, ReactiveStreams=> Flow
- io_uring reduit les copie de buffer entre userspace et kernel space
- pas de support JPMS en vue mais Red Hat contribue a project Leyden
- Camel extensions, attendez Camel 4 (passage Jakarta EE)
Interview de Geert Bevin, l’auteur du framework Java RIFE2 https://devm.io/java/rife2-java-framework
Google annouce Service Weaver https://opensource.googleblog.com/2023/03/introducing-service-weaver-framework-for-writing-distributed-applications.html
- EJB is back (Enterprise Go Beans :D)
- ecrire en tant que modular monolith
- permet au deploiement décider ce qui est distribué
- basé sur leur experience du surtout de maintance des microservices (contrats plus difficiles a casser - dbesoin de coordination de rollout etc)
- dans la communauté des entousiastes
- et des gens concernés par les 10 falaccies of distributed computing et le fait de cacher les appels distants
- EJB et corba avant cela ont été des échecs de ce point de vue la
- ils n’expliquement pas comment le binding de nouveax contrats et de deploiement se fait de maniere transparente
- des deployeurs implementables (go et GKE initialement)
Etude d’opinion de certains utilisateurs de Jakarta EE (OmniFaces community) https://omnifish.ee/2023/03/10/jakarta-ee-survey–2022–2023-results/
- biaisée donc attention
- Java EE 8 suivi par Jakarta EE 8 et derriere Jakarta EE 10 etc
- WildFly puis Payara puis glassfish ensuite tomee et JBoss EAP
- gens contents de leurs serverus d’app sand Weblogic et Websphere
- les api utilisées le plus JPA, CDI, REST, Faces, Servlet, Bean Validation, JTA, EJB, EL etc
- Produit microprofile: Quarkus puis WildFlky puis Open Liberty puis Payara et Helidon
- Dans microprofile: Config, rest client, open api, health et metric sont les plus utilisés
Comment utiliser des records et Hibernate https://thorben-janssen.com/java-records-embeddables-hibernate/
- pas en tant qu’entité encore (final, pas de constructeur vide)
- mais en tant qu’@Embeddable
- records sont immuable
- dans hibernate 6.2, c’est supporté par default (annoter le record @Embeddable
- Ca utilise le contrat EmbeddableIntentiator
Cinq librairies Java super confortables https://tomaszs2.medium.com/5-amazingly-comfortable-java-libraries–887802e240de
- mapstruct mapper des entités en DTO
- jOOQ requête de bases de données typées
- WireMock mocker des API ou être entre le client et l’API pour ne mocker que certaines requêtes
- Eclipse Collections : pour rendre le code plus simple et facile à comprendre. Attention à la,surface d’attaque
- HikariCP connection pool rapide - agroal est dans la meme veine mais supporte JTA. C’est ce qui est dans Quarkus.
Retour d’expérience sur Hibernate 6 https://www.jpa-buddy.com/blog/hibernate6-whats-new-and-why-its-important/
- côté APIs et côté moteur
- jakarta persistence 3 ; java 11
- annotations de types hibernate sont typesafe
- support des types JSON OOTB
- meilleur support des dates avec @TimeZoneStorage soit natif de la base soit avec une colonne séparée
- changement dans la génération des ID (changement cassant) mais stratégies de noms historique peut être activé
- Options autour de UUID (Time base et IP based)
- composite id n’ont plus besoin d’être serialisable
- type texte long supportés via @JdbcTypeCode
- multitenancy (shared schema, resolver de tenant a plugger)
- read by position (SQL plus court car sans alias, deserialisarion plus rapide, moins de joins dans certains cas)
- modele sous jacent commun entre HQL et l’api criteria et donc même moteur
- meilleure génération du SQL et plus de fonction SQL modernes réduisant le gap entre HQL et SQL
- ronctions analytiques et fenêtre quand la base les supportent
- graphe traverse en largeur plutôt qu’en profondeur (potentiellement plus de join donc bien mettre lazy sur vos associations)
Docker supprime les organisations open source sur DockerHub https://blog.alexellis.io/docker-is-deleting-open-source-images/
- Les projets open source risquent de devoir passer de 0 $ à 420 $ par an pour héberger leurs images
- Rétropédalage de Docker https://www.docker.com/blog/we-apologize-we-did-a-terrible-job-announcing-the-end-of-docker-free-teams/
Une base de connaissance sur le fonctionnement et les bonnes pratiques autour des WebHooks https://nordicapis.com/exploring-webooks-fyi-the-webhooks-knowledge-center/
Guillaume a refondu son blog https://glaforge.dev/
- Cette fois ci, c’est un site web statique, généré avec Hugo, avec des articles en Markdown, hébergé sur Github Pages, buildé / publié automatiquement par Github Actions
Gradle 8.0 est sorti https://docs.gradle.org/8.0/release-notes.html
Une CLI connectée à OpenAI’s Davinci model pour générer vos lignes de commandes https://github.com/TheR1D/shell_gpt
- sgpt -se "start nginx using docker, forward 443 and 80 port, mount current folder with index.html"
- -> docker run -d -p 443:443 -p 80:80 -v $(pwd):/usr/share/nginx/html nginx
- -> Execute shell command? [y/N]: y
Un petit outil en ligne basé sur le modèle GPT–3 qui permet d’expliquer un bout de code https://whatdoesthiscodedo.com/g/db97d13
- Copiez-collez un bout de code de moins de 1000 caractères, et le modèle de code de GPT–3, et l’outil vous explique ce que fait ces quelques lignes de code
- Assez impressionnant quand on pense que c’est un modèle de prédiction probabiliste des prochains caractères logiques
- Certaines réponses donnent vraiment l’impression parfois que l’outil comprends réellement l’intention du développeur derrière ce bout de code
Git: Comment rebaser des branches en cascade https://adamj.eu/tech/2022/10/15/how-to-rebase-stacked-git-branches/
native-image va être inclu dans la prochaine version de GraalVM JDK. Plus besoin de gu install native-image https://github.com/oracle/graal/pull/5995
Si vous utilisez l’outil Mermaid pour faire des graphes d’architecture, d’interactions, etc, il y a un petit cheatsheet sympa qui montre comment faire certains diagrammes https://jojozhuang.github.io/tutorial/mermaid-cheat-sheet/
Un site avec plein de trucs et astuces sur psql, le langage SQL de PostgreSQL https://psql-tips.org/
CURL a 25 ans ! https://daniel.haxx.se/blog/2023/03/10/curl–25-years-online-celebration/
- Son créateur, Daniel Stenberg, est toujours à la tête du projet
- cURL est utilisé dans d’innombrables projets
- par défaut dans plein de systèmes d’exploitation
Cédric Champeau explique le concept de version catalog de Gradle et comment il améliore la productivité https://melix.github.io/blog//2023/03–12-micronaut-catalogs.html
- permet de réduire le temps et l’effort nécessaire à gérer la version de ses dépendances
- apport aussi plus de sécurité, de flexibilité, pour s’assurer qu’on a les bonnes versions les plus récentes des dépendances et qu’elles fonctionnent bien entre elles
La pyramide des besoins du code de qualité https://www.fabianzeindl.com/posts/the-codequality-pyramid
- le bas de la pyramide supporte le haut
- performance de build
- performance de test
- testabilité
- qualité des codes de composants
- fonctionalités
- performance du code
- pour chaque bloc, il explique les raisons, ses definitions et des astuces pour l’ameliorer
- par exemples les fonctionalites changent et donc build, testabilité et qualite de code permet des changements légers en cas de changement dans les fonctionalités
- perf viennent ensuite ("premature opt, root of all evil), regader des besoins globaux
Le DevSusOps est né https://www.infoq.com/news/2023/02/sustainability-develop-operation/?utm_campaign=i[…]nt&utm_source=twitter&utm_medium=feed&utm_term=culture-methods
- bon serieusement, comment on couvre avec un nom pareil sans déraper :man-facepalming:
- ah dommage Micreosoft rejoints la FinOps foundation https://www.infoq.com/news/2023/02/microsoft-joins-finops-org/?utm_campaign=infoq_content&utm_source=twitter&utm_medium=feed&utm_term=Cloud Imagine si ils avaient rejoint la DevSusOps fondation
Plein de choses qu’on peut faire avec des Yubikeys https://debugging.works/blog/yubikey-cheatsheet/
- Pour générer des time-based one-time passwords, pour l’accès SSH,, pour sécuriser un base Keepass, comme 2FA pour le chiffrement de disque, pour la vérification d’identifiant personnel, pour gérer les clés privées…
Le fabricant de graveurs de CPU hollandais ASML se voit interdire d’exporter ses technologies vers la chine https://www-lemagit-fr.cdn.ampproject.org/c/s/www.lemagit.fr/actualites/365532284/Processeurs[…]le-escalade-dans-les-sanctions-contre-la-Chine?amp=1
- en tous cas les technologies de gravure des deux dernières generations
- de la pression commerciale on passe au registre d’exclusion par decision militaire
- ASML s’était fait espionner récemment
- CAnon et Sony aussi dans la restriction
Meta supprime de nouveau 10000 emplois soit 25% au total depuis la fin de l’année dernière https://www.lesechos.fr/tech-medias/hightech/meta-va-supprimer–10000-postes-de-plus–1915528
Rubrique débutantBouger les éléments d’une liste https://www.baeldung.com/java-arraylist-move-items
- discute le concept d’array list en dessous et donc le coût d’insérer au milieu
- decouverte de Collections.swap (pour intervertir deux elements)
- decouverte de Collections.rotate pour “deplacer” l’index zero de la liste
La liste des conférences provenant de Developers Conferences Agenda/List par Aurélie Vache et contributeurs :
- 15–18 mars 2023 : JChateau - Cheverny in the Châteaux of the Loire Valley (France)
- 23–24 mars 2023 : SymfonyLive Paris - Paris (France)
- 23–24 mars 2023 : Agile Niort - Niort (France)
- 30 mars 2023 : Archilocus - Online (France)
- 31 mars 2023–1 avril 2023 : Agile Games France - Grenoble (France)
- 1–2 avril 2023 : JdLL - Lyon 3e (France)
- 4 avril 2023 : AWS Summit Paris - Paris (France)
- 4 avril 2023 : Lyon Craft - Lyon (France)
- 5–7 avril 2023 : FIC - Lille Grand Palais (France)
- 12–14 avril 2023 : Devoxx France - Paris (France)
- 20 avril 2023 : WordPress Contributor Day - Paris (France)
- 20–21 avril 2023 : Toulouse Hacking Convention 2023 - Toulouse (France)
- 21 avril 2023 : WordCamp Paris - Paris (France)
- 27–28 avril 2023 : AndroidMakers by droidcon - Montrouge (France)
- 4–6 mai 2023 : Devoxx Greece - Athens (Greece)
- 10–12 mai 2023 : Devoxx UK - London (UK)
- 11 mai 2023 : A11yParis - Paris (France)
- 12 mai 2023 : AFUP Day - lle & Lyon (France)
- 12 mai 2023 : SoCraTes Rennes - Rennes (France)
- 25–26 mai 2023 : Newcrafts Paris - Paris (France)
- 26 mai 2023 : Devfest Lille - Lille (France)
- 27 mai 2023 : Polycloud - Montpellier (France)
- 31 mai 2023–2 juin 2023 : Devoxx Poland - Krakow (Poland)
- 31 mai 2023–2 juin 2023 : Web2Day - Nantes (France)
- 1 juin 2023 : Javaday - Paris (France)
- 1 juin 2023 : WAX - Aix-en-Provence (France)
- 2–3 juin 2023 : Sud Web - Toulouse (France)
- 7 juin 2023 : Serverless Days Paris - Paris (France)
- 15–16 juin 2023 : Le Camping des Speakers - Baden (France)
- 20 juin 2023 : Mobilis in Mobile - Nantes (France)
- 20 juin 2023 : Cloud Est - Villeurbanne (France)
- 21–23 juin 2023 : Rencontres R - Avignon (France)
- 28–30 juin 2023 : Breizh Camp - Rennes (France)
- 29–30 juin 2023 : Sunny Tech - Montpellier (France)
- 29–30 juin 2023 : Agi’Lille - Lille (France)
- 8 septembre 2023 : JUG Summer Camp - La Rochelle (France)
- 19 septembre 2023 : Salon de la Data Nantes - Nantes (France) & Online
- 21–22 septembre 2023 : API Platform Conference - Lille (France) & Online
- 25–26 septembre 2023 : BIG DATA & AI PARIS 2023 - Paris (France)
- 28–30 septembre 2023 : Paris Web - Paris (France)
- 2–6 octobre 2023 : Devoxx Belgium - Antwerp (Belgium)
- 10–12 octobre 2023 : Devoxx Morroco - Agadir (Morroco)
- 12 octobre 2023 : Cloud Nord - Lille (France)
- 12–13 octobre 2023 : Volcamp 2023 - Clermont-Ferrand (France)
- 12–13 octobre 2023 : Forum PHP 2023 - Marne-la-Vallée (France)
- 19–20 octobre 2023 : DevFest Nantes - Nantes (France)
- 10 novembre 2023 : BDX I/O - Bordeaux (France)
- 6–7 décembre 2023 : Open Source Experience - Paris (France)
- 31 janvier 2024–3 février 2024 : SnowCamp - Grenoble (France)
- 1–3 février 2024 : SnowCamp - Grenoble (France)
Pour réagir à cet épisode, venez discuter sur le groupe Google https://groups.google.com/group/lescastcodeurs
Contactez-nous via twitter https://twitter.com/lescastcodeurs Faire un crowdcast ou une crowdquestion Soutenez Les Cast Codeurs sur Patreon https://www.patreon.com/LesCastCodeurs Tous les épisodes et toutes les infos sur https://lescastcodeurs.com/
318 Episoden
Alle Folgen
×Willkommen auf Player FM!
Player FM scannt gerade das Web nach Podcasts mit hoher Qualität, die du genießen kannst. Es ist die beste Podcast-App und funktioniert auf Android, iPhone und im Web. Melde dich an, um Abos geräteübergreifend zu synchronisieren.