Episodit

  • Emmanuel, Guillaume et Arnaud discutent des nouvelles de l’étĂ©. JEPs, transactional outbox pattern avec Spring, LLM dans Chrome, faille polyfill.io, TOTP, congĂ©s illimitĂ©s et IDE payant ou pas payant ?

    Enregistré le 12 juillet 2024

    TĂ©lĂ©chargement de l’épisode LesCastCodeurs-Episode-314.mp3

    News Langages

    Les fonctionnalités de JDK 23 ont été figées début Juin (release prévue en septembre) https://openjdk.org/projects/jdk/23/ https://www.youtube.com/watch?v=kzjGp7LmW0I

    JEPs finales: 467: Markdown Documentation Comments 471: Deprecate the Memory-Access Methods in sun.misc.Unsafe for Removal 474: ZGC: Generational Mode by Default JEPs en incubation / preview 455: Primitive Types in Patterns, instanceof, and switch (Preview) 466: Class-File API (Second Preview) 469: Vector API (Eighth Incubator) 473: Stream Gatherers (Second Preview) 476: Module Import Declarations (Preview) 477: Implicitly Declared Classes and Instance Main Methods (Third Preview) 480: Structured Concurrency (Third Preview) 481: Scoped Values (Third Preview) 482: Flexible Constructor Bodies (Second Preview) Librairies

    Le transactional outbox pattern avec Spring Boot https://www.wimdeblauwe.com/blog/2024/06/25/transactional-outbox-pattern-with-spring-boot/

    transactional outbox permet d’éviter des 2PC ou des dĂ©synchronisations de resources: typiquement un commit dans une base et un envoie de message dans un bus on ecrit le message dans une table de la base de donnĂ©es, et un process sĂ©parĂ© rĂ©cupĂšre les messages et les envoient dans le bus implĂ©mentation utilise Spring Integration dans l’article, la seconde resource est l’envoie d’email montre une approche de tests le flow descrit pas psring integration est pas super trivial a lire quand on est pas familier mais cela poll la table toutes les secondes et envoie email et si succes de l’appel de service, vide le message de la table Deuxieme exemple avec Spring modulith qui a un event bus interne qui peut ĂȘtre persistĂ© dĂ©crit les differences avec spring integration et les limites de l’approche modulith (message order, retry etc)

    Comment tester des valeurs de propriétés différentes dans un test Quarkus https://quarkus.io/blog/overriding-configuration-from-test-code/

    on a tendance a ne pas tester les propriĂ©tĂ©s de config ce blog montre 5 (enfin 4 utiles) façons de le faire avec Quarkus. les profils de test, mocker l’objet de config, les test components (experimental), l’injection dans les constructeurs

    Quarkus 3.12 https://quarkus.io/blog/quarkus-3-12-0-released/

    centralisation des configs TLS support pour le load shedding (reject requests on service overload) événements JFR specific a Quarkus native image agent support Spring Boot 3 (compat layer) Support Kotlin 2 etc Cloud

    On vous parlait dans un Ă©pisode prĂ©cĂ©dent de ce problĂšme de coĂ»ts S3 sur des requĂȘtes non autorisĂ©es. C’est Graphana Loki qui a mis ce problĂšme sous les projecteurs https://grafana.com/blog/2024/06/27/grafana-security-update-grafana-loki-and-unintended-data-write-attempts-to-amazon-s3-buckets/

    le problĂšme venait des valeurs par dĂ©faut des buckets dĂ©clarĂ©s dans le chart helm de Loki, en particulier celui nommĂ© ‘chunks’ Data et Intelligence Artificielle

    Guillaume avait partagĂ© l’information sur la disponibilitĂ© prochaine d’un mini modele LLM dans chrome. C’est maintenant une rĂ©alitĂ© et vous pouvez le tester.

    https://ai-sdk-chrome-ai.vercel.app/

    NĂ©cessite Chrome 127 (version stable Ă  partir de mi-juillet) Utilise le SDK Vercel AI

    Guillaume nous parle de toutes les nouveautés liées au modÚle Gemini de Google dans la derniÚre release de LangChain4j https://glaforge.dev/posts/2024/07/05/latest-gemini-features-support-in-langchain4j/

    Outillage

    1% des utilisateurs de Maven Central utilisent 83% de sa bande passante. Installez un repository manager qui fait proxy (et cela pour tous les types de dépendances)!!!

    https://www.sonatype.com/blog/maven-central-and-the-tragedy-of-the-commons

    rien n’est rĂ©ellement gratuit et l’abus d’une minoritĂ© peut nuire Ă  l’ensemble. Cela fait maintenant plus de 20 ans que les communautĂ©s le rĂ©pĂšte: installer un gestionnaire de dĂ©pendances dans votre infrastructure (nexus, artifactory, CodeArtifact, 
). En plus de protĂ©ger le bien commun cela vous permet de raffiner le filtrage des dĂ©pendances, d’assurer la reproductibilitĂ© de vos builds, d’optimiser les performances (et rĂ©duire les coĂ»ts) en ne tĂ©lĂ©chargeant que depuis votre propre infrastructure, etc 
 Maven Central est un commun qui ne coute rien Ă  l’utilisteur mais qui est indispensable Ă  tous 1000 milliards de tĂ©lĂ©chargements l’annĂ©e derniĂšre 83% de la bande passante consommĂ© par 1% des IPs Beaucoup des ces IP viennent des companies les plus larges proxy pour rĂ©duire charge sur central, rĂ©duire couts ingress/egress ils vont implementer un mĂ©canisme de throttling question est-ce que la concentration des IPs veut juste dire que c’est le dernier noeud mais que cacher n’est pas effectif pour eux et qu’il y a des milliers de clients derriĂšre une IP? le trotting ferait mal et le proxy ne marche plus dans un monde ou le dev est dans le cloud et distribue gĂ©ographiquement

    Comment mettre en place backstage, ici avec un projet Spring Boot utilisant CircleCi, Renovate, SonarCloud


    https://piotrminkowski.com/2024/06/13/getting-started-with-backstage/

    Cet article explique comment utiliser backstage pour fournir Ă  vos Ă©quipes un template d’une application spring-boot. Elle est automatiquement crĂ©e sous forme d’un repository git(hub) avec les integrations classiques pour gĂ©rer la CI (via CircleCI), la qualitĂ© (via SonarCloud), la mise Ă  jour de dĂ©pendances (via Renovate) et bien sur son rĂ©fĂ©rencement sur le portail backstage. tutoriel tres complet tres facilement remplacable pour un project avec votre technologie preferee (pas specifique a Spring Boot, ou Java) Architecture

    Que se passe t’il quand vous faites un push sur GitHub? https://github.blog/2024-06-11-how-we-improved-push-processing-on-github/

    GitHub explique comment ils ont amĂ©liorĂ© leur architecture, notamment en mettant en place Kafka pour distribuer les actions qui dĂ©coulent d’un push sur GitHub. paralelisation des taches (avant sequentiel) limitation des dependances entre etapes effectuĂ©es lors d’un push plus de taches peuvent faire un retry un classique de decoupling via un EDA SĂ©curitĂ©

    Attaque du CDN polyfill.io https://sansec.io/research/polyfill-supply-chain-attack

    polyfill c’est un support de nouvelles fonctionalites dans les ancien navigateurs servi par cdn notamment une societe chinoise a achete le domaine et le github et injecte du malware qui pointe sur des serveurs qui servent le malware selectivement (device, admin ou pas, heure de la journĂ©e) Fastly et Cloudflare on des deploiements alternatiuve

    Une faille de sécurité, de type Remote Code Execution, vieille de 10ans, dans CocoaPods, un gestionnaire de dépendances trÚs utilisé dans le monde Apple (macOS et iOS)

    https://securityboulevard.com/2024/07/cocoapods-apple-vulns-richixbw/

    https://cocoapods.org/ / https://cocoapods.org/ est un gestionnaire de dĂ©pendances pour les projets Xcode. Les dependances (Pods) sont publiĂ©es sous forme de Specs qui sont rĂ©fĂ©rencĂ©es dans un Specs Repo (une sorte de Maven central mais seulement avec des metadonnĂ©es) CVE-2024-38366 est une vulnĂ©rabilitĂ© de type remote code execution avec un score CVSS de 10 La faille existait depuis 10 ans et a Ă©tĂ© corrigĂ©e en Sept 2023. Elle permettait d’avoir un accĂšs root sur trunk.cocoapods.org qui stock les Specs. Elles auraient donc pu ĂȘtre modifiĂ©es sans que les auteurs ne s’en apperçoivent. Pas de preuve pour l’instant que la faille ait Ă©tĂ© exploitĂ©e

    Mieux comprendre la double authentification avec TOTP

    https://hendrik-erz.de/post/understanding-totp-two-factor-authentication-eli5

    Cet article revient sur le fonctionnement de TOTP et comment l’implementer avec des exemples en python the QR code est une URL qui contient: le secret en base 32. le nom du totp, qui a fournit le TOTP, combien de chiffres et la durĂ©e de vie du TOTP pour generer les chiffres, prends le secret, le temps et hash le tout, prendre 4 bytes et les convertir le chiffres typiquement le serveur genere les deux d’avant, les deux d’apres et le courant pour comparer Loi, sociĂ©tĂ© et organisation

    L’équipe Apache Maven gagne le troisiĂšme prix BlueHats https://nlnet.nl/bluehatsprize/2024/3.html

    le projet remporte un gain de 10000€. Ce prix est organisĂ© par le gouvernement français afin de rĂ©compenser les projets open sources les plus impactants.

    La clause de congés illimités en Europe

    https://www.osborneclarke.com/insights/why-your-unlimited-vacation-policy-may-be-of-limited-use-in-europe

    Les politiques de congĂ©s illimitĂ©s, populaires aux États-Unis, ne sont pas aussi avantageuses en Europe. En Europe, les employeurs doivent suivre les congĂ©s pris pour respecter les minima lĂ©gaux de quatre semaines par an donc ils ne peuvent pas economiser sur le faire de ne plus les gĂ©rer. Les congĂ©s illimitĂ©s permettent aux US de ne plus Ă  devoir les payer au dĂ©part de l’employĂ©. En Europe les employeurs doivent payer les congĂ©s non utilisĂ©s lors de la fin du contrat. Les employĂ©s europĂ©ens pourraient prendre davantage de congĂ©s, car ils sont mieux protĂ©gĂ©s contre le licenciement. Les jours de maladie sont plus cadrĂ©s en europe. Un employĂ© qui souffre d’une maladie longue pourrait utiliser les congĂ©s illimitĂ©s mais ce ne sont pas les mĂȘme rĂšgles qui s’appliquent

    OpenDNS n’est plus disponible en France et au Portugal

    https://support.opendns.com/hc/en-us/articles/27951404269204-OpenDNS-Service-Not-Available-To-Users-In-France-and-Portugal

    A priori Cisco qui opĂšre openDNS en a marre des demandes de restrictions spĂ©cifiques Ă  nos pays et prĂ©fĂšre donc retirer entiĂšrement l’accĂšs au service plutĂŽt que de se conformer Ă  la niĂšme demande de restrictions qui faisait suite Ă  la plainte du groupe Canal+ portant sur l’accĂšs Ă  des sites illicites de streaming pour du sport Ask Me Anything

    Salut ! Êtes-vous plutĂŽt IDE payants (ex : IJ Ultimate, ou des plugins payants), ou ne jurez-vous que par des outils gratuits ? Un peu des deux ? Si adaptes du payant, ça ne vous dĂ©prime pas qu’un nombre considĂ©rable d’employeurs rechignent Ă  nous payer nos outils ? Que “de toute façon VSCode c’est gratuit” (Ă  prononcer avec une voix mĂ©prisante) ? Quid du confort, ou de la productivitĂ© et/ou qualitĂ© accrue quand on maĂźtrise de tels outils ? Merci !

    Conférences

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

    6 septembre 2024 : JUG Summer Camp - La Rochelle (France) 6-7 septembre 2024 : Agile Pays Basque - Bidart (France) 17 septembre 2024 : We Love Speed - Nantes (France) 17-18 septembre 2024 : Agile en Seine 2024 - Issy-les-Moulineaux (France) 19-20 septembre 2024 : API Platform Conference - Lille (France) & Online 25-26 septembre 2024 : PyData Paris - Paris (France) 26 septembre 2024 : Agile Tour Sophia-Antipolis 2024 - Biot (France) 2-4 octobre 2024 : Devoxx Morocco - Marrakech (Morocco) 7-11 octobre 2024 : Devoxx Belgium - Antwerp (Belgium) 8 octobre 2024 : Red Hat Summit: Connect 2024 - Paris (France) 10 octobre 2024 : Cloud Nord - Lille (France) 10-11 octobre 2024 : Volcamp - Clermont-Ferrand (France) 10-11 octobre 2024 : Forum PHP - Marne-la-Vallée (France) 11-12 octobre 2024 : SecSea2k24 - La Ciotat (France) 16 octobre 2024 : DotPy - Paris (France) 16-17 octobre 2024 : NoCode Summit 2024 - Paris (France) 17-18 octobre 2024 : DevFest Nantes - Nantes (France) 17-18 octobre 2024 : DotAI - Paris (France) 30-31 octobre 2024 : Agile Tour Nantais 2024 - Nantes (France) 30-31 octobre 2024 : Agile Tour Bordeaux 2024 - Bordeaux (France) 31 octobre 2024-3 novembre 2024 : PyCon.FR - Strasbourg (France) 6 novembre 2024 : Master Dev De France - Paris (France) 7 novembre 2024 : DevFest Toulouse - Toulouse (France) 8 novembre 2024 : BDX I/O - Bordeaux (France) 13-14 novembre 2024 : Agile Tour Rennes 2024 - Rennes (France) 20-22 novembre 2024 : Agile Grenoble 2024 - Grenoble (France) 21 novembre 2024 : DevFest Strasbourg - Strasbourg (France) 21 novembre 2024 : Codeurs en Seine - Rouen (France) 27-28 novembre 2024 : Cloud Expo Europe - Paris (France) 28 novembre 2024 : Who Run The Tech ? - Rennes (France) 3-5 décembre 2024 : APIdays Paris - Paris (France) 4-5 décembre 2024 : DevOpsRex - Paris (France) 4-5 décembre 2024 : Open Source Experience - Paris (France) 6 décembre 2024 : DevFest Dijon - Dijon (France) 22-25 janvier 2025 : SnowCamp 2025 - Grenoble (France) 16-18 avril 2025 : Devoxx France - Paris (France) Nous contacter

    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/

  • Katia, Guillaume, Emmanuel et Antonio discutent Kotlin, Micronaut, Spring Boot, Quarkus, Langchain4j, LLMs en Java, builds reproductible et la question AMA du jour, comment fait-on carriĂšre de dev Ă  40 ans ?

    Enregistré le 14 juin 2024

    TĂ©lĂ©chargement de l’épisode LesCastCodeurs-Episode-313.mp3

    News Langages

    Android avec Kotlin Multiplatform our Flutter avec Dart ? https://developers.googleblog.com/en/making-development-across-platforms-easier-for-developers/

    Des licenciements ont continuĂ© chez Google et l’équipe Flutter/Dart comme plein d’autres ont Ă©tĂ© touchĂ©es, mais sur les rĂ©seaux sociaux les gens ont pensĂ© que Google dĂ©sinvestissait dans Flutter et Dart. Par ailleurs, cĂŽtĂ© Android, ils poussent plutĂŽt du cĂŽtĂ© de Kotlin et KMP, mais naturellement aussi les gens se sont demandĂ© si Google avait pris parti pour pousser plus Kotlin/KMP plutĂŽt que Flutter/Dart. Pour essayer de mieux faire comprendre aux dĂ©veloppeurs l’intĂ©rĂȘt des deux plateformes, et leurs avantages et inconvĂ©nients, les directeurs des deux plateformes ont rĂ©digĂ© un article commun. Si l’on souhaite une expĂ©rience plus proche du hardware et des derniĂšres nouveautĂ©s d’Android, et d’avoir aussi une UI/UX vraiment native Android, mieux vaut aller du cĂŽtĂ© de Kotlin/KMP. Si l’on souhaite par contre une expĂ©rience multiplateforme Web, mobile, desktop avec une UX commune cross-plateforme, avec Ă©galement le partage de business logic Ă  partir d’une mĂȘme base de code, Flutter et Dart sont plus adaptĂ©s.

    Recap de KotlinConf https://x.com/gz_k/status/1793887581433971083?s=46&t=C18cckWlfukmsB_Fx0FfxQ

    RPC multiplatform la pres Grow with the flow montrant la reecriture en kotlin plus simple que des solutions complexes ailleurs power-assert pour ecrire des tests Kotlin 2.0 et les evolutions majeures Kotlin multiplatforme mainteant stable Kotlin Compose Multiplatform continue a amturer Retour d’experience de la migration d’android jetpack vers Kotlin Multiplatform use cases de coroutines et scope Librairies

    Quarkus veut aller dans une fondation https://quarkus.io/blog/quarkus-in-a-foundation/

    ameliorer l’adoption (encore plus), ameliorer la transparence, et la collaboration, encourager la participatiopn multi vendeur Premiere etape : une gouvernance plus overte Deuxieme etape: bouger dans uen foundation Echange avec la communaute sur la proposition et les fondations cibles Des criteres pour al foudnation (notamment la rapidite de delivery

    Quarkus 3.11 https://quarkus.io/blog/quarkus-3-11-0-released/

    Websocket.next en cours Dev services pour observabilite (grafana, jaegel, open telemetry extension infinispan cache #38448 - Observability extensions - Dev Services, Dev Resources, LGTM #39836 - Infinispan Cache Extension #40309 - WebSockets Next: client endpoints #40534 - WebSockets Next: initial version of security integration #40273 - Allow quarkus:run to launch Dev Services #40539 - Support for OIDC session expired page #40600 - Introduce OidcRedirectFilter

    LangChain4j 0.31 est sorti https://github.com/langchain4j/langchain4j/releases/tag/0.31.0

    Recherche Web pour le RAG avec Google et Tavily RAG avec les bases de donnĂ©es SQL (expĂ©rimental) RĂ©cupĂ©ration des resources remontĂ©es par le RAG lorsque AiServices retourne un Result ObservabilitĂ© LLM pour OpenAI pour ĂȘtre notifiĂ© des requĂȘtes, rĂ©ponses et erreurs IntĂ©gration de Cohere (embedding), Jina (embedding et re-ranking scoring), Azuere CosmosDB comme embedding store Mise Ă  jour de Gemini avec le parallel function calling et les instructions systĂšme

    Spring Boot 3.3.0 est sorti https://spring.io/blog/2024/05/23/spring-boot-3-3-0-available-now

    support Class Data Sharing Micrometer sipport de spantag etc Amelioration Spring Security comme JwtAuthenticationCovnerter support docker compose pour les images container bitnami Virtual thread pour les websockets Support sBOM via an actuator SNI for embedded web servers une nouvelle doc via antora

    Micronaut 4.5 est sortie https://github.com/micronaut-projects/micronaut-platform/releases/tag/v4.5.0

    Le serveur basĂ© sur Netty inclus la dĂ©tection d’opĂ©ration bloquante et les modules l’utilisant indiqueront Ă  l’utilisateur quand certaines opĂ©rations peuvent ĂȘtre redirigĂ©e plutĂŽt sur un virtual thread ou dans le thread pool IO Micronaut Data inclus le support de la multitenance avec partitionnement par discriminateur pour JDBC et R2DBC Micronaut Data rajoute le pagination par curseur pour JDBC et R2DBC (important aussi pour Jakarta Data) Support des annotations Jakarta Servlet pour configurer par exemple les servelet filters Support virtual thread et HTTP/2 Un nouveau module JSON Schema pour gĂ©nĂ©rer des JSON Schemas pour les records Java Un nouveau module Source Gen pour faire de la gĂ©nĂ©ration de source pour Java et Kotlin cross-language Un nouveau module Guice pour importer des modules Guice existants Web

    Angular 18 est sorti https://blog.angular.dev/angular-v18-is-now-available-e79d5ac0affe

    Support expĂ©rimental pour la dĂ©tection de changement sans zone Angular.dev est dĂ©sormais le nouveau site pour les dĂ©veloppeurs Angular Material 3, les “deferrable views”, le “built-in control flow” sont maintenant stables et intĂšgrent une sĂ©rie d’amĂ©liorations AmĂ©liorations du rendu cĂŽtĂ© serveur telles que le support de l’hydratation i18n, un meilleur dĂ©bogage, le support de l’hydratation dans Angular Material, et la event replay qui utilise la mĂȘme bibliothĂšque que Google Search. Data et Intelligence Artificielle

    Une version pure Java du LLM Llama3 de Meta https://github.com/mukel/llama3.java/tree/main

    utilise la future API Vector de Java

    JLama, un moteur d‘exĂ©cution de LLM en Java avec l’api vector https://www.infoq.com/news/2024/05/jlama-llm-inference-java/

    basĂ© sur llama.c qui est un moteur d’inference de LLM (l’execution des requetes) jlama implementĂ© avec vector APIs et PamanaTensorOperations plusisures alternatives (native binding, iml0ementation pure en java, scala, kotlin)

    Target Speech Hearing https://www.infoq.com/news/2024/05/target-speech-hearing/

    Nouveau algo Deep Learning de l’UniversitĂ© de Washington permet d’écouter une seule personne de ton choix et effacer tout le bruit autour le systĂšme nĂ©cessite que la personne portant les Ă©couteurs appuie sur un bouton tout en regardant quelqu’un parler ou simplement en le fixant pendant trois Ă  cinq secondes Permet Ă  un modĂšle d’apprendre les schĂ©mas vocaux du locuteur et de s’y attacher pour pouvoir les restituer Ă  l’auditeur, mĂȘme s’il se dĂ©place et cesse de regarder cette personne. Selon les chercheurs, cela constitue une avancĂ©e significative par rapport aux Ă©couteurs Ă  rĂ©duction de bruit existants, qui peuvent annuler efficacement tous les sons, mais ne peuvent pas sĂ©lectionner les locuteurs en fonction de leurs caractĂ©ristiques vocales. Actuellement, le systĂšme ne peut enregistrer qu’un seul locuteur Ă  la fois. Une autre limitation est que l’enregistrement ne rĂ©ussira que si aucune autre voix forte ne provient de la mĂȘme direction. L’équipe a mis en open source leur code et leur jeu de donnĂ©es afin de faciliter les travaux de recherche futurs pour amĂ©liorer l’audition de la parole cible. Outillage

    Utiliser LLM pour migrer du framework de testing https://www.infoq.com/news/2024/06/slack-automatic-test-conversion/

    Slack a migrĂ© 15.000 tests de Enzyme Ă  React Testing Library avec un succĂšs de 80% Migration nĂ©cessaire pour le manque de support de Enzyme pour React 18 L’équipe a essayĂ© d’automatiser la conversion avec des transformations AST, mais n’a atteint que 45 % de succĂšs Ă  cause de la complexitĂ© des mĂ©thodes d’Enzyme et du manque d’accĂšs aux informations contextuelles du DOM. L’équipe a utilisĂ© Claude 2.1 pour la conversion, avec des taux de rĂ©ussite variant de 40 % Ă  60 %, les rĂ©sultats dĂ©pendant largement de la complexitĂ© des tĂąches. Suite aux rĂ©sultats insatisfaisants, l’équipe a dĂ©cidĂ© d’observer comment les dĂ©veloppeurs humains abordaient la conversion des tests unitaires. Les dĂ©veloppeurs humains utilisaient leurs connaissances sur React, Enzyme et RTL, ainsi que le contexte du rendu et les conversions AST de l’outil initial pour mieux convertir les tests unitaires. Finalement les ingĂ©nieurs de Slack ont combinĂ© transformations AST et LLM en intĂ©grant des composants React rendus et des conversions AST dans les invites, atteignant un taux de rĂ©ussite de 80 % dĂ©montrant ainsi la complĂ©mentaritĂ© de ces technologies. Claude 2.1 est un modĂšle de langage de grande taille (LLM) annoncĂ© en novembre 2023 par Anthropic. Il inclut une fenĂȘtre contextuelle de 200 000 tokens, des rĂ©ductions significatives des taux d’hallucination du modĂšle, des invites systĂšme et permet l’utilisation d’outils. Depuis, Anthropic a introduit la famille de modĂšles Claude 3, composĂ©e de trois modĂšles distincts, avec des capacitĂ©s multimodales et une comprĂ©hension contextuelle amĂ©liorĂ©e. Un arbre de syntaxe abstraite (AST) est une reprĂ©sentation arborescente de la structure syntaxique abstraite du code source Ă©crit dans un langage de programmation. Chaque nƓud de l’arbre reprĂ©sente une construction du code source. Un arbre de syntaxe se concentre sur la structure et le contenu nĂ©cessaires pour comprendre la fonctionnalitĂ© du code. Les AST sont couramment utilisĂ©s dans les compilateurs et les interpreters pour analyser et examiner le code, permettant diverses transformations, optimisations et traductions lors de la compilation.

    IDE de test de JetBrains https://blog.jetbrains.com/qa/2024/05/aqua-general-availability/

    Aqua, le premier IDE conçu pour l’automatisation des tests, supporte plusieurs langages (Java, Python, JavaScript, TypeScript, Kotlin, SQL) et frameworks de tests (Selenium, Playwright, Cypress). Pourquoi ? Les tests d’applications nĂ©cessitent des compĂ©tences spĂ©cifiques. Aqua, un IDE adaptĂ©, est recommandĂ© par les ingĂ©nieurs en automatisation des tests. Aqua propose deux plans de licence : un gratuit pour les usages non commerciaux et un payant pour les usages commerciaux. cam me parait un peu contre intuitif a l’heure du devops et du TDD de faire des outils dĂ©diĂ©s et donc des equipes ou personnes dĂ©diĂ©es MĂ©thodologies

    Les 10 principes Ă  suivre, selon le crĂ©ateur de cURL, pour ĂȘtre un bon BDFL (Benevolent Dictator For Life) https://daniel.haxx.se/blog/2024/05/27/my-bdfl-guiding-principles/

    Être ouvert et amical Livrer des produits solides comme le roc Être un leader de l’Open Source PrivilĂ©gier la sĂ©curitĂ© Fournir une documentation de premier ordre Rester indĂ©pendant RĂ©pondre rapidement Suivre l’actualitĂ© Rester Ă  la pointe de la technologie Respecter les retours d’information Dans un vieil article de Artima, Guido Van Rossum, le crĂ©ateur de Python et premier BDFL d’un projet, se remĂ©more un Ă©change de 1995 qui est Ă  l’origine de ce concept https://www.artima.com/weblogs/viewpost.jsp?thread=235725 Guido Van Rossum a Ă©tĂ© le premier Ă  endosser ce “rĂŽle”

    Un site compréhensif sur les build reproductibles https://reproducible-builds.org

    longue doc de la definition aux méthodes pour resoudre des problÚmes spécifiques

    Masterclass de Fabien Olicard: Le Palais Mental https://www.youtube.com/watch?v=u6wu_iY4xd8

    Technique pour retenir de l’information plus longtemps que dans sa mĂ©moire courte

    Les APIs web ne devraient pas rediriger HTTP vers HTTPS https://jviide.iki.fi/http-redirects

    grosso modo le risque majeur est d’envoyer des donnĂ©es confidentielles en clair sur le rĂ©seau le mieux serait de ne pas rediriger vers HTTPS, mais par contre de retourner une vraie erreur explicite notamment les clĂ©s d’API et c’est facile de ne pas le,voir vu les redirects. SĂ©curitĂ©

    Blog de GitHub sur la provenance et l’attestation https://github.blog/2024-04-30-where-does-your-software-really-come-from/

    Discute les concepts de securisation de chainne d’approvisionnement de sogiciel et comment elles s’articulent entre elle. A haut niveau discute les hash pour garantir le meme fichier La signature asymetrique pour prouver que j’ai signĂ© (e.g. le hash) et donc que je garantis. L’attenstation qui declare des faits sur un artifact attestation de provenance: source code et instructions de build (SLSA provenance) mais il faut garantir les signature avec une autorite de certification et avec des certificats a courte vide idealement, c’est sigstore MEtionne aussi The Update Framework pour s’appuyer sur cela et garantir des undates non compromis

    Keycloak 25 est sorti https://www.keycloak.org/2024/06/keycloak-2500-released.html

    Argon2 pour le hashing de mots de passe Depreciation des adaptateurs (Tomcat, servlet etc) Java 21 et depreciation de Java 17 session utilisatur persistente meme pour les instances online (pour survivre a une rotation de keycloak ameliorations autour des passkeys management et health endpoint sur un port different Et plus Demande aux cast codeurs

    A 40 ans, tu peux encore ĂȘtre codeur reconnu ?

    Conférences

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

    12-14 juin 2024 : Rencontres R - Vannes (France) 13-14 juin 2024 : Agile Tour Toulouse - Toulouse (France) 14 juin 2024 : DevQuest - Niort (France) 18 juin 2024 : Mobilis In Mobile 2024 - Nantes (France) 18 juin 2024 : BSides Strasbourg 2024 - Strasbourg (France) 18 juin 2024 : Tech & Wine 2024 - Lyon (France) 19-20 juin 2024 : AI_dev: Open Source GenAI & ML Summit Europe - Paris (France) 19-21 juin 2024 : Devoxx Poland - Krakow (Poland) 26-28 juin 2024 : Breizhcamp 2024 - Rennes (France) 27 juin 2024 : DotJS - Paris (France) 27-28 juin 2024 : Agi Lille - Lille (France) 4-5 juillet 2024 : Sunny Tech - Montpellier (France) 8-10 juillet 2024 : Riviera DEV - Sophia Antipolis (France) 6 septembre 2024 : JUG Summer Camp - La Rochelle (France) 6-7 septembre 2024 : Agile Pays Basque - Bidart (France) 17 septembre 2024 : We Love Speed - Nantes (France) 17-18 septembre 2024 : Agile en Seine 2024 - Issy-les-Moulineaux (France) 19-20 septembre 2024 : API Platform Conference - Lille (France) & Online 25-26 septembre 2024 : PyData Paris - Paris (France) 26 septembre 2024 : Agile Tour Sophia-Antipolis 2024 - Biot (France) 2-4 octobre 2024 : Devoxx Morocco - Marrakech (Morocco) 7-11 octobre 2024 : Devoxx Belgium - Antwerp (Belgium) 8 octobre 2024 : Red Hat Summit: Connect 2024 - Paris (France) 10 octobre 2024 : Cloud Nord - Lille (France) 10-11 octobre 2024 : Volcamp - Clermont-Ferrand (France) 10-11 octobre 2024 : Forum PHP - Marne-la-Vallée (France) 11-12 octobre 2024 : SecSea2k24 - La Ciotat (France) 16 octobre 2024 : DotPy - Paris (France) 17-18 octobre 2024 : DevFest Nantes - Nantes (France) 17-18 octobre 2024 : DotAI - Paris (France) 30-31 octobre 2024 : Agile Tour Nantais 2024 - Nantes (France) 30-31 octobre 2024 : Agile Tour Bordeaux 2024 - Bordeaux (France) 31 octobre 2024-3 novembre 2024 : PyCon.FR - Strasbourg (France) 6 novembre 2024 : Master Dev De France - Paris (France) 7 novembre 2024 : DevFest Toulouse - Toulouse (France) 8 novembre 2024 : BDX I/O - Bordeaux (France) 13-14 novembre 2024 : Agile Tour Rennes 2024 - Rennes (France) 20-22 novembre 2024 : Agile Grenoble 2024 - Grenoble (France) 21 novembre 2024 : DevFest Strasbourg - Strasbourg (France) 27-28 novembre 2024 : Cloud Expo Europe - Paris (France) 28 novembre 2024 : Who Run The Tech ? - Rennes (France) 3-5 décembre 2024 : APIdays Paris - Paris (France) 4-5 décembre 2024 : DevOpsDays Paris - Paris (France) 4-5 décembre 2024 : Open Source Experience - Paris (France) 6 décembre 2024 : DevFest Dijon - Dijon (France) 22-25 janvier 2025 : SnowCamp 2025 - Grenoble (France) 16-18 avril 2025 : Devoxx France - Paris (France) Nous contacter

    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/

  • Puuttuva jakso?

    Paina tästä ja päivitä feedi.

  • Dans ce long
. Ă©pisode, Emmanuel, Guillaume et Arnaud discutent de l’actualitĂ© avec Chicori (un runtime WASM en Java), Jakarta Data, Quarkus 3.10, Spring AI, Hibernate 6.5, mais aussi quelques retours aux basiques (timezones, rate limiting, 
). Gros focus sur les nouveautĂ©s annoncĂ©es Ă  Google I/O 2024 et dans l’écosystĂšme IA en gĂ©nĂ©ral avec les annonces d’OpenAI, Claude, Grok et d’autres. DiffĂ©rents outils sont aussi couverts comme Git, IntelliJ, ASDF, BLD, S3. Et enfin des sujets sur la haute disponibilitĂ© de Keycloak, la rĂ©-indexation sans downtime, les challenges des implĂ©mentations alternatives, le mode vigilant dans GitHub, Redis et les changements de license, et les investissements de Microsoft et AWS en France dans le cadre du programme #ChooseFrance. N’hĂ©sitez pas Ă  nous soumettre vos questions sur https://lescastcodeurs.com/ama nous y rĂ©pondrons dans les prochains Ă©pisodes.

    Enregistré le 17 mai 2024

    TĂ©lĂ©chargement de l’épisode LesCastCodeurs-Episode-312.mp3

    News Langages

    Un runtime WASM en Java https://github.com/dylibso/chicory

    Projet tout nouveau, encore loin de la maturitĂ© Mais intĂ©ressant Ă  suivre pour exĂ©cuter du code WebAssembly dans une application Java le projet n’a pas 15 jours non plus quand mĂȘme :) Faire tourner des plugins WASM dans la JVM (e.g. plugins)

    On peut faire des heap dump en cas de OutOfMemoryException en compilation native https://quarkus.io/blog/heapdump-oome-native/

    depuis JDK 21 Un exemple avec Quarkus Et le GC epsilon

    100 exercices pour se mettre Ă  Rust https://rust-exercises.com/

    Librairies

    Hibernate 6.5 est sorti https://in.relation.to/2024/04/25/orm-650/

    cache full pour les entitĂ©s et leur collections (le dĂ©faut est shallow) Java record pour les @IdClass Les filtres peuvent ĂȘtre auto activĂ©s par dĂ©faut (vs Ă  faire sur chaque session). Les filtres sont pas mal pour gĂ©rer par exemple des soft delete Keybased pagination pour Ă©viter les trous de rĂ©sultant en cas de modification d’entitĂ©s en parallĂšle de.une recherche paginĂ©e. S.appuie sur une clĂ© unique et ordonnĂ©e genre ISBN Une tech preview de Jakarta Data

    En parlant de Jakarta Data, deux articles sur le sujet https://in.relation.to/2024/04/01/jakarta-data-1/ https://in.relation.to/2024/04/18/jakarta-data-1/

    concept de repository pas liĂ© Ă  une entitĂ© mais Ă  une relation logique entre les recherches interagit via stateless session et est un bean CDI Code gĂ©nĂ©rĂ© bien sur 4 opĂ©rateur crud et les requĂȘtes save est up sert Type sage au sens ou le nom des mĂ©thodes n’est pas la logique de recherche Annotation et nom des paramĂštres et c’est type safe via un annotation processor ou string dans @Query qui est type safe aussi via le processeur discute plus de type safety et pagination

    Quarkus 3.10 avec quelques nouveautés https://quarkus.io/blog/quarkus-3-10-0-released/

    flyway 10 arrive avec support natif Hibernate search supporte le standalone POJO mapper notamment pour elastic search (pas que ORM) Modification des propriĂ©tĂ©s Quarkus.package automatiquement remplacĂ©es par quarkus update et Quarkus 3.9 a fait son grand renommage rĂ©actif https://quarkus.io/blog/quarkus-3-9-1-released/ Clarifier que les extensions rĂ©active n’imposent pas des apis rĂ©actives et seulement leur cƓur implĂ©mentĂ© en rĂ©actif ou offre optionellement des apis reacrive Les gens pensaient Ă  tors que les rĂ©actives imposaient le modĂšle de programmation la encore quarkus update Ă  la rescousse

    Un article sur l’api structured output pour Spring AI https://spring.io/blog/2024/05/09/spring-ai-structured-output

    un article descriptif sur quand cette api est utilisée Et les détails de son usage

    Comment passer une TimeZone dans spring boot et ce que cela impacte en terme de composants https://www.baeldung.com/spring-boot-set-default-timezone

    du basique mais toujours utile Task ou app Programmatiquement Sur certains lifecycles de Spring Infrastructure

    Un article et la vidĂ©o de Devoxx France sur la haute disponibilitĂ© de Keycloak, comment c’est implĂ©mentĂ© https://www.keycloak.org/2024/05/keycloak-at-devoxx-france-2024-recap

    l’infra d’identitĂ© est une infra clĂ© Donc gĂ©rer la haute disponibilitĂ© est critique C’est un article qui pointe sur une vidĂ©o de Devoxx France et la doc de keycloak sur comment tout cela est implĂ©mentĂ© Cloud

    Comment se ruiner avec des buckets S3 https://medium.com/@maciej.pocwierz/how-an-empty-s3-bucket-can-make-your-aws-bill-explode-934a383cb8b1

    Amazon fait payer pour les requĂȘtes non autorisĂ©es Il suffit de connaĂźtre le nom d’un bucket pour faire payer son propriĂ©taire Amazon travaille pour fournir une solution / un fix. il est tombĂ© par hasard sur un nom de bucket utilisĂ© « pour de faux » par un outil open source populaire Bien rajouter un suffixe Ă  ses buckets peut rĂ©duire le risque Mais pas l’éliminer un fix a Ă©tĂ© livrĂ© par amazon https://aws.amazon.com/about-aws/whats-new/2024/05/amazon-s3-no-charge-http-error-codes/ Data et Intelligence Artificielle

    Guillaume résume GoogleIO https://x.com/techcrunch/status/1790504691945898300?s=61&t=WImtt07yTQMhhoNPN6lYEw

    AI overview plus besoin d’aller sur les sites

    Google I/O 2024

    Google I/O 2024 rĂ©sumĂ© en vidĂ©o de 10 minutes https://www.youtube.com/watch?v=WsEQjeZoEng et en 100 bullet points https://blog.google/technology/ai/google-io-2024-100-announcements/ Message de Sundar Pichai https://blog.google/inside-google/message-ceo/google-io-2024-keynote-sundar-pichai/#creating-the-future Project Astra, un assistant universel, sur smartphone avec qui on peut avoir une conversation normale et Ă  qui montrer avec la camĂ©ra ce qui nous entoure https://www.theverge.com/2024/5/14/24156296/google-ai-gemini-astra-assistant-live-io Nouveau modĂšle Gemini 1.5 Flash, quasi aussi performant que le nouveau Gemini 1.5 Pro, mais beaucoup plus rapide (premiers tokens dans la seconde) et aussi moins cher https://blog.google/technology/developers/gemini-gemma-developer-updates-may-2024/ Gemini 1.5 Pro est Gemini 1.5 Flash sont disponibles avec une fenĂȘtre de contexte d’un million de tokens, mais il y a une liste d’attente pour tester une fenĂȘtre de 2 millions de tokens https://aistudio.google.com/app/waitlist/97595554 https://cloud.google.com/earlyaccess/cloud-ai?e=48754805&hl=en PaliGemma un nouveau modĂšle de vision ouvert dans la famille Gemma (pour faire du Q&A du sous-titrage) et preview de Gemma 2, avec une version Ă  27 milliards de paramĂštres https://developers.googleblog.com/en/gemma-family-and-toolkit-expansion-io-2024/ Gemini disponible dans les IDEs : Android Studio, IDX, Firebase, Colab, VSCode, Cloud and Intellj Gemini AI Studio enfin disponible en Europe Gemini supporte le parallel function calling et l’extraction de frame dans les vidĂ©os Trillium, la 6Ăšme version des TPU (Tensor Processing Unit), les processeurs spĂ©cifiques ML dans Google Cloud, 5 fois plus puissant que la gĂ©nĂ©ration prĂ©cĂ©dente et 67% plus efficace en Ă©nergie https://cloud.google.com/blog/products/compute/introducing-trillium-6th-gen-tpus Le projet NotebookLM rajoute une fonctionnalitĂ© de Audio Overview qui permet de discuter avec son corpus de documents avec une conversation vocale https://notebooklm.google.com/ On peut appliquer le “grounding” avec Google Search pour l’API Gemini, pour que le modĂšle Gemini puisse chercher des informations complĂ©mentaires dans Google Search https://cloud.google.com/blog/products/ai-machine-learning/vertex-ai-io-announcements Annonce de Imagen 3, la future version de du modĂšle de gĂ©nĂ©ration d’images Imagen qui amĂ©liore la qualitĂ© et possĂšde un trĂšs bon support du texte dans les images (objectif de disponibilitĂ© Ă  l’étĂ©) https://blog.google/technology/ai/google-generative-ai-veo-imagen-3/#Imagen-3 https://deepmind.google/technologies/imagen-3/ DeepMind annonce Veo, un nouveau modĂšle de gĂ©nĂ©ration de vidĂ©o trĂšs convaincant qui peut faire des vidĂ©os en 1080p de 60s, mais en combinant plusieurs prompts successifs, il peut gĂ©nĂ©rer des vidĂ©os plus longues qui s’enchainent https://deepmind.google/technologies/veo/ VideoFX, ImageFX et MusicFX, des expĂ©rimentations de Google AI intĂ©grant Imagen 3 et Veo (pas encore disponibles en Europe) https://blog.google/technology/ai/google-labs-video-fx-generative-ai/ Gemini Advanced https://blog.google/products/gemini/google-gemini-update-may-2024/#context-window Les utilisateurs de Gemini Advanced (l’application web) utilisent Gemini 1.5 Pro avec la fenĂȘtre de contexte de 1 million de tokens, la possibilitĂ© de charger des documents de Google Drive, et bientĂŽt la possibilitĂ© de gĂ©nĂ©rer des graphiques. Gemini Advanced rajoute aussi la capacitĂ© de gĂ©nĂ©rer des itinĂ©raires de voyage (avec intĂ©gration de Google Flights, etc) FonctionnalitĂ© Gemini Live pour avoir une conversation vocale naturelle avec Gemini https://blog.google/products/gemini/google-gemini-update-may-2024/#gemini-live Gem : des plugins pour Gemini Advanced pour crĂ©er ses propres assistants personnalisĂ©s https://blog.google/products/gemini/google-gemini-update-may-2024/#personalize-gems Ask Photos, on peut poser Ă  Google Photos des questions plus complexes comme “quelle est ma plaque d’immatriculation” et Photos devine que parmi toutes les photos de voitures lequelle est certainement la nĂŽtre et extrait le numĂ©ro de plaque https://blog.google/products/photos/ask-photos-google-io-2024/ MĂȘme dans Google Messages vous pourrez Ă©changer avec Gemini Google Search https://blog.google/products/search/generative-ai-google-search-may-2024/ Rajout d’un modĂšle Gemini spĂ©cial search intĂ©grĂ© qui permet Ă  Google Search de rĂ©pondre aux questions de la barre de recherche avec une raisonnement multi-Ă©tapes, en Ă©tant capable de faire de la planification, en mode multimodal (texte, image, vidĂ©o, audio) Planning de repas et de voyage, supportĂ© dans Gemini, va arriver aussi dans Search Gemini 1.5 Pro est disponible dans le panneau latĂ©ral de Gmail, Docs, Sheets, Drive https://blog.google/products/workspace/google-gemini-workspace-may-2024-updates/ SynthID va mĂȘme fonctionner pour du texte https://deepmind.google/discover/blog/watermarking-ai-generated-text-and-video-with-synthid/ Gemini Nano bientĂŽt disponible dans les prochaines version de Chrome, pour utiliser le LLM directement dans le navigateur Android Seconde bĂ©ta d’Android 15 https://android-developers.googleblog.com/2024/05/the-second-beta-of-android-15.html Private space pour garder des apps secures avec un niveau d’authentification supplĂ©mentaire Google collabore avec Samsung et Qualcomm sur la rĂ©alitĂ© augmentĂ©e dans Android https://developers.googleblog.com/en/google-ar-at-io-2024-new-geospatial-ar-features-and-more/ Project Gameface arrive sur Android (pour diriger Android avec les yeux, avec les expressions du visage, pour l’accessibilitĂ©) https://developers.googleblog.com/en/project-gameface-launches-on-android/ Gemini Nano va passer en multimodal, pas juste du texte Circle to search Ă©tendu Ă  100 millions de tĂ©lĂ©phones supplĂ©mentaires supportant Nano et va permettre de poser des questions, par exemple pour l’aide aux devoirs des enfants https://blog.google/products/android/google-ai-android-update-io-2024/#circle-to-search Detect phone scam on device with Gemini Nano Talkback, l’application pour l’accessibilitĂ© dans Android, va tirer parti de la multimodalitĂ© de Gemini Nano BientĂŽt de la gĂ©nĂ©ration d’image qu’on pourra intĂ©grer dans ses mails, ses messages Wear OS https://android-developers.googleblog.com/2024/05/whats-new-in-wear-os-io-24.html Travail sur l’économie d’énergie pour faire durer les montres plus longtemps avant la prochaine recharge. Par exemple, 20% de consommation en moins lorsqu’on court un marathon ! Plus de type de donnĂ©es pour les activitĂ©s physiques Project IDX accessible sans liste d’attente https://developers.googleblog.com/en/start-building-with-project-idx-today/ Firebase annonce 3 nouveaux produits https://developers.googleblog.com/en/whats-new-in-firebase-io-24/ Data Connect, un backend-as-a-service avec PostgreSQL https://firebase.google.com/products/data-connect App Hosting, hosting d’application Next et Angular https://firebase.google.com/products/app-hosting Genkit, a GenAI framework for app developers https://firebase.google.com/products/genkit Dart 3.4 avec support de Wasm comme target de compilation https://medium.com/dartlang/dart-3-4-bd8d23b4462a

    OpenAI lance son nouveau modĂšle: gpt-4o http://openai.com/index/hello-gpt-4o/

    https://x.com/openaidevs/status/1790083108831899854?s=46&t=GLj1NFxZoCFCjw2oYpiJpw Audio, vision et reconnaissance de texte en realtime Plus rapide et 50% moins cher que son prédécesseur 4-turbo

    https://claude.ai/ est disponible en europe

    Claude, le modĂšle est crĂ©Ă© par Anthropic: Claude est un assistant IA basĂ© sur un grand modĂšle de langage entraĂźnĂ© selon des principes Ă©thiques stricts. Il accorde une grande importance Ă  l’honnĂȘtetĂ©, l’impartialitĂ© et le respect de l’ĂȘtre humain. Son raisonnement repose sur une comprĂ©hension profonde des concepts plutĂŽt que sur de simples associations statistiques. Il cherche activement Ă  corriger les Ă©ventuels biais ou erreurs. Claude est polyvalent et peut s’adapter Ă  diffĂ©rents styles de communication et niveaux de complexitĂ© selon le contexte. Il maĂźtrise de nombreux domaines acadĂ©miques et scientifiques. Il est capable d’introspection sur ses propres processus de pensĂ©e et ses limitations. La vie privĂ©e et la confidentialitĂ© sont des prioritĂ©s pour lui. Claude continue d’apprendre et de s’amĂ©liorer grĂące aux interactions avec les humains. Son but est d’ĂȘtre un assistant fiable, Ă©thique et bienveillant. quelqu’un sait comment ils font pour raisonner et pas juste LLM statistiquer? Comment ils prouvent cela ? C’est du code Ă  part?

    Grok le modĂšle de X/Twitter/Musk est aussi dispo en Europe https://x.com/x/status/1790917272355172401?s=46&t=GLj1NFxZoCFCjw2oYpiJpw

    un truc unique c’est qu’il utilise les tweet comme reference sur ce qu’il dit. Par exemple demande les meilleurs Java Champions et c’est sur les tweet recents , probablement une sorte de RAG ou une sorte de fine tuning sur les derniers tweets, je ne sais pas

    L’algorithm des modeles de diffusion expliquĂ©s https://x.com/emmanuelbernard/status/1787565568020619650

    deux articles, un general et lisible l’autre plus abscon mais avec certains details interessants sur le downsizing Ă©tapes ajout de bruit Ă  des images (learning) pour aprĂšs appliquer le process opposĂ© le reverse diffusion process On prĂ©dit le bruit Ă  enlever, on l’enlĂšve et on repĂšre le processus. Et tout cela est influencĂ© par le prompt.

    Reindexation sans downtime des données de documentation de Quarkus, en quarkus bien sûr https://quarkus.io/blog/search-indexing-rollover/

    utilise hibernate search Utilisé Elasticsearch / opensearch Article qui explique une des approches pour reindexer sans downtime via index alias Outillage

    Un article qui parle de l’outil de build bld, peu connu, qui permet d’écrire ses builds simplement dans une classe Java https://sombriks.com/blog/0070-build-with-bld-and-why-it-matters/

    IntelliJ 2024.1 est sorti https://blog.jetbrains.com/idea/2024/05/what-s-new-in-intellij-idea-ultimate-2024-1/

    complĂ©tion de ligne entiĂšre (deep learning) Assistant AI amĂ©liorĂ© Spring Boot support amĂ©liorĂ© sur bean completion et gĂ©nĂ©ration de diagramme Support de dev containers simplifiĂ© AmĂ©lioration support quarkus avec notamment icĂŽne dev ui et config des tests Support OpenRewrite Server wiremock et plein d’autres choses

    En version beta public, Homebrew permet de vérifier la provenance des packages (bottles) https://blog.trailofbits.com/2024/05/14/a-peek-into-build-provenance-for-homebrew/

    BasĂ© sur le systĂšme “build provenance” de sigstore https://docs.sigstore.dev/verifying/attestation/#validate-in-toto-attestations qui repose sur les attestations in-toto https://in-toto.io/

    Mettez à jour git en version 2.45.1 pour fixer des failles de sécurité https://github.blog/2024-05-14-securing-git-addressing-5-new-vulnerabilities/

    CVE-2024-32002 (Critique, Windows & macOS) : Les repos Git avec des sous-modules peuvent tromper Git pour lui faire exĂ©cuter un hook (Ă©lĂ©ment de script) Ă  partir du rĂ©pertoire .git/ pendant une opĂ©ration de clonage, permettant l’exĂ©cution de code Ă  distance (Remote Code Execution). CVE-2024-32004 (Important, machines multi-utilisateurs) : Un attaquant peut concevoir un repo local qui exĂ©cute du code arbitraire lors du clonage. CVE-2024-32465 (Important, toutes les configurations) : Le clonage Ă  partir de fichiers .zip contenant des repos Git peut contourner les protections, et potentiellement exĂ©cuter des hooks malveillants. CVE-2024-32020 (Faible, machines multi-utilisateurs) : Les clones locaux sur le mĂȘme disque peuvent permettre Ă  des utilisateurs non approuvĂ©s de modifier des fichiers liĂ©s physiquement (hard link) dans la base de donnĂ©es des objets du repo clonĂ©. CVE-2024-32021 (Faible, machines multi-utilisateurs) : Le clonage d’un repo local avec des liens symboliques (symlinks) peut entraĂźner la crĂ©ation de liens physiques vers des fichiers arbitraires dans le rĂ©pertoire objects/. Architecture

    Visualisation des algorithmes de rate limitation https://smudge.ai/blog/ratelimit-algorithms

    MĂ©thodologies

    Le problĂšme de l’implĂ©mentation alternative https://pointersgonewild.com/2024/04/20/the-alternative-implementation-problem/

    Article par un dĂ©veloppeur qui a dĂ©veloppĂ© des Just-in-Time compiler pour diffĂ©rents langages RemarquĂ© que dĂ©velopper une implĂ©mentation alternative d’un langage (par exemple) n’a jamais vraiment rencontrĂ© le succĂšs Les gens prĂ©fĂšrent l’original Ă  une alternative qui est dĂ©pendante de / a peine Ă  suivre l’implĂ©mentation d’origine Pour son cas, sur le JIT, il a travaillĂ© sur un JIT intĂ©grĂ© directement dans CRuby (plutĂŽt que faire son implĂ©mentation alternative comme TruffleRuby), et sont JIT est intĂ©grĂ© maintenant dedans directement Plus facile de rejoindre / s’intĂ©grer au projet plutĂŽt que d’ĂȘtre une alternative pour laquelle il faut convaincre les gens de l’adopter

    Le mode vigilant dans GitHub https://x.com/emmanuelbernard/status/1790026210619068435

    c’est la suite du blog wsur la signature des commits que j’ai fait ul y a quelques temps https://emmanuelbernard.com/blog/2023/11/27/git-signing-ssh/ Maintenant, GitHub rajoute de plus en plus d’infos si les signatures ne matchent pas ou ne sont pas prĂ©sentes Loi, sociĂ©tĂ© et organisation

    Une perspective sur Redis et les changements de license par un devrel AWS OpenSearch https://www.infoworld.com/article/3715247/the-end-of-vendor-backed-open-source.html

    les sociĂ©tĂ©s regardent l’impact lĂ©gal des licenses source available pour elles mĂȘme en usage interne Ça casse l’écosystĂšme de spĂ©cialisations au dessus du produit (logz.io au dessus d’elastic dĂ©marrĂ© avant le changement de license) Redis top 10 contribs Ă  AWS et Alibaba er Huawei et 3 redis. Donc c’est pas redis qui contribue tout. La plupart des ingĂ©nieurs de redislab ne bossent pas sur redis OSS, mais sur cloud et entreprise Peut ĂȘtre la fin des single vendor oss Il n’y a que les cloud providers qui peuvent fournir du OSS sans affecter leur structure du coĂ»t C’est un ex AWS en fait. Maintenant indĂ©pendant

    Microsoft va investir 4 milliards en France (datacenters et IA) https://news.microsoft.com/fr-fr/2024/05/13/microsoft-announces-the-largest-investment-to-date-in-france-to-accelerate-the-adoption-of-ai-skilling-and-innovation/

    Il ne sont pas les seuls dans le cadre du programme #chooseFrance https://www.info.gouv.fr/actualite/choose-france-un-record-de-15-milliards-deuros-dinvestissements-etrangers Mais cela n’est pas sans laisser de questions sur l’avenir de notre activitĂ© avec les US qui externalisent dĂ©sormais leur silicon valley https://www.cybernetica.fr/la-france-laboratoire-de-la-silicon-valley-2-0/ Outils de l’épisode

    ASDF un gestionnaire de version multi-runtime https://asdf-vm.com

    Arnaud l’avait recommandĂ© mais je restais sur rvm apres des deboires, je suis passĂ© a asdf, qui fonctionne mais pour le jdk j’utilise sdkman pour les javaistes ca parrait plus poussĂ© ConfĂ©rences

    Les videos de Devoxx France sont en ligne https://www.youtube.com/playlist?list=PLTbQvx84FrARars1vXos7mlPdvYJmsEoK

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

    16-17 mai 2024 : Newcrafts Paris - Paris (France) 22 mai 2024 : OpenInfra Day France - Palaiseau (France) 22-25 mai 2024 : Viva Tech - Paris (France) 24 mai 2024 : AFUP Day Nancy - Nancy (France) 24 mai 2024 : AFUP Day Poitiers - Poitiers (France) 24 mai 2024 : AFUP Day Lille - Lille (France) 24 mai 2024 : AFUP Day Lyon - Lyon (France) 28-29 mai 2024 : Symfony Live Paris - Paris (France) 1 juin 2024 : PolyCloud - Montpellier (France) 6 juin 2024 : WAX 2024 - Aix-en-Provence (France) 6-7 juin 2024 : DevFest Lille - Lille (France) 6-7 juin 2024 : Alpes Craft - Grenoble (France) 7 juin 2024 : Fork it! Community - Rouen (France) 11 juin 2024 : Cloud Toulouse - Toulouse (France) 11-12 juin 2024 : OW2con - Paris (France) 11-12 juin 2024 : PGDay Lille - Lille (France) 12-14 juin 2024 : Rencontres R - Vannes (France) 13-14 juin 2024 : Agile Tour Toulouse - Toulouse (France) 14 juin 2024 : DevQuest - Niort (France) 18 juin 2024 : Mobilis In Mobile 2024 - Nantes (France) 18 juin 2024 : BSides Strasbourg 2024 - Strasbourg (France) 18 juin 2024 : Tech & Wine 2024 - Lyon (France) 19-20 juin 2024 : AI_dev: Open Source GenAI & ML Summit Europe - Paris (France) 19-21 juin 2024 : Devoxx Poland - Krakow (Poland) 26-28 juin 2024 : Breizhcamp 2024 - Rennes (France) 27 juin 2024 : DotJS - Paris (France) 27-28 juin 2024 : Agi Lille - Lille (France) 4-5 juillet 2024 : Sunny Tech - Montpellier (France) 8-10 juillet 2024 : Riviera DEV - Sophia Antipolis (France) 6 septembre 2024 : JUG Summer Camp - La Rochelle (France) 6-7 septembre 2024 : Agile Pays Basque - Bidart (France) 17 septembre 2024 : We Love Speed - Nantes (France) 19-20 septembre 2024 : API Platform Conference - Lille (France) & Online 25-26 septembre 2024 : PyData Paris - Paris (France) 26 septembre 2024 : Agile Tour Sophia-Antipolis 2024 - Biot (France) 2-4 octobre 2024 : Devoxx Morocco - Marrakech (Morocco) 7-11 octobre 2024 : Devoxx Belgium - Antwerp (Belgium) 10 octobre 2024 : Cloud Nord - Lille (France) 10-11 octobre 2024 : Volcamp - Clermont-Ferrand (France) 10-11 octobre 2024 : Forum PHP - Marne-la-Vallée (France) 11-12 octobre 2024 : SecSea2k24 - La Ciotat (France) 16 octobre 2024 : DotPy - Paris (France) 17-18 octobre 2024 : DevFest Nantes - Nantes (France) 17-18 octobre 2024 : DotAI - Paris (France) 30-31 octobre 2024 : Agile Tour Nantais 2024 - Nantes (France) 30-31 octobre 2024 : Agile Tour Bordeaux 2024 - Bordeaux (France) 31 octobre 2024-3 novembre 2024 : PyCon.FR - Strasbourg (France) 6 novembre 2024 : Master Dev De France - Paris (France) 7 novembre 2024 : DevFest Toulouse - Toulouse (France) 8 novembre 2024 : BDX I/O - Bordeaux (France) 13-14 novembre 2024 : Agile Tour Rennes 2024 - Rennes (France) 21 novembre 2024 : DevFest Strasbourg - Strasbourg (France) 28 novembre 2024 : Who Run The Tech ? - Rennes (France) 3-5 décembre 2024 : APIdays Paris - Paris (France) 4-5 décembre 2024 : Open Source Experience - Paris (France) 22-25 janvier 2025 : SnowCamp 2025 - Grenoble (France) 16-18 avril 2025 : Devoxx France - Paris (France) Nous contacter

    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/

  • Cet Ă©pisode news revient sur le rachat de Hashicorp par IBM, sur le changement de license Redis, sur le bug macos 14.4 et Java, sur la faille de de chaine d’approvisionnement sur XZ. Et nous dĂ©butons notre subrique Ask Me Anything. N’hĂ©sitez pas Ă  nous soumettre vos question sur https://lescastcodeurs.com/ama.

    Enregistré le 26 avril 2024

    TĂ©lĂ©chargement de l’épisode LesCastCodeurs-Episode-311.mp3

    News Langages

    Attendez peut-ĂȘtre avant d’upgrader macOS Ă  la version 14.4, si vous faites du Java ! Attention le crash ! https://blogs.oracle.com/java/post/java-on-macos-14-4

    Bug Ă  suivre https://bugs.java.com/bugdatabase/view_bug?bug_id=8327860 À Ă©tĂ© fixĂ© en 14.4.1 https://blogs.oracle.com/java/post/java-on-macos-14-4 c’était liĂ© Ă  un changement de comportement dans l’execution de code dynamique (compilĂ© aprĂšs le lancement du process) Au lieu de recevoir signal, SIGBUS or SIGSEGV et de le gĂ©rer SIGKILL Ă©tait lancĂ© et forcĂ©ment ça marchait moins bien Apple a corrigĂ© le comportement

    Article de Gunnar Morling sur la nouvelle API de “gatherer” de Java 22, pour amĂ©liorer les streams, ici en montrant une implĂ©mentation d’un “zipper” qui assemble les Ă©lĂ©ments de 2 streams 2 Ă  2 https://www.morling.dev/blog/zipping-gatherer/

    on a parlĂ© des gatherers dĂ©jĂ  qui permet de faire de faire des opĂ©rateurs intermediaries custom par rapport Ă  ce que je JDK offre ici Gunnar montrer un zipper qui n’est pas prĂ©sent par dĂ©faut

    Julien Ponge est Java champion, félicitations !

    JFR 9 est sorti https://hirt.se/blog/?p=1477

    peut tourner dans Eclispe Support de arm64 pour Linux et macOS Dark mode ! Des améliorations de performance Support graalvm native image Nouveau afficheur de flame graph G1 pause target compliance Librairies

    Nouvelle version de Jilt, l’annotation processor qui implĂ©mente les builders https://www.endoflineblog.com/jilt-1_5-released

    Evite les hacks Ă  la Lombok Une nouvelle mĂ©thode toBuilder() pour obtenir un builder d’un bean dĂ©jĂ  configurĂ© Support des mĂ©ta-annotations, histoire de pas rĂ©pĂ©ter sur chaque type comment on souhaite dĂ©finir ses builders PossibilitĂ© de mettre l’annotation @Builder sur les constructeurs privĂ©s Support agnostique de @Nullable quel que soit l’origine de cette annotation Infrastructure

    IBM pourrait racheter Hashicorp https://www.reuters.com/markets/deals/ibm-nearing-buyout-deal-hashicorp-wsj-reports-2024-04-23/

    rien n’est fait Hashicorp qui a Ă©tĂ© dans la tourmente aprĂšs le passage de Terraform en closed source mais les revenus sont lĂ . C’est fait https://www.hashicorp.com/blog/hashicorp-joins-ibm Web

    Google intĂšgre son framework interne Wiz dans Angular https://blog.angular.io/angular-and-wiz-are-better-together-91e633d8cd5a

    Wiz est un framework interne Ă  Google utilisĂ© dans des produits comme Google Search ou Photos, trĂšs axĂ© sur la performance Wiz va amener plus de performance Ă  Angular, tout en gardant la super interactivitĂ© d’Angular Wiz historiquement sur la perf et peu d’interactions utilisateur, angular sur interactions riches et super experience developer Wiz server side rendering first et streamĂ©, ce qui Ă©limine le javascript dans le chemin de charge initial des fonctions comme deferred views sont venu vers angular et signals sont venu a wiz vont merger au fur et a mesure des prochaines annĂ©es via Angular comme receptacle open Data et Intelligence Artificielle

    Redis aussi se met à changer sa licence pour une licence pas tout à fait open source. Un fork nommé Valkey, animé par des mainteneurs de Redis, rejoint la fondation Linux https://www.linuxfoundation.org/press/linux-foundation-launches-open-source-valkey-community

    AWS, Google, Oracle, Ericsson et Snap sont nommĂ©s dans l’effort Open Source fight back mais via des grands acteurs qui ont un interet dans la version “gratuite” pour le cloud les infos de Redis https://redis.com/blog/redis-adopts-dual-source-available-licensing/ En gros releasĂ© sous SSPL (comme MongoDB) ou une license spĂ©cifique Redis RSAL est source available license (dont pas open source) et SSPL est pas reconnu comme open source par l’OSI car elle impose des restrictions Ă  l’usage du coup certaines fonctions closed sources deviennent source available Met les cloud provider en cause du problĂšme, ils font de l’argent et commodetize Redis sans redonner du revenu aux dĂ©veloppeurs de Redis est-ce que les gens seront ok de continuer a coder pour du code pas open, juste disponible et Ă©videmment ca casse l’écosystĂšme redis ou open source qui voulait utiliser redis en tant qu’open pas autorisĂ© de faire du support sur un produit qui derive de redis sans payer une license si c’est “compĂ©titif”

    Elon Musk tient sa promesse et ouvre son Large Language Model, Grok https://x.ai/blog/grok-os

    ModĂšle de 314 milliards de paramĂštres (Pi !) Architecture MoE (Mixture of Experts) qui fait qu’il n’y a que 25% des neurones actifs Ă  l’infĂ©rence (efficace et rapide) C’est un modĂšle “pre-trained”, de base, non-finetunĂ©, donc pas trĂšs utilisable en l’état (il faut le finetuner en mode “instruct” et/ou “chat” pour qu’il soit vraiment utilisable) Le code dans le repo Github, ainsi que les poids du rĂ©seau de neurones, sont OSS sous licence Apache 2 L’entrainement a Ă©tĂ© effectuĂ© avec JAX et Rust ! La cut-off date est Octobre 2023 Outillage

    Oracle lance son extension VSCode pour Java https://devclass.com/2024/03/19/java-22-is-out-and-oracle-is-pushing-its-own-extension-for-vs-code-over-not-very-good-red-hat-alternative/

    une extension en competition avec l’extension officielle et historique Java faite par MS et Red Hat Oracle estime l’extension pas tres bonne cafr basĂ©e sur le compilateur Eclipse 33M de telechargements quand mĂȘme La nouvelle s’appuie sur javac donc proche de la verite par definition et en avance par definition de la facon dont Oracle release quand il veut alignĂ© avec le timing de simplification de Java pour les dĂ©butants SĂ©curitĂ©

    RĂ©mi Forax nous partage cet article sur les puces M1/M2/M3 d’Apple, qui utilisent un nouveau “prefetcher” un peu trop agressif qui permet de leaker les clĂ©s utilisĂ©es lors des opĂ©rations cryptographiques : https://arstechnica.com/security/2024/03/hackers-can-extract-secret-encryption-keys-from-apples-mac-chips/

    comme d’hab pour les side channels attaques de de type c’est su un autre process peut tourner sur la machine et ĂȘtre adversaire liĂ© a un data dependent memory fetcher dans ce cas, un champ est soit une valeur, soit un pointeur et Appel pre-fetch dans le cas oĂč c’est un pointeur et c’est attaquable en injectant des variables qui ressemblent a des pointeurs vers des donnĂ©es controlĂ©es et on peut en dĂ©duire la clĂ©s secrete si cette variable et la clĂ© ont des opĂ©rations mais le code peut dĂ©sactiver cette optimisation si j’ai bien compris

    L’histoire d’une porte dĂ©robĂ©e dans le projet open source XZ qui a failli mettre Ă  mal toutes les connexions sous Open SSH, avec pour tĂąche de fond la fragilitĂ© de projets open source maintenu par des individuels bĂ©nĂ©voles Ă  bout de souffle https://uwyn.net/@rusty@piaille.fr/112190942187106096

    ArsTechnica dĂ©taille l’histoire https://arstechnica.com/security/2024/04/what-we-know-about-the-xz-utils-backdoor-that-almost-infected-the-world/ https://www.minimachines.net/actu/la-menace-xz-ou-comment-le-ciel-a-failli-tomber-sur-nos-tetes-125967

    Les impacts de laisser trainer son secret client dans les connections Keycloak https://medium.com/@benjaminbuffet/dis-keycloack-cest-grave-si-je-laisse-tra%C3%AEner-mon-client-secret-d371a0f657ee

    un article qui explique les raison plutĂŽt que de dire c’est mal car c’est secret quand on utilise un mot de passe du client (et pas un JWT signĂ© ou une clĂ© privĂ©) si ca se perd, c’est l’usurpation de l’identitĂ© d’un utilisateur via son usage de client qui est en jeu (donc jouĂ© en tant que) ou usurper l’identitĂ© client en tant que telle (plus facile) et quelques conseils pour rĂ©duire ce risque Loi, sociĂ©tĂ© et organisation

    JavaOne serait de retour pour de vrai ? https://www.oracle.com/javaone/

    En mars 2025, c’est dans un an, on a le temps ! Ça se dĂ©roulera sur le campus d’Oracle dans la Silicon Valley peu d’infos et de dĂ©tail, pas sur que cela soit le JavaOne de nos souvenirs.

    Des infos concretes sur l’IA souveraine Albert https://x.com/emile_marzolf/status/1783072739630121432

    AMA, Ask Me Anything

    Hamza:

    “Comment ĂȘtre un rockstar dans le domaine, s’il vous plaĂźt une rĂ©ponse dĂ©taillĂ©e sur le plan d’action veille, auto formation, side projets 

 depuis vos expĂ©riences personnelles. Merci d’avance”

    Conférences

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

    3-4 mai 2024 : Faiseuses Du Web 3 - Dinan (France) 8-10 mai 2024 : Devoxx UK - London (UK) 16-17 mai 2024 : Newcrafts Paris - Paris (France) 22 mai 2024 : OpenInfra Day France - Palaiseau (France) 22-25 mai 2024 : Viva Tech - Paris (France) 24 mai 2024 : AFUP Day Nancy - Nancy (France) 24 mai 2024 : AFUP Day Poitiers - Poitiers (France) 24 mai 2024 : AFUP Day Lille - Lille (France) 24 mai 2024 : AFUP Day Lyon - Lyon (France) 28-29 mai 2024 : Symfony Live Paris - Paris (France) 1 juin 2024 : PolyCloud - Montpellier (France) 6 juin 2024 : WAX 2024 - Aix-en-Provence (France) 6-7 juin 2024 : DevFest Lille - Lille (France) 6-7 juin 2024 : Alpes Craft - Grenoble (France) 7 juin 2024 : Fork it! Community - Rouen (France) 11 juin 2024 : Cloud Toulouse - Toulouse (France) 11-12 juin 2024 : OW2con - Paris (France) 11-12 juin 2024 : PGDay Lille - Lille (France) 12-14 juin 2024 : Rencontres R - Vannes (France) 13-14 juin 2024 : Agile Tour Toulouse - Toulouse (France) 14 juin 2024 : DevQuest - Niort (France) 18 juin 2024 : Mobilis In Mobile 2024 - Nantes (France) 18 juin 2024 : BSides Strasbourg 2024 - Strasbourg (France) 18 juin 2024 : Tech & Wine 2024 - Lyon (France) 19-20 juin 2024 : AI_dev: Open Source GenAI & ML Summit Europe - Paris (France) 19-21 juin 2024 : Devoxx Poland - Krakow (Poland) 26-28 juin 2024 : Breizhcamp 2024 - Rennes (France) 27 juin 2024 : DotJS - Paris (France) 27-28 juin 2024 : Agi Lille - Lille (France) 4-5 juillet 2024 : Sunny Tech - Montpellier (France) 8-10 juillet 2024 : Riviera DEV - Sophia Antipolis (France) 6 septembre 2024 : JUG Summer Camp - La Rochelle (France) 6-7 septembre 2024 : Agile Pays Basque - Bidart (France) 19-20 septembre 2024 : API Platform Conference - Lille (France) & Online 26 septembre 2024 : Agile Tour Sophia-Antipolis 2024 - Biot (France) 2-4 octobre 2024 : Devoxx Morocco - Marrakech (Morocco) 7-11 octobre 2024 : Devoxx Belgium - Antwerp (Belgium) 10 octobre 2024 : Cloud Nord - Lille (France) 10-11 octobre 2024 : Volcamp - Clermont-Ferrand (France) 10-11 octobre 2024 : Forum PHP - Marne-la-Vallée (France) 11-12 octobre 2024 : SecSea2k24 - La Ciotat (France) 16 octobre 2024 : DotPy - Paris (France) 17-18 octobre 2024 : DevFest Nantes - Nantes (France) 17-18 octobre 2024 : DotAI - Paris (France) 30-31 octobre 2024 : Agile Tour Nantais 2024 - Nantes (France) 31 octobre 2024-3 novembre 2024 : PyCon.FR - Strasbourg (France) 6 novembre 2024 : Master Dev De France - Paris (France) 7 novembre 2024 : DevFest Toulouse - Toulouse (France) 8 novembre 2024 : BDX I/O - Bordeaux (France) 13-14 novembre 2024 : Agile Tour Rennes 2024 - Rennes (France) 28 novembre 2024 : Who Run The Tech ? - Rennes (France) 3-5 décembre 2024 : APIdays Paris - Paris (France) 4-5 décembre 2024 : Open Source Experience - Paris (France) 22-25 janvier 2025 : SnowCamp 2025 - Grenoble (France) 16-18 avril 2025 : Devoxx France - Paris (France) Nous contacter

    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/

  • La clĂŽture de Devoxx France 2024 avec les cast codeurs. L’annĂ©e oĂč le sous-titrage Ă©tait un personnage Ă  part entiĂšre de Devoxx France.
    Vous aurez beaucoup plus de plaisir et de contexte en regardant la vidĂ©o qu’en Ă©coutant cet Ă©pisode. Les sous titres jouent un rĂŽle important. Donc pour une fois ne nous Ă©coutez pas, regardez nous :o)

    Enregistré le 19 avril 2024

    TĂ©lĂ©chargement de l’épisode LesCastCodeurs-Episode–310.mp3

    News

    L’enregistrement en direct de Devoxx France 2024.

    Nous contacter

    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/

  • React a 10 ans. 10 Ans de RĂ©volution dans le DĂ©veloppement Web avec AmĂ©lie BenoĂźt (@AmelieBenoit33) et Manuel Cartier (@neolectron).

    Enregistré le 04 mars 2024

    TĂ©lĂ©chargement de l’épisode LesCastCodeurs-Episode-309.mp3

    React a 10 ans, longue vie Ă  React !

    Dans cet Ă©pisode, nous avons comme invitĂ©s Amelie BenoĂźt et Manuel Cartier. Les deux explorent l’évolution de React au cours de la derniĂšre dĂ©cennie, mettant en lumiĂšre ses principaux principes et son impact sur le dĂ©veloppement web. AmĂ©lie et Manuel discutent des caractĂ©ristiques fondamentales de React, comme la composition des composants et l’utilisation de la virtual DOM, ainsi que des tendances Ă©mergentes telles que l’adoption de React Hooks, et les React Server Components. Enfin, nous avons ses conclusions sur l’avenir de React et son rĂŽle continu dans le paysage du dĂ©veloppement web.

    Amélie Benoßt

    AmĂ©lie Benoit est une dĂ©veloppeuse web avec une expĂ©rience d’environ 10 ans dans le domaine. Son expertise se concentre principalement sur React et React Native, qu’elle maĂźtrise tant en JavaScript qu’en TypeScript.

    En plus de son travail de dĂ©veloppement, AmĂ©lie est une entrepreneuse communautaire active. Elle a fondĂ© deux Meetups, dont l’un est dĂ©diĂ© Ă  React & React Native, dĂ©montrant ainsi son engagement envers la diffusion des connaissances et le dĂ©veloppement de la communautĂ©. Elle a Ă©galement organisĂ© des confĂ©rences, notamment lors de l’évĂ©nement BDX I/O. Elle a aussi Ă©tĂ© oratrice a Devoxx France parmi d’autres confĂ©rences.

    Actuellement, AmĂ©lie occupe le poste de tech lead manager chez Busbud, une scale-up canadienne spĂ©cialisĂ©e dans la comparaison et la vente de billets de bus inter-citĂ©s en ligne. Son rĂŽle en tant que leader technique et manager la place au cƓur des opĂ©rations de dĂ©veloppement et de gestion de projet au sein de l’entreprise.

    Grùce à son expertise technique, son engagement communautaire et son leadership, Amélie Benoit apporte une contribution significative au monde du développement web et de la technologie.

    Manuel Cartier

    Manuel est un dĂ©veloppeur passionnĂ©, initiĂ© Ă  l’art du code dĂšs l’ñge de 13 ans. AnimĂ© par cette passion prĂ©coce, il entreprend des Ă©tudes en dĂ©veloppement de logiciels et gestion de projets, couronnĂ©es par l’obtention d’un BTS. Son parcours exceptionnel le conduit Ă  se distinguer dĂšs 2015 Ă  l’école “42” de Paris, oĂč il se classe premier parmi tous les candidats.

    Avec une solide expertise en C++, Manuel s’investit dans l’encodage vidĂ©o et audio chez Ateme, contribuant ainsi Ă  un transcodeur utilisant des bibliothĂšques faites maison, Ă©quivalentes Ă  x264. PassionnĂ© par la diffusion en direct, il partage rĂ©guliĂšrement ses connaissances en informatique et donne des cours de dĂ©veloppement web sur Twitch et YouTube.

    Toujours avide d’apprendre et de repousser ses limites, Manuel se lance actuellement dans l’exploration de Rust, encouragĂ© par la migration des projets C++ vers Rust chez Facebook. ParallĂšlement, il explore le dĂ©veloppement d’applications mobiles avec Ionic Framework et AngularJS, expĂ©rience acquise lors de la crĂ©ation d’une start-up en 2015.

    Son dernier rĂŽle en tant que dĂ©veloppeur Fullstack chez SigFox lui permet d’approfondir sa comprĂ©hension des mĂ©canismes de l’IoT. Aujourd’hui, son attention se porte sur l’écosystĂšme JavaScript et l’amĂ©lioration de l’expĂ©rience utilisateur, ainsi que sur le rendu 3D sur le web avec des technologies innovantes telles que Three.js et React-Three-Fiber.

    Nous contacter

    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/

  • Cet Ă©pisode discute du retour d’experience Java de Netflix, de jQuery, de gouvernance open source, d’Elon Musk, de Kubernetes, de Mistral (gagnant?), d’attaque des LLMs, de developpement de carriĂšre et de Trouble du DĂ©ficit de l’Attention avec ou sans HyperactivitĂ©.

    Enregistré le 15 mars 2024

    TĂ©lĂ©chargement de l’épisode LesCastCodeurs-Episode-308.mp3

    News

    Les cast codeurs veulent essayer quelque chose de nouveau et le sondage montre que vous aussi. On lance donc une section Ask Me Anything, posez nous une question sur https://lescastcodeurs.com/ama et nous prendrons certaines questions pour donner notre rĂ©ponse. Lancez-vous, on pense que cette section pourra ĂȘtre sympa :)

    Langages

    Retour d’experience de Netflix sur ZGC https://netflixtechblog.com/bending-pause-times-to-your-will-with-generational-zgc-256629c9386b

    moins de tail latency ce qui veut dire moins de charge sur le systeme (moins de retry) aussi plus facile de trouver les vrais probleme de latence (plus cachĂ©s dans les latences de GC) et sans consommation superieure de CPU pour les memes perfs malgrĂ© les barrieres differentes de ZGC pas de tuning explicit de leur part (enfin presque) meme si les pointeurs ne sont pas compresses, l’efficacite du GC compense Librairies

    Sortie de Spock 2.4-M2 https://spockframework.org/spock/docs/2.4-M2/release_notes.html

    Support de plusieurs librairies de mocking Meilleur support dans les IDEs Et plein d’autres petites amĂ©liorations

    jQuery 4 est sorti ! jQuery est de retour ! https://www.infoq.com/news/2024/03/jquery-4-beta-release-note/

    On parle rĂ©guliĂšrement du dernier framework JavaScript Ă  la mode, mais jQuery est toujours lĂ  PremiĂšre release majeure depuis 8 ans Suppression de plein de features qui Ă©taient deprecated et maintenant fournie souvent par dĂ©faut par les moteurs JavaScript des navigateurs jQuery continue d’ĂȘtre tĂ©lĂ©chargĂ© de plus en plus au fil du temps, mais peut-ĂȘtre parce qu’il bĂ©nĂ©ficie du succĂšs des projets qui l’utilisent comme Cypress, WordPress ou Drupal)

    Quarkus sort sa deuxieme LTS https://quarkus.io/blog/quarkus-3-8-released/

    explique les changements importants depuis la LTS 3.2 Infrastructure

    Linkerd ou plutÎt la boßte derriÚre va faire payer pour accéder aux builds stable du projet. Cela crée des conversations au sein de la CNCF https://www.techtarget.com/searchitoperations/news/366571035/Linkerd-paywall-prompts-online-debate-CNCF-TOC-review

    deploy envoy, c’est plus dur Buyoant est le principal contributeur derriere Linkerd et ils ont edcider de mettre les distributions stables derriere un paywall pour les societes de plus de 50 employĂ©s ($2000 par cluster) les gens se trouve flouĂ©s par aider au succces et ensuite de trouver piĂ©gĂ© La license reste ASL mais la version stable est derriere un paywall, comme red hat enterprise linuix recemment un autre exemple de projet open source qui vire commercial questionne la gouvernance open source, la CNCF va inestiguer et peut etre durcir ces criteres de graduiation Weavework (FLux) a fermĂ© ces dernieres semaines aussi

    Cloudflare a reecrit un proxy HTTP en rust https://blog.cloudflare.com/how-we-built-pingora-the-proxy-that-connects-cloudflare-to-the-internet/

    ils ont utilise NGinx pendant longtemps mais le single worker modele ne permetait pas ceratins optims et ils ont des besolins specifiques bref ils ont reecrit en rust, multi threaded et avec work stealing et ils sont content

    Le guide du “hater” sur Kubernetes https://paulbutler.org/2024/the-haters-guide-to-kubernetes/

    L’auteur se plaint rĂ©guliĂšrement de Kubernetes pour sa grande complexitĂ© mais reconnait que c’est quand mĂȘme un grand morceau de technologie A utiliser surtout quand on a besoin de : ExĂ©cuter plusieurs processus/serveurs/tĂąches planifiĂ©es. Les exĂ©cuter de maniĂšre redondante et rĂ©partir la charge entre eux. Les configurer, ainsi que les relations entre eux, sous forme de code. L’auteur liste ensuite les fonctionnalitĂ©s qu’il utilise, qu’il fait attention quand il les utilise, et celles qu’il prĂ©fĂšre Ă©viter Utilise : deployments, services, cron jobs, config maps et secrets Attention : stateful set, persistent volume et RBAC Evite : le YAML Ă  la main, les opĂ©rateurs et resources customs, Helm, tout ce qui est mesh, les resources ingress, essayer de rĂ©pliquer la stack K8S complĂšte localement sur sa machine Data et Intelligence Artificielle

    Mistral AI et Microsoft font un accord sur le modele le plus puissant de Mistral et certains ne sont pas content https://www.latribune.fr/technos-medias/informatique/l-alliance-entre-mistral-et-micr[
]usion-de-l-independance-technologique-europeenne-991558.html

    Mistral avancait son approche open source mais son modele le plus puissant ne l’est pas ils ont un partenariat exclusif avec Microsoft pour le distribuer Et MS rentre dans le capital Au revoir l’independance de l’IA europĂ©enne Au revoir les modeles open source larges cela va a l’encontre du loby et de son positinnement aupres de la commission europeenne ca fait grincer des dents a bruxelles qui avait allĂ©ger les contraintes sur les modeles fondamentaux a la demande de Mistral qui menacait de de voir s’allier avec MS si ce n’était pas le cas. Mistral Ă©tait un fer de lance des modeles open sources pour eviter les biais ils en garderont masi pas les modeles specialisĂ©s ou optimisĂ©s cela reste une bonne decisione conomique pour Mistral

    Infinispan 15 est sorti https://infinispan.org/blog/2024/03/13/infinispan-15

    JDK 17 Redis Hot Replacement donnant: multi thread, clustering, replication cross site, diff stores de persistence en disk, avoir des caches differentes en namespace diffĂ©rentes avec des rĂšgles appliquĂ©es Ă  chaque cas d’usage Recherche Vectorielle et stockage des embeddings Integration avec Langchain (Python), Langchain4j, et Quarkus Langchain AmĂ©liorations du search, replication cross site, la console, tracing, l’Operateur Kubernetes 
 Support du Protobuf 3 avec la release de Protostream 5 et meilleur API Outillage

    Ne pas signer ses commits cryptographiquement ? https://blog.glyph.im/2024/01/unsigned-commits.html

    L’article cite comme seul avantage d’avoir le petit badge vert sur Github indiquant “vĂ©rifiĂ©â€ ResponsabilitĂ© future inconnue et potentiellement illimitĂ©e pour les consĂ©quences de l’exĂ©cution du code dans un commit que vous avez signĂ©. Renforcement implicite de GitHub en tant qu’autoritĂ© de confiance centralisĂ©e dans le monde de l’open source. Introduction de problĂšmes de fiabilitĂ© inconnus dans l’infrastructure qui repose sur les signatures de commit. Une violation temporaire de vos identifiants GitHub entraĂźne dĂ©sormais des consĂ©quences potentiellement permanentes si quelqu’un parvient Ă  y introduire une nouvelle clĂ© de confiance. Nouveau type de surcharge de processus continu : les clĂ©s de signature de commit deviennent une nouvelle infrastructure permanente Ă  gĂ©rer, avec de nouvelles questions comme « que faire des clĂ©s expirĂ©es », « Ă  quelle frĂ©quence dois-je les renouveler », etc. on peut empecher de pousser des commits non signĂ©s SĂ©curitĂ©

    Des modÚles avec des backdoors uploadés sur hugging faces non détecté. https://arstechnica.com/security/2024/03/hugging-face-the-github-of-ai-hosted-code-that-backdoored-user-devices/

    par les chercheurs de JFrog Une centaine dĂ©tectĂ©s dont 10 malicieux Des tests de chercheurs mais un faisant un reverse ssh S’appuye sur le format de serialisation pickle en python. Populaire mais connu comme dangereux

    Une premiĂšre side attack channel sur les LLMs https://arstechnica.com/security/2024/03/hackers-can-read-private-ai-assistant-chats-even-though-theyre-encrypted/

    cela s’appuie sur la taille des packets chiffrĂ©s envoyĂ©s et leur timing pour dĂ©tecter la longueur des tokens Ensuite un LLM spĂ©cialisĂ© reconstruit la suite de mots la plus probable vu la longueur C’est du Ă  l’UX qui envoie les tokens au fil de l’eau Ć’est facilement corrigeable en rendant les paquets de taille fixe et en ajoutant du hasard de dĂ©lai d’envoie. Mais c’est rigolo comment les LLMs peuvent amplifier les side channel attacks Architecture

    Netflix et Java https://www.infoq.com/presentations/netflix-java/

    Netflix est un java shop La “stack NEtflix” connue du public a beaucoup evoluĂ© Pleins de microservices Gen1: groovy en gateway front end for backend , RxJava et Histrix Gen2: GraphQL et GraphQL federĂ© ; plus de reactif sand dans la gateway Java 17 : 2800 apps java utilisent Azul JDK avait du Java 8 sur du guice et app custom utilisent G1, Java 17 = -20% CPU et Shenandoah pour la gateway Zuul Plans pour Java 21 (ZGC, virtual threads) apres speculatif Ils ont standardisĂ© sur Spring Boot il n’y a pas si longtemps

    Un long article sur les microservices https://mcorbin.fr/posts/2024-02-12-microservice/

    encore un me direz vous oui amis si vous etre en pleine crise existentielle avec votre equipe c’est du mon materiel il va sur les points importants comme synchrone vs asynchrone, les patterns de communication, la copie de donnĂ©es, comment tester le “monotithe” ou plutot comment ne pas le faire etc c’est un peu long mais ca recadre bien MĂ©thodologies

    Opinion: est-ce qu’on peut devenir dev à partir de 40 ans https://www.codemotion.com/magazine/dev-life/can-you-become-a-programmer-after-40/?utm_source=ActiveCampaign&utm_medium=email&utm_content=5+Frontend+Trends+we+Didn+t+See+Coming+in+2024&utm_campaign=NL_EN_240215+%28Copy%29&vgo_ee=sFCRn4bbw8NuvJwlxj4PgXiVS4eICnA1ZPdkH4DGKyhNNwh6NQ%3D%3D%3Au3g96%2Fz3Uf7kZHAF7tezy9Y0ZJ6paAsE

    programmeur de CSS a 40 ans, je sais pas :stuck_out_tongue_winking_eye: l’auteur regrette les pubs pour devenir ev a 40 ansd facilement developpeur c’est beaucoup de connaissance et de travail et doit etre un choix, pas un choix pas default ou facile ils decrit certains biais comme un 20 ans sans experience est plus pardonnĂ© qu’à 40, le temps a y consacrĂ© est diffĂ©rent etc compensĂ© par des actes de motivation (GitHub, participation open source, meetups etc) mais le temps d’apprendre de ces erreurs n’as pas vraiment de court circuit bref une fonrmation c’est bien mais aps suffisant

    Navigate your own way https://www.infoq.com/presentations/lessons-opportunities-carrier/

    IBMer for 21 years. I’m a Java champion RĂ©flĂ©chir Ă  sa carriĂšre en mode time box, chercher sa promotion ? Tu peux dĂ©cider ton chemin Momentum pandĂ©mie ça lui a fait bcp rĂ©flĂ©chir sur sa vie et oĂč elle Ă©tait. Moment oĂč elle quittait IBM pour aller vers RH (cƓur se brise) Essentiels pour prendre ton propre chemin Se connaĂźtre soit mĂȘme, reconnaĂźtre les diffĂ©rences avec les autres connaĂźtre tes valeurs: c’est quoi important pour toi, c’est quoi qui te motive, ce qui te dĂ©motive. Écrire des mots Se fixer des objectifs avec l’aide des autres Repusher ses limites, sur des sujets dont tu penses que ce n’est pas possible pour toi Participe activement, entoure toi bien Un talk trĂšs personnel et inspirant

    Un article sur le trouble TDAH chez le développeur adulte https://rlemaitre.com/fr/posts/2023/11/hacker-le-tdah-strat%C3%A9gies-pour-le-d%C3%A9veloppeur-moderne/

    DiagnostiquĂ© Ă  44 ans SchĂ©ma d’inattention et d’hyperactivite/implusivite qui interfere avec le fonctionnement Affecte le fonctionnement social scolaire ou professionnel Non diagnistiquĂ©: burn out anxiĂ©tĂ© ou depression Souvent non diagnostiquĂ© jusqu’à ce que se propres enfants soient diagnostiquĂ©s Mais cela amĂšne du positif: hyperfocus, resolution creative de problĂšmes, adaptation rapide aux changements qui sont du pain bĂ©ni Le nĂ©gatif c’est la gestion du temps, organisation, instabilitĂ© Discute ensuite les phĂ©nomĂšnes dans le cerveau Et donne des techniques et des piĂšges Ă  Ă©viter Vous avez sĂ»rement des collĂšgues TDAH ou l’ĂȘtes-vous meme ConfĂ©rences

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

    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) 19 mars 2024 : OpenTofu Day Europe - Paris (France) 19 mars 2024 : Platform Engineering Day - Paris (France) 19 mars 2024 : ThanosCon Europe - Paris (France) 19 mars 2024 : PaaS Forward by OVHcloud | Rancher by SUSE - Paris (France) 19-21 mars 2024 : CloudNativeHacks - Paris (France) 19-21 mars 2024 : IT & Cybersecurity Meetings - Paris (France) 19-22 mars 2024 : KubeCon + CloudNativeCon Europe 2024 - Paris (France) 21 mars 2024 : IA & Data Day Strasbourg - Strasbourg (France) 22-23 mars 2024 : Agile Games France - Valence (France) 26-28 mars 2024 : Forum INCYBER Europe - Lille (France) 27 mars 2024 : La Conf Data | IA - Paris (France) 28-29 mars 2024 : SymfonyLive Paris 2024 - Paris (France) 28-30 mars 2024 : DrupalCamp Roazhon - Rennes (France) 4 avril 2024 : SoCraTes Rennes 2024 - Rennes (France) 4-6 avril 2024 : Toulouse Hacking Convention - Toulouse (France) 8 avril 2024 : Lyon Craft - Lyon (France) 9 avril 2024 : Unconf HackYourJob - Lyon (France) 11 avril 2024 : CI/CDay - Paris (France) 17-19 avril 2024 : Devoxx France - Paris (France) 18-20 avril 2024 : Devoxx Greece - Athens (Greece) 22 avril 2024 : React Connection 2024 - Paris (France) 23 avril 2024 : React Native Connection 2024 - Paris (France) 25-26 avril 2024 : MiXiT - Lyon (France) 25-26 avril 2024 : Android Makers - Paris (France) 3-4 mai 2024 : Faiseuses Du Web 3 - Dinan (France) 8-10 mai 2024 : Devoxx UK - London (UK) 16-17 mai 2024 : Newcrafts Paris - Paris (France) 22-25 mai 2024 : Viva Tech - Paris (France) 24 mai 2024 : AFUP Day Nancy - Nancy (France) 24 mai 2024 : AFUP Day Poitiers - Poitiers (France) 24 mai 2024 : AFUP Day Lille - Lille (France) 24 mai 2024 : AFUP Day Lyon - Lyon (France) 28-29 mai 2024 : Symfony Live Paris - Paris (France) 1 juin 2024 : PolyCloud - Montpellier (France) 6-7 juin 2024 : DevFest Lille - Lille (France) 6-7 juin 2024 : Alpes Craft - Grenoble (France) 7 juin 2024 : Fork it! Community - Rouen (France) 11-12 juin 2024 : OW2con - Paris (France) 12-14 juin 2024 : Rencontres R - Vannes (France) 13-14 juin 2024 : Agile Tour Toulouse - Toulouse (France) 14 juin 2024 : DevQuest - Niort (France) 18 juin 2024 : Tech & Wine 2024 - Lyon (France) 19-20 juin 2024 : AI_dev: Open Source GenAI & ML Summit Europe - Paris (France) 19-21 juin 2024 : Devoxx Poland - Krakow (Poland) 27 juin 2024 : DotJS - Paris (France) 27-28 juin 2024 : Agi Lille - Lille (France) 4-5 juillet 2024 : Sunny Tech - Montpellier (France) 8-10 juillet 2024 : Riviera DEV - Sophia Antipolis (France) 6 septembre 2024 : JUG Summer Camp - La Rochelle (France) 19-20 septembre 2024 : API Platform Conference - Lille (France) & Online 2-4 octobre 2024 : Devoxx Morocco - Marrakech (Morocco) 7-11 octobre 2024 : Devoxx Belgium - Antwerp (Belgium) 10 octobre 2024 : Cloud Nord - Lille (France) 10-11 octobre 2024 : Volcamp - Clermont-Ferrand (France) 10-11 octobre 2024 : Forum PHP - Marne-la-Vallée (France) 16 octobre 2024 : DotPy - Paris (France) 17-18 octobre 2024 : DevFest Nantes - Nantes (France) 17-18 octobre 2024 : DotAI - Paris (France) 6 novembre 2024 : Master Dev De France - Paris (France) 7 novembre 2024 : DevFest Toulouse - Toulouse (France) 8 novembre 2024 : BDX I/O - Bordeaux (France) Nous contacter

    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/

  • EnregistrĂ© le 27 fĂ©vrier 2024

    TĂ©lĂ©chargement de l’épisode LesCastCodeurs-Episode-307.mp3

    Interview

    Les Cast Codeurs accueillent deux invités spéciaux pour explorer un aspect crucial de la carriÚre informatique : comment conserver la passion, la créativité et le plaisir au fil du temps.

    Holly Cummins et Mark Jane

    Holly Cummins
    Mark Jane

    Holly Cummins est dans l’open-source depuis 20 ans. Elle est Java Champion et JavaOne Rock Star. Elle a co-Ă©crit le livre ‘Enterprise OSGi in Action’ chez Manning et a prĂ©sentĂ© des confĂ©rences dans divers Ă©vĂ©nements renommĂ©s tels que JavaOne, Devoxx, et JAX London. Elle travaille chez Red Hat en 2024, et contribue principalement sur Quarkus.

    Mark Jane, est un acteur accompli et improvisateur chevronnĂ© depuis 1994. Il rejoint la troupe Eux en 2016, jouant dans le spectacle Bio Ă  Paris, et Pilote et Chaos en 2024. Il a Ă©crit le livre “Jeux et enjeux: La boĂźte Ă  outils de l’improvisation thĂ©atrale”.

    Les deux naviguent leur carriÚre avec passion, créativité et fun depuis +20 ans.

    Naviguer sa carriÚre professionnelle avec passion, créativité et fun sur le long terme

    Dans ce podcast, Holly et Mark partagent leurs conseils et expĂ©riences uniques, dĂ©couvrant de nombreux points communs malgrĂ© l’apparente disparitĂ© entre leurs deux professions.

    Nous contacter

    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/

  • 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
  • Cet Ă©pisode news discute de langages, de bibliothĂšques, d’intelligence artificielle bien sĂ»r et mĂȘme de Web. Et puis de challenge Java et mĂȘme de PĂšre NoĂ«l !

    Enregistré le 12 janvier 2024

    TĂ©lĂ©chargement de l’épisode LesCastCodeurs-Episode-305.mp3

    News

    RIP Niklaus Wirth https://en.wikipedia.org/wiki/Niklaus_Wirth

    Informaticien Suisse Conception des langages ALGOL, Modula-2 et
 Pascal Plusieurs distinctions: Turing 1984, John Von Neumann 1994. Depuis 1987 un prix crĂ©Ă© Ă  son honneur Plusieurs livres dont Algorithms + Data Structures = Programs 1976 La Loi de Wirth: La beautĂ© d’un programme rĂ©side dans la clartĂ© de sa structure. Niklaus Wirth a toujours prĂŽnĂ© la simplicitĂ©, la lisibilitĂ© et la comprĂ©hensibilitĂ©. Approche pragmatique

    https://recording.zencastr.com/lescastcodeurs/news-305

    Langages

    L’enfer sur terre: equals and hashCode pour les entitĂ©es JPA. Tout le monde a un avis, faire le sien est compliquĂ© - https://vladmihalcea.com/hibernate-facts-equals-and-hashcode/ - https://vladmihalcea.com/how-to-implement-equals-and-hashcode-using-the-jpa-entity-identifier/ - https://vladmihalcea.com/the-best-way-to-implement-equals-hashcode-and-tostring-with-jpa-and-hibernate/ - https://jpa-buddy.com/blog/hopefully-the-final-article-about-equals-and-hashcode-for-jpa-entities-with-db-generated-ids/

    Kotlin va t’il dĂ©clinĂ© en 2025, faute d’innovation et avec les nouvelles features de Java ? https://shiftmag.dev/kotlin-vs-java-2392/

    Selon l’auteur, d’autres langages alternatifs pour la JVM ont dĂ©clinĂ©, comme Groovy et Scala L’auteur pense qu’il y aura de moins en moins de diffĂ©renciants par rapport Ă  Java, et Kotlin n’a pas rajoutĂ© de fonctionnalitĂ©s significatives depuis un an ou deux

    Comment enlever des accents et autres marques diacritiques dans des chaines de caractĂšres en Java https://glaforge.dev/posts/2024/01/url-slug-or-how-to-remove-accents-in-java/

    Pour les URLs d’un blog post, par exemple, on souhaite avoir le titre dans l’URL, mais de maniĂšre URL-friendly, donc sans accents, en remplaçant les espaces par des tirets, etc Guillaume propose une approche basĂ©e sur la normalisation de chaine unicode et les expressions rĂ©guliĂšres Mais il Ă©voque Ă©galement la librairie Slugify qui est en plus capable de faire de la translitĂ©ration (pour transformer aussi des idĂ©ogrammes et autre caractĂšres non-ASCII)

    Les “gatherers” de JDK 22 https://blog.soebes.io/posts/2024/01/2024-01-07-jdk-gatherer/

    Nous avons mentionnĂ© rĂ©cemment le JEP 461 pour Java 22 : Stream Gatherers, qui sera en preview Permet de faire des choses qui Ă©taient un peu compliquĂ©es Ă  faire avec l’API stream avant, comme par exemple implĂ©menter des fenĂȘtres glissantes sur les donnĂ©es du stream L’article parle des diffĂ©rentes capacitĂ©s des gatherers, avec un Integrator, un Initializer et un Finisher, et enfin un Combiner, avec diffĂ©rents exemples de code pour les illustrer Librairies

    Le fonds tech souverain d’origine allemande sponsorise le dĂ©veloppement de Log4J https://www.sovereigntechfund.de/news/log4j-investment

    3 contributeurs pourront bosser dessus Ă  temps plein permet de sĂ©curiser le dĂ©veloppement du projet rĂ©action Ă  l’impact de la CVE Log4shell qui avait bien marquĂ© les esprits et fait bosser plein de gens le weekend pour tout patcher ! Cloud

    Le glossaire de la Cloud Native Foundation a été traduit en Français https://glossary.cncf.io/fr/

    Web

    Sortie de Vue.JS 3.4 https://blog.vuejs.org/posts/vue-3-4

    le parseur de composants (SFC) est 2x plus rapide amĂ©lioration du systĂšme de rĂ©activitĂ© en particulier pour les propriĂ©tĂ©s “computed” (recalculĂ©es) le namespace JSX deprecated a Ă©tĂ© supprimĂ© CĂ©dric Exbrayat de NinjaSquad couvre Ă©galement les nouveautĂ©s dans cet article https://blog.ninja-squad.com/2023/12/29/what-is-new-vue-3.4/

    Astro JS 4.1 https://astro.build/blog/astro-410/

    DĂ©couverte de ce FW grĂące Ă  Petipois https://medium.com/front-end-weekly/create-a-website-using-astro-in-2024-f5963003c19c Astro est le framework web pour la construction de sites web axĂ©s sur le contenu tels que les blogs, le marketing et le commerce Ă©lectronique. Astro est surtout connu pour ĂȘtre le pionnier d’une nouvelle architecture frontend afin de rĂ©duire la surcharge et la complexitĂ© de JavaScript par rapport aux autres frameworks Architecture en “Astrot Islands” (interface en composants isolĂ©s) SSG et SSR (Static Site Generator ey Server Side Rendering) 0 Javascript si tu veux Tu utilises React, Angular ou Vue pour tes composants Lis plus ici : https://kinsta.com/fr/blog/astro-js/

    React à 10 ans
 et là ma découverte de React Server Components https://www.joshwcomeau.com/react/server-components/#introduction-to-react-server-components-3

    “At a high level, React Server Components is the name for a brand-new paradigm. In this new world, we can create components that run exclusively on the server.” L’idĂ©e est de n’est pas faire des composants entiers en react dans le backend, et de n’est pas dĂ©lĂ©guer aux rendering client pour ces composants

    Prédictions 2024 https://thenewstack.io/2024-predictions-by-javascript-frontend-framework-maintainers/

    Angular: Optional Zone.JS Next.js (nouveau compilateur, + backend ?) React: adoption de React Server Components, SPA ne suffit pas. React auto-memorizing (useCallback/useMemo deprecate) Solid 2.0 viendra aprĂšs SolidStart (framework web) Data et Intelligence Artificielle

    Retour d’experience sur faire du RAG avec des LLMs https://x.com/taranjeetio/status/1742587923189596531?s=20

    Gunnar Morling a lancé le 1 billion row challenge : https://www.morling.dev/blog/one-billion-row-challenge/

    L’idĂ©e est de calculer le min / max, la moyenne, de tempĂ©ratures, indiquĂ©es ligne par ligne dans un Ă©norme fichier Il y a Ă©normĂ©ment de contributions. Les plus rapides ont utilisĂ© des memory mapped files, ou bien des instructions SIMD Le challenge Ă©tait en pur Java, mais d’autres personnes ont tentĂ© l’expĂ©rience avec diverses bases de donnĂ©es ou autres langages de programmation

    Didier Girard parle de Shadow AI https://www.linkedin.com/posts/didiergirard_shadowai-genai-gouvernance-activity-7150031627006464000-IF1G/

    Comme on a parlĂ© de “shadow IT” Ă  une Ă©poque, la nouvelle ombre du jour, c’est l’intelligence artificielle Pour ĂȘtre plus productifs, les employĂ©s utilisent l’IA, sans forcĂ©ment le dire Ă  leur employeur Le problĂšme Ă©tant qu’avec certains systĂšme d’IA, les donnĂ©es que vous envoyĂ©es peuvent ĂȘtre sauvegardĂ©es et utilisĂ©es pour rĂ©-entrainer l’IA
 et potentiellement, l’IA pourrait recracher verbatim du texte provenant de ces donnĂ©es Ă  d’autres utilisateurs. D’oĂč une brĂšche dans la sĂ©curitĂ© des donnĂ©es de l’entreprise

    Appel de fonction avec le LLM Gemini de Google https://glaforge.dev/posts/2023/12/22/gemini-function-calling/

    Les Large Language Model sont limitĂ©s par les connaissances qu’ils ont acquises lors de leur entrainement Une approche possible pour se baser sur une base documentaire est d’utiliser l’approche Retrieval Augmented Generation (RAG) oĂč l’on utilise une base de donnĂ©es vectorielle pour rĂ©cupĂ©rer des passages de texte qui correspondent Ă  la requĂȘte demandĂ©e Mais il existe aussi une approche intĂ©ressante qui permet d’appeler des systĂšmes externes (APIs, service local, etc) en permettant au LLM de savoir qu’il peut rĂ©pondre Ă  une demande donnĂ©e en se basant sur l’appel d’une fonction. Dans cette approche, le LLM rĂ©pond qu’il faudrait appeler une fonction (par exemple pour connaitre la mĂ©tĂ©o Ă  Paris) et il indique quels paramĂštres passer (“Paris”). Le dĂ©veloppeur ensuite appel cette fonction et retourne le rĂ©sultat de l’invocation au LLM, qui va ensuite pouvoir gĂ©nĂ©rer du texte avec ces donnĂ©es. C’est l’approche “function calling” qui permet d’étendre Ă  un LLM pour lui donner accĂšs Ă  des donnĂ©es live, derriĂšre une API, etc MĂ©thodologies

    Une video sur le pÚre Noël et la pensé critique de la Tronce en Biais https://youtu.be/tqlYKO_asFw?si=g1Fq5OfCvQONNb2i

    VidĂ©o interessante pour comprendre comment nous, dans la tech, on peut tomber facilement sur des croyances qui sont doutantes si on dĂ©veloppe pas l’esprit critique. Le pĂšre NoĂ«l, vĂ©ritable complot planĂ©taire des adultes, magasins, mĂ©dias 
 d’un mensonge Un enfant qui essaie d’appliquer le procĂ©dĂ© Ă©pistĂ©mologique, il n’a pas d’autre source pour vĂ©rifier que le pĂšre noĂ«l n’existe pas, tous ses sources fiables duquel il apprend le monde (parents, profs, medias, histoires, medias) valident que le pĂšre noĂ«l existe. Expliquer les incoherences par la magie, c’est quelque chose de complĂ©ment banal dans l’univers d’un enfant Ă  qui on parle en permanence de magie La dĂ©couverte de la mensonge aux alentours de 7 ans, l’age de la raison, est une bonne opportunitĂ© pour aborder l’esprit critique avec les enfants Loi, sociĂ©tĂ© et organisation

    EU AI Act cheat sheet https://www.linkedin.com/posts/yann-lecun_eu-ai-act-cheat-sheet-understand-activity-7139980837013331971-TDqI?utm_source=share&utm_medium=member_ios

    Les entreprises vont avoir 1 ou 2 ans pour s’y conformer Basics: Definition de l’AI, extraterritorialitĂ©, exceptions (oss, r&D, mais aussi dĂ©fense 
), classification par niveaux de risks (Prohibited > High Risk > Limited Risk > Minimal Risk) Prohibited: Biometrique, social credit scoring, detection d’emotions, renforcement des lois basĂ©es sur l’identification biometrique en public High (des rĂ©gles sont dĂ©finies pour controler ces usages: transparence, qualitĂ©, risque 
): Le matĂ©riel mĂ©dical, les vĂ©hicules, l’éducation, les Ă©lections, 
 General: Transparence et information

    ChatGPT n’est pas un super mĂ©decin https://x.com/drhughharvey/status/1736308984288563550?s=46&t=C18cckWlfukmsB_Fx0FfxQ

    ces d’utilisation ChatGPT en copilote Trop de non dĂ©terminisme dans les rĂ©ponses Ă  la mĂȘme question 41% des rĂ©ponses dans le consensus mĂ©dical 7% dangereuse Faire du rag n’a montĂ© que de quelques pourcents 5

    Transcription de la confĂ©rence donnĂ©e PGConf EU par Laetitia Avrot et Karen Jex (expertes Postgresql): Trying to be Barbie in Ken’s Mojo Dojo Casa House https://karenjex.blogspot.com/2023/12/trying-to-be-barbie-in-kens-mojo-dojo.html

    Il s’agit d’une confĂ©rence en sociologie. En sociologie, il suffit que quelque chose soit vrai pour la majoritĂ© des cas pour ĂȘtre considĂ©rĂ© comme une vĂ©ritĂ©, car cela repose sur des statistiques. Sujet donnĂ© pour susciter de l’attention sur un problĂšme qui existe bien dans la tech. Elles ont rĂ©alisĂ© que la grande majoritĂ© de la population n’en Ă©tait pas consciente (barbie)! Le film Barbie les a fait comprendre qu’elles doivent expliquer ce Ă  quoi les femmes sont confrontĂ©es au quotidien, afin que les autres puissent comprendre Ă  quel point cela peut ĂȘtre Ă©puisant. TrĂšs bien documentĂ© avec bcp de liens et rĂ©fĂ©rences au delĂ  de l’expĂ©rience personnelle Transcription et slides dans l’article Lien entre film Barbie et la place des femmes dans la tech. IdĂ©es non neuves mais cela a Ă©tĂ© un impact Les biais en gĂ©nĂ©ral ne sont pas particuliers Ă  un genre, sont globales. Test sur les biais implicites Il existe un dĂ©ficit de talents technologiques (estimĂ© atteindre de 1,4 million Ă  3,9 millions de personnes d’ici 2027 dans les pays de l’UE-27), qui pourrait potentiellement ĂȘtre comblĂ© en doublant la proportion de femmes dans le secteur technologique. Cependant, la part des femmes dans les rĂŽles technologiques connaĂźt sa plus basse reprĂ©sentation dans les domaines en pleine croissance tels que DevOps et le cloud. plus de la moitiĂ© des femmes quittent l’industrie technologique 10 Ă  20 ans aprĂšs le dĂ©but de leur carriĂšre, soit le double du taux des hommes. (manque d’opportunitĂ©s, difficultĂ©s face aux biais, se sentir comme une outsider etc
) La part des femmes dans les rĂŽles technologiques en Europe risque de diminuer pour atteindre 21% d’ici 2027. Solutions: roles modĂšles, combattre nos biais (si on ne les reconnait pas, on ne peut pas le combattre), mentoring, faire attention Ă  donner de la voix etc


    New York Times porte plainte Ă  open ai https://www.bbc.com/news/technology-67826601

    rĂ©clame des billions en copy right, suit aussi Microsoft et Bing qui utilise open ai on peut trouver des extraits des articles avec suscription disponibles Si on demande Ă  chat gpt sur des news actuelles, reprend des explications tirĂ©s du NYT sans le mentionner Sur bing on peut trouver aussi des extraits sans citer ni linker la source ConsĂ©quences pour NYT: moins d’accĂšs Ă  leur site, moins de consultations, moins des clicks, chute des suscriptions, pertes monĂ©taires importantes RĂ©ponse de OpenAI au NYT https://openai.com/blog/openai-and-journalism We collaborate with news organizations and are creating new opportunities Training is fair use, but we provide an opt-out because it’s the right thing to do “Regurgitation” is a rare bug that we are working to drive to zero The New York Times is not telling the full story Outils de l’épisode

    Userscripts https://github.com/quoid/userscripts: extension pour changer le CSS et JS des sites dans votre navigateur

    Rubrique débutant

    Guillaume a publiĂ© 2 “codelabs” pour dĂ©marrer sur LangChain4J, en utilisant le LLM PaLM de Google https://glaforge.dev/posts/2023/12/18/get-hands-on-codelabs-to-dabble-with-llms/

    Ces 2 tutoriels pratiques permettent de dĂ©couvrir les deux modĂšles text et chat de PaLM DiffĂ©rentes tĂąches sont illustrĂ©es pour faire de simples questions/rĂ©ponses, de simples chat, mais aussi comment extraire des donnĂ©es structurĂ©es d’un texte, comment faire de la classification (avec un exemple d’analyse de sentiment)

    Google Summer of Code - appel aux projets https://summerofcode.withgoogle.com/

    Conférences

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

    31 janvier 2024-3 février 2024 : SnowCamp - Grenoble (France) 1 février 2024 : AgiLeMans - Le Mans (France) 6 février 2024 : DevFest Paris - Paris (France) 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) 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 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) 19 mars 2024 : OpenTofu Day Europe - Paris (France) 19 mars 2024 : Platform Engineering Day - Paris (France) 19 mars 2024 : ThanosCon Europe - Paris (France) 19-21 mars 2024 : IT & Cybersecurity Meetings - Paris (France) 19-22 mars 2024 : KubeCon + CloudNativeCon Europe 2024 - Paris (France) 21 mars 2024 : IA & Data Day Strasbourg - Strasbourg (France) 22-23 mars 2024 : Agile Games France - Valence (France) 26-28 mars 2024 : Forum INCYBER Europe - Lille (France) 28-29 mars 2024 : SymfonyLive Paris 2024 - Paris (France) 28-30 mars 2024 : DrupalCamp Roazhon - Rennes (France) 4-6 avril 2024 : Toulouse Hacking Convention - Toulouse (France) 17-19 avril 2024 : Devoxx France - Paris (France) 18-20 avril 2024 : Devoxx Greece - Athens (Greece) 22 avril 2024 : React Connection 2024 - Paris (France) 23 avril 2024 : React Native Connection 2024 - Paris (France) 25-26 avril 2024 : MiXiT - Lyon (France) 25-26 avril 2024 : Android Makers - Paris (France) 8-10 mai 2024 : Devoxx UK - London (UK) 16-17 mai 2024 : Newcrafts Paris - Paris (France) 22-25 mai 2024 : Viva Tech - Paris (France) 24 mai 2024 : AFUP Day Nancy - Nancy (France) 24 mai 2024 : AFUP Day Poitiers - Poitiers (France) 24 mai 2024 : AFUP Day Lille - Lille (France) 24 mai 2024 : AFUP Day Lyon - Lyon (France) 2 juin 2024 : PolyCloud - Montpellier (France) 6-7 juin 2024 : DevFest Lille - Lille (France) 6-7 juin 2024 : Alpes Craft - Grenoble (France) 11-12 juin 2024 : OW2con - Paris (France) 12-14 juin 2024 : Rencontres R - Vannes (France) 14 juin 2024 : DevQuest - Niort (France) 27-28 juin 2024 : Agi Lille - Lille (France) 4-5 juillet 2024 : Sunny Tech - Montpellier (France) 19-20 septembre 2024 : API Platform Conference - Lille (France) & Online 7-11 octobre 2024 : Devoxx Belgium - Antwerp (Belgium) 10-11 octobre 2024 : Volcamp - Clermont-Ferrand (France) 10-11 octobre 2024 : Forum PHP - Marne-la-Vallée (France) 17-18 octobre 2024 : DevFest Nantes - Nantes (France) 6 novembre 2024 : Master Dev De France - Paris (France) Nous contacter

    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/

  • Dans cet Ă©pisode, Katia, Arnaud et Emmanuel discutent les nouvelles de cette fin 2023. Le gatherer dans les stream Java, les exceptions, JavaScript dans la JVM, recherche vectorielle, coĂ»t du cloud, Gemini, Llama et autres animaux fantastiques et pleins d’outils sympathiques pour fĂȘter la fin de l’annĂ©e.

    Enregistré le 15 décembre 2023

    TĂ©lĂ©chargement de l’épisode LesCastCodeurs-Episode-304.mp3

    News

    Aide Les Cast Codeurs et remplis un petit formulaire pour nous guider l’annĂ©e prochaine https://lescastcodeurs.com/sondage

    Langages

    Avec JEP 461, arrivĂ©e dans en preview dans Java 22 de la notion de “gatherer” pour les streams https://groovy.apache.org/blog/groovy-gatherers

    dans cet article de Paul King, de l’équipe Groovy, il montre et contraste ce que l’on pouvait faire en Groovy depuis des annĂ©es, comme des sliding windows, par exemple explique l’approche des gatherers avec ses opĂ©rations intermĂ©diaires gatherer sont des operations intermediaires custom qui prennent un etat et le prochain element pour decided quoi faire, et meme changer le stream d’elements suivants (en publier) (via la fonction integrate certains peuvent permettre de combiner les resultats intermediaires (pour paralleliser) Examples : fenetres de taille fixe, fenettres glissantes

    Joe Duffy, qui est CEO de Pulumi, mais qui avait travaillé chez Microsoft sur le project Midori (un futur OS repensé) parle du design des exceptions, des erreurs, des codes de retour https://joeduffyblog.com/2016/02/07/the-error-model/

    Il compare les codes d’erreurs, les exceptions, checked et non-checked il separe les bugs des erreurs attendues (bugs doivent arreter le process) il raconte l’histoire des unchecked exception et leurs problemes et des checked exceptopns et poourquoi les developeurs java les detestent (selon lui) long article maisn interessant dans ses retours mais lon je ne suis pas allĂ© au bout :smile:

    AprĂšs la disparition de Nashorn dans le JDK, on peut se tourner vers le projet Javet https://www.caoccao.com/Javet/index.html

    Javet permet d’intĂ©grer JavaScript avec le moteur V8 Mais aussi carrĂ©ment Node.js c’est super comme capacitĂ© car on a les deux mielleurs moteurs, par contre le support hors x86 est plus limitĂ© (genre arm sous windows c’est non) Librairies

    Une partie de l’équipe Spring se fait lourder aprĂšs le rachat effectif de Broadcom https://x.com/odrotbohm/status/1729231722498425092?s=20

    peu d’info en vrai à part ce tweet mais l’acquisition Broadcome n’a pas l’air de se faire dans le monde des bisounours

    Marc Wrobel annonce la sortie de JBanking 4.2.0 https://www.marcwrobel.fr/sortie-de-jbanking-4-2-0

    support de Java 21 possibilitĂ© de gĂ©nĂ©rer alĂ©atoirement des BIC amĂ©lioration de la gĂ©nĂ©ration d’IBAN jbanking est une bibliotheque pour manipuler des structures typiques des banques comme les IBAN les BIC, les monnaies, les SEPA etc.

    Hibernate Search 7 est sorti https://in.relation.to/2023/12/05/hibernate-search-7-0-0-Final/

    Support ElasticSearch 8.10-11 et openSearch 2.10-11 RebasĂ© sur Lucerne 9.8 support sur Amazon OpenSearch Serverless (experimental) attention sous ensemble de fonctionnalitĂ©s sur Serverless, c’est un API first search cluster vendu a la lambda En lien aussi sur la version 7.1 alpha1

    Hibernate ORM 6.4 est sorti https://in.relation.to/2023/11/23/orm-640-final/

    support pour SoftDelete (colonne marquant la suppression) support pour les operations vectorielles (support postgreSQL initialement) les fonctions vectorielles sont particuliĂšrement utilisĂ©es par l’IA/ML Ă©vĂ©nement spĂ©cifiques JFR

    IntĂ©gration de citrus et Quarkus pour les tests d’intĂ©grations de pleins de protocoles et formats de message https://quarkus.io/blog/testing-quarkus-with-citrus/

    permet de tester les entrees / sorties attendues de systÚmes de messages (HTTP, Kafka, serveur mail etc) top pour tester les application Event Driven pas de rapport mais Quarkus 3.7 ciblera Java 17 (~8% des gens utilisaient Java 11 dans les builds qui ont activé les notifications)

    Hibernate Search 7.1 (dev 7.1.0.Alpha1) avec derniĂšre version de Lucene (9.8), Infinispan rajoute le support pour la recherche vectorielle.

    https://hibernate.org/search/releases/7.1/ https://infinispan.org/blog/2023/12/13/infinispan-vector-search Hibernate Search permet maintenant la recherche vectorielle La derniÚre version est intégrée en Infinispan 15 (dev) qui sortira La recherche vectoriolle et stockage de vecteurs, permettent convertir Infinispan en Embedding Store (langchain) Cloud

    Comment choisir sa region cloud https://blog.scottlogic.com/2023/11/23/conscientious-cloud-pick-your-cloud-region-deliberately.html

    pas si simple le coĂ»t la securitĂ© lĂ©gale de vos donnĂ©es la consommation carbone de la rĂ©gion choisie (la France est top, la Pologne moins) la latence vs oĂč sont vos clients les services supportĂ©s Web

    Vers une standardisation des Webhooks ? https://www.standardwebhooks.com/

    Des gens de Zapier, Twilio, Ngrok, Kong, Supabase et autres, se rejoignent pour essayer de standardiser l’approche des Webhooks La spec est open source (Apache) sur Github https://github.com/standard-webhooks/standard-webhooks/blob/main/spec/standard-webhooks.md Les objectifs sont la sĂ©curitĂ©, la reliabilitĂ©, l’interopĂ©rabilitĂ©, la simplicitĂ© et la compatibilitĂ© (ascendante / descendante) sans la spec, chaque webhook est different dans son comportement et donc les clients doivent s’adapter dans la sematique et les erreurs etc la (meta-) structure de la payload, la taille, la securisation via signature (e.g. hmac), les erreurs (via erreurs HTTP), etc Data et Intelligence Artificielle

    Google annonce Gemini, son nouveau Large Language Model https://blog.google/technology/ai/google-gemini-ai/#sundar-note

    modĂšle multimodal qui peut prendre du texte, en entrĂ©e, mais aussi des images, du son, des vidĂ©os d’aprĂšs les benchmarks, il est largement aussi bon que GPT4 plusieurs tailles de modĂšles disponible : Nano pour ĂȘtre intĂ©grĂ© aux mobiles, Pro qui va ĂȘtre utilisĂ© dans la majeure partie des cas, et Ultra pour les besoins de rĂ©flexion les plus avancĂ©s Android va rajouter aussi des librairies AICore pour utiliser Gemini Nano dans les tĂ©lĂ©phones Pixel https://android-developers.googleblog.com/2023/12/a-new-foundation-for-ai-on-android.html Gemini Pro va ĂȘtre disponible dans Bard (en anglais et dans 170 pays, mais l’Europe va devoir attendre un petit peu pour que ce soit dispo) Gemini Ultra devrait aussi rejoindre Bard, dans une version Ă©tendue https://blog.google/products/bard/google-bard-try-gemini-ai/ Gemini va ĂȘtre intĂ©grĂ© progressivement dans plein de produits Google DeepMind parlant de Gemini https://deepmind.google/technologies/gemini/#introduction Un rapport de 60 pages sur Gemini https://storage.googleapis.com/deepmind-media/gemini/gemini_1_report.pdf Gemini a permis aussi de pouvoir dĂ©velopper une nouvelle version du modĂšle AlphaCode qui excelle dans les compĂ©titions de coding https://storage.googleapis.com/deepmind-media/AlphaCode2/AlphaCode2_Tech_Report.pdf Liste de petites vidĂ©os sur YouTube avec des interviews et dĂ©monstrations des capacitĂ©s de Gemini https://www.youtube.com/playlist?list=PL590L5WQmH8cSyqzo1PwQVUrZYgLcGZcG malheureusement certaines des annonces sont un peu fausse ce qui a amenĂ© un discrĂ©dit (non du) sur Gemini par exemple la video “aspirationelle” Ă©tait vendue comme du rĂ©el mais ce n’est pas le cas. et ultra n’est pas disponible encore ausso la comparaison de ChatGPT sur la page (initialement au moins) comparait des choux et des carottes, meme si le papier de recherche Ă©tait correct

    Avec la sortie de Gemini, Guillaume a Ă©crit sur comment appeler Gemini en Java https://glaforge.dev/posts/2023/12/13/get-started-with-gemini-in-java/

    Gemini est multimodĂšle, donc on peut passer aussi bien du texte que des images, ou mĂȘme de la vidĂ©o Il y a un SDK en Java pour interagir avec l’API de Gemini

    Facebook, Purple Llama https://ai.meta.com/blog/purple-llama-open-trust-safety-generative-ai/

    Opensource https://ai.meta.com/llama/ dans l’optique des modeles GenAI ouverts, Facebook fournit des outils pour faire des IA responsables (mais pas coupables :wink: ) notament des benchmarks pour evaluler la suretĂ© et un classifier de suretĂ©, par exemple pour ne pas generer du code malicieux (ou le rendre plus dur) llama purple sera un projet parapluie D’ailleurs Meta IBM, Red Hat et pleins d’autres ont annoncĂ© l’AI Alliance pour une AI ouverte et collaborative entre acadĂ©mique et industriels. Sont notammenrt absent Google, OpenAI (pas ouvert) et Microsoft Juste une annouce pour l’instant mais on va voir ce que ces acteurs de l’AI Alliance feront de concret il y a aussi un guide d’utilisateur l’usage IA responsable (pas lu)

    Apple aussi se met aux librairies de Machine Learning https://ml-explore.github.io/mlx/build/html/index.html

    MLX est une librairie Python qui s’inspire fortement de NumPy, PyTorch, Jax et ArrayFire Surtout, c’est dĂ©veloppĂ© spĂ©cifiquement pour les Macs, pour tirer au maximum parti des processeurs Apple Silicon Dans un des repos Github, on trouve Ă©galement des exemples qui font tourner nativement sur macOS les modĂšles de Llama, de Mistral et d’auters https://github.com/ml-explore/mlx-examples non seulement les Apple Silicon amis aussi la memoire unifiee CPU/GPU qui est une des raisons clĂ©s de la rapiditĂ© des macs

    Faire tourner Java dans un notebook Jupyter https://www.javaadvent.com/2023/12/jupyter-notebooks-and-java.html

    Max Andersen explore l’utilisation de Java dans les notebooks Jupyter, au lieu du classique Python il y a des kernels java selon vos besoins mais il faut les installer dans la distro jupyter qu’on utilise et c’est la que jbang installable via pip vient a la rescousse il installe automatiquement ces kernels en quelques lignes Outillage

    Sfeir liste des jeux orientés développeurs https://www.sfeir.dev/tendances/notre-selection-de-jeux-de-programmation/

    parfait pour NoĂ«l mais c’est pour ceux qui veulent continuer a challenger leur cerveau aprĂšs le boulot jeu de logique, jeu de puzzle avec le code comme forme, jeu autour du machine learning, jeu de programmation assembleur

    Les calendriers de l’Avent sont populaires pour les dĂ©veloppeurs ! En particulier avec Advent of Code https://adventofcode.com/

    Mais il y a aussi l’Advent of Java https://www.javaadvent.com/ Ou un calendrier pour apprendre les bases de SVG https://svg-tutorial.com/ Le calendrier HTML “hell” https://www.htmhell.dev/adventcalendar/ qui parle d’accessibilitĂ©, de web components, de balises meta, de toutes les choses qu’on peut trĂšs bien faire en HTML/CSS sans avoir besoin de JavaScript Pour les dĂ©veloppeurs TypeScript, il y a aussi un calendrier de l’Avent pour vous ! https://typehero.dev/aot-2023

    Un super thread de Clara Dealberto sur le thùme de la “dataviz” (data visualization) https://twitter.com/claradealberto/status/1729447130228457514

    Beaucoup d’outil librement accessibles sont mentionnĂ©s pour faire toutes sortes de visualisations (ex. treemap, dendros, sankey
) mais aussi pour la cartographie Quelques ressources de site qui conseillent sur l’utilisation du bon type de visualisation en fonction du problĂšme et des donnĂ©es que l’on a notemment celui du financial time qui tiens dans une page de PDF Bref c’est cool mais c’est long a lire

    Une petite liste d’outils sympas - jc pour convertir la sortie de commandes unix en JSON https://github.com/kellyjonbrazil/jc - AltTab pour macOS pour avoir le mĂȘme comportement de basculement de fenĂȘtre que sous Windows https://alt-tab-macos.netlify.app/ - gron pour rendre le JSON grep-able, en transformant chaque valeur en ligne ressemblant Ă  du JSONPath https://github.com/tomnomnom/gron - Marker, en Python, pour transformer des PDF en beau Markdown https://github.com/VikParuchuri/marker - n8n un outil de workflow open source https://n8n.io/

    gron en fait montre des lignes avec des assignments genre jsonpath = value et tu peux ungroner apres pour revenir a du json Marker utilise du machine learning mais il halklucine moins que nougat (nous voilà rassuré)

    Docker acquiert Testcontainers https://techcrunch.com/2023/12/11/docker-acquires-atomicjar-a-testing-startup-that-raised-25m-in-january/

    Annonce par AtomicJar https://www.atomicjar.com/2023/12/atomicjar-is-now-part-of-docker/ Annonce par Docker https://www.docker.com/blog/docker-whale-comes-atomicjar-maker-of-testcontainers/ Architecture

    Comment implémenter la reconnaissance de chanson, comme Shazam https://www.cameronmacleod.com/blog/how-does-shazam-work

    il faut d’abord passer en mode frĂ©quence avec des transformĂ©es de Fourrier pour obtenir des spectrogrammes puis crĂ©er une sorte d’empreinte qui rassemble des pics de frĂ©quences notables Ă  divers endroits de la chanson d’associer ces pics pour retrouver un enchainement de tels pics de frĂ©quence dans le temps l’auteur a partagĂ© son implĂ©mentation sur Github https://github.com/notexactlyawe/abracadabra/blob/e0eb59a944d7c9999ff8a4bc53f5cfdeb07b39aa/abracadabra/recognise.py#L80 Il y avait Ă©galement une trĂšs bonne prĂ©sentation sur ce thĂšme par Moustapha Agack Ă  DevFest Toulouse https://www.youtube.com/watch?v=2i4nstFJRXU les pics associĂ©s sont des hash qui peut etre comparĂ©s et le plus de hash veut dire que les chansons sont plus similaires MĂ©thodologies

    Un mémo de chez ThoughtWorks à propos du coding assisté par IA https://martinfowler.com/articles/exploring-gen-ai.html#memo-08

    Avec toute une liste de questions Ă  se poser dans l’utilisation d’un outil tel que Copilot Il faut bien rĂ©aliser que malheureusement, une IA n’a pas raison Ă  100% dans ses rĂ©ponses, et mĂȘme plutĂŽt que la moitiĂ© du temps, donc il faut bien mettre Ă  jour ses attentes par rapport Ă  cela, car ce n’est pas magique La conclusion est intĂ©ressante aussi, en suggĂ©rant que grosso modo dans 40 Ă  60% des situations, tu peux arriver Ă  40 Ă  80% de la solution. Est-ce que c’est Ă  partir de ce niveau lĂ  qu’on peut vraiment gagner du temps et faire confiance Ă  l’IA ? Ne perdez pas trop de temps non plus Ă  essayer de convaincre l’IA de faire ce que vous voulez qu’elle fasse. Si vous n’y arrivez pas, c’est sans doute parce que l’IA n’y arrivera mĂȘme pas elle mĂȘme ! Donc au-delĂ  de 10 minutes, allez lire la doc, chercher sur Google, etc. notamment, faire genrer les tests par l’IA dans al foulĂ©e augmente les risques surtout si on n’est pas capable de bien relire le code si on introduit un choix de pattern genre flexbox en CSS, si c’est sur une question de sĂ©curiter, vĂ©rifier (ceinture et bretelle) est-ce le framework de la semaine derniĂšre? L’info ne sera pas dans le LLM (sans RAG)

    Quelles capacités sont nécessaires pour déployer un projet AI/ML https://blog.scottlogic.com/2023/11/22/capabilities-to-deploy-ai-in-your-organisation.html

    C’est le MLOps et il y a quelques modĂšles end to end Google, IBM mais vu la diversitĂ© des organisations, c’est difficile a embrasser ces versions completes ML Ops est une mĂ©tier, data science est un metier, donc intĂ©grer ces competences sachez gĂ©rer votre catalogue de donnĂ©es Construire un process pour tester vos modĂšles et continuellement La notion de culture de la recherche et sa gestion (comme un portefeuille financier, accepter d’arrĂȘter des experience etc) la culture de la recherche est peu prĂ©sente en engineering qui est de construire des choses qui foncitonnent c’est un monde pre LLM

    Vous connaissez les 10 dark patterns de l’UX ? Pour vous inciter à cliquer ici ou là, pour vous faire rester sur le site, et plus encore https://dodonut.com/blog/10-dark-patterns-in-ux-design/

    Parmi les dark patterns couverts Confirmshaming Fake Urgency and the Fear of Missing Out Nagging Sneaking Disguised Ads Intentional Misdirection The Roach Motel Pattern Preselection Friend Spam Negative Option Billing or Forced Continuity L’article conclut avec quelques pistes sur comment Ă©viter ces dark patterns en regardant les bons patterns de la concurrence, en testant les interactions UX, et en applicant beaucoup de bon sens ! les dark patterns ne sont pas des accidents, ils s’appuient sur la psychologie et sont mis en place specifiquement

    Comment choisir de belles couleurs pour la visualisation de données ? https://blog.datawrapper.de/beautifulcolors/

    PlutĂŽt que de penser en RGB, il vaut mieux se positionner dans le mode Hue Saturation Brightness Plein d’exemples montrant comment amĂ©liorer certains choix de couleurs Mieux vaut Ă©viter des couleurs trop pures ou des couleurs trop brillantes et saturĂ©es Avoir un bon contraste Penser aussi aux daltoniens ! j’ai personnellement eu toujours du mal avec saturationm vs brightness faire que les cloueirs en noir et blanc soient separees evant de le remettre (en changeant la brightness de chaque couleur) ca aide les daltoniens eviter les couleurs aux 4 coins amis plutot des couleurs complementaires (proches) rouge orange et jaune (non saturĂ©) et variations de bleu sont pas mal les couleurs saturĂ©es sont aggressives et stressent les gens

    Pourquoi vous devriez devenir Engineering Manager? https://charity.wtf/2023/12/15/why-should-you-or-anyone-become-an-engineering-manager/

    L’article parle de l’évolution de la perception de l’engineering management qui n’est plus dĂ©sormais le choix de carriĂšre par dĂ©faut pour les ingĂ©nieurs ambitieux. Il met en Ă©vidence les dĂ©fis auxquels les engineering managers sont confrontĂ©s, y compris les attentes croissantes en matiĂšre d’empathie, de soutien et de compĂ©tences techniques, ainsi que l’impact de la pandĂ©mie de COVID-19 sur l’attrait des postes de management. L’importance des bons engineering mnanagers est soulignĂ©e, car ils sont considĂ©rĂ©s comme des multiplicateurs de force pour les Ă©quipes, contribuant de maniĂšre significative Ă  la productivitĂ©, Ă  la qualitĂ© et au succĂšs global dans les environnements organisationnels complexes. L’article fournit des raisons pour lesquelles quelqu’un pourrait envisager de devenir Engineering Manager, y compris acquĂ©rir une meilleure comprĂ©hension de la façon dont les entreprises fonctionnent, contribuer au mentorat et influencer les changements positifs dans la dynamique des Ă©quipes et les pratiques de l’industrie. Une perspective est prĂ©sentĂ©e, suggĂ©rant que devenir Engineering manager peut conduire Ă  la croissance personnelle et Ă  l’amĂ©lioration des compĂ©tences de vie, telles que l’autorĂ©gulation, la conscience de soi, la comprĂ©hension des autres, l’établissement de limites, la sensibilitĂ© Ă  la dynamique du pouvoir et la maĂźtrise des conversations difficiles. L’article encourage Ă  considĂ©rer la gestion comme une occasion de dĂ©velopper et de porter ces compĂ©tences pour la vie. SĂ©curitĂ©

    LogoFAIL une faille du bootloader de beaucoup de machines https://arstechnica.com/security/2023/12/just-about-every-windows-and-linux-device-vulnerable-to-new-logofail-firmware-attack/

    en gros en changeant les eimages qu’on voit au boot permet d’executer du code arbitraire au tout debuit de la securisation du UEFI (le boot le plus utilisĂ©) donc c’est game over parce que ca demarre avant l’OS c’est pas une exploitation a distance, il faut etre sur la machine avec des droits assez elevĂ©s deja mais ca peut etre la fin de la chaine d’attaque et comme d’hab un interpreteur d’image est la cause de ces vulnerabilitĂ©s ConfĂ©rences

    L’IA au secours de confĂ©rences tech: rajoute des profile tech femme comme speaker au programme pour passer le test diversitĂ© online via des profiles fake. https://twitter.com/GergelyOrosz/status/1728177708608450705 https://www.theregister.com/2023/11/28/devternity_conference_fake_speakers/ https://www.developpez.com/actu/351260/La-conference-DevTernity-sur-la-technologie-s-e[
]s-avoir-cree-de-fausses-oratrices-generees-automatiquement/

    j’avais lu le tweet du createur de cette conf qui expliquait que c’etait des comptes de tests et que pris dans le rush ils avaient oubliĂ© de les enlever mais en fait les comptes de tests ont des profils “Actifs” sur le reseaux sociaux apparemment donc c’était savamment orchestrĂ© Au final beaucoup de speakers et des sponsors se desengagent

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

    31 janvier 2024-3 février 2024 : SnowCamp - Grenoble (France) 1 février 2024 : AgiLeMans - Le Mans (France) 6 février 2024 : DevFest Paris - Paris (France) 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) 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 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) 19 mars 2024 : OpenTofu Day Europe - Paris (France) 19 mars 2024 : Platform Engineering Day - Paris (France) 19 mars 2024 : ThanosCon Europe - Paris (France) 19-21 mars 2024 : IT & Cybersecurity Meetings - Paris (France) 19-22 mars 2024 : KubeCon + CloudNativeCon Europe 2024 - Paris (France) 26-28 mars 2024 : Forum INCYBER Europe - Lille (France) 28-29 mars 2024 : SymfonyLive Paris 2024 - Paris (France) 4-6 avril 2024 : Toulouse Hacking Convention - Toulouse (France) 17-19 avril 2024 : Devoxx France - Paris (France) 18-20 avril 2024 : Devoxx Greece - Athens (Greece) 25-26 avril 2024 : MiXiT - Lyon (France) 25-26 avril 2024 : Android Makers - Paris (France) 8-10 mai 2024 : Devoxx UK - London (UK) 16-17 mai 2024 : Newcrafts Paris - Paris (France) 24 mai 2024 : AFUP Day Nancy - Nancy (France) 24 mai 2024 : AFUP Day Poitiers - Poitiers (France) 24 mai 2024 : AFUP Day Lille - Lille (France) 24 mai 2024 : AFUP Day Lyon - Lyon (France) 2 juin 2024 : PolyCloud - Montpellier (France) 6-7 juin 2024 : DevFest Lille - Lille (France) 6-7 juin 2024 : Alpes Craft - Grenoble (France) 27-28 juin 2024 : Agi Lille - Lille (France) 4-5 juillet 2024 : Sunny Tech - Montpellier (France) 19-20 septembre 2024 : API Platform Conference - Lille (France) & Online 7-11 octobre 2024 : Devoxx Belgium - Antwerp (Belgium) 10-11 octobre 2024 : Volcamp - Clermont-Ferrand (France) 10-11 octobre 2024 : Forum PHP - Marne-la-Vallée (France) 17-18 octobre 2024 : DevFest Nantes - Nantes (France) Nous contacter

    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/

  • Ce qui a commencĂ© comme un crowdcast a fini en interview de Julien Viet sur Vert.x 4.5.

    Enregistré le 23 novembre 2023

    TĂ©lĂ©chargement de l’épisode LesCastCodeurs-Episode-303.mp3

    Interview Ta vie ton oeuvre (prĂ©sentation de l’interviewĂ©)

    Le site de Julien Viet
    X (ancien twitter)

    Vert.x 4.5

    Vert.X 4.5 est sorti https://vertx.io/blog/whats-new-in-vert-x-4-5/

    support des thread virtuels qui permet d’écrire le code synchrone pour des cas complexes et utiliser les thread locaux dans ces cas la. Cela ne remplacement pas le code de process des Ă©vĂ©nements le code put faire des future await qui ne bloqueront pas le thread principal connection SQL dynamique: quand le host change dynamiquement dans l’application support des proxies de niveau 7 pour les clients SQL rotation certificats a chaud des builders (HTTP, SQL connection) extensions pour utiliser les coroutines kotlin Nous contacter

    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/

  • Dans cet Ă©pisode, Emmanuel, Guillaume et Katia abordent les nouveautĂ©s Java, le lancement du langage Misty par Douglas Crockford, l’arrivĂ©e de WasmGC dans Chrome, la sortie de Spring Framework 6.1, des Ă©volutions dans les bibliothĂšques comme Vert.x 4.5, et des conseils sur la crĂ©ation de langages de programmation. L’épisode couvre Ă©galement des actualitĂ©s dans les domaines de l’infrastructure avec le premier ordinateur cloud commercial par Oxide, des annonces sur les frameworks web comme Angular v17, des rĂ©flexions sur les architectures monolithiques versus microservices, et sans oublier le soap OpĂ©ra du moins de novembre avec OpenAI en vedette.

    Enregistré le 23 novembre 2023

    TĂ©lĂ©chargement de l’épisode LesCastCodeurs-Episode-302.mp3

    News Langages

    Recap Javaiste https://www.infoq.com/news/2023/10/java-news-roundup-oct09-2023

    la JEP 454 sur l’appel a la memoire et les API dites natives passera en target pour JDK 22 avec une façon d’ajouter les appels de mĂ©thodes restreintes sans le flag --enable-native-access (via un manifeste dans le JAR) JDK 22 prĂ©vu pour mars 2024 Spring Framework 6.1 est sorti (RC2) Tomcat a quelques CVE donc mettez Ă  jour

    Douglas Crockford, le papa de JSON, sort un nouveau langage dénommé Misty https://www.crockford.com/misty/

    Utilise des caractÚres unicodes pour définir des chaßnes de caractÚres avec des chevrons, ou pour les opérateurs de base (comparison, and/or) Support de programmation concurrente avec les actors

    WasmGC arrive dans Chrome, par l’intermĂ©diaire de v8 https://v8.dev/blog/wasm-gc-porting

    historiquement il fallait compiler le port du langage lui meme (et donc son GC) Maintenant on peut compiler le code (java) dans des primitives Wasm et WasmGC Java python et co ont des VM qui sont compilĂ©es pour toutes les architecture cibles (ARM, x86 etc) y compris le JIT, AOT donc on peut dĂ©finir comme backend WASM lui meme, c’est l’approche classique WasmGC dĂ©finit des structs et des array avec des champs dans lesquels on peut crĂ©er des instances, lire/Ă©crire les champs, caster dans d’autres types et ces objects sont managĂ©s par WasmGC lui meme. on a un systĂšme de type du coup et des relations entre ces types Donc on reprĂ©senterait les objets Java en objets Wasm avantage et inconvenient des deux approches tous les codes de management d’objets ne sont plus nĂ©cessaires (y compris malloc) -> gain memoire en mode GC dans le langage les liens object langage objets Wasm sont inefficaces car le lien langage -> wasm dĂ©finissent l’instance entiĂšre Wasm, donc des gros cycles d’objets ne sont pas GCed Wasm sandbox empĂȘche d’inspecter la stack et d’éliminer des objets plus efficacement, et il n’y a pas d’API pour aider donc seul WasmGC peut utiliser cet avantage. un seul GC a des avantages: meilleure gestion de la pression memoire mais on rĂ©utilise le GC du web (genre V8) vs celui de Java. (c’est moins un problĂšme pour les autres langages avec des gc moins sophistiquĂ©s) fragmentation memoire, est plus proĂ©minent quand on a des modules de type C qui peur garder des gros blocs memoire “quasi vide” (opaque). c’est managĂ© plus finement en WasmGC SĂ©mantiques de langage est plus dur a achevĂ© vu qu’on map en concepts WasmGC, il y a de la transformation. sĂ©mantiques chaine de caractĂšre, nombres, etc peuvent ĂȘtre un peu ajustĂ© un port utilisant WasmGC n’est pas une rĂ©Ă©criture de tout mais un gros morceau de la VM du langage cible est a rĂ©Ă©crire WasmGC peut optimiser comme les patterns en JVM mais en WasmMVP c’est la toolchain avant qui fait le travail d’optimisation (e.g. LLVM) donc avec WasmGC, la toolchain fera les optimisations de langage et WasmGC fera les optimisations low level (inlining, constant propagation, dead code elimination) puis d’autres optimisation specific a WasmGC comme les escape analysis, et ils parlent d’optimisations dans V8 pour approcher les appels dynamique a la Java (pas dĂ©fini a la compilation)

    Ecrire un langage de programmation
 ça prend du temps
 beaucoup de temps https://yorickpeterse.com/articles/a-decade-of-developing-a-programming-language/

    Évitez le gradual typing Évitez le boostrapping de votre compilateur Évitez d’écrire votre propre gĂ©nĂ©rateur de code, linker, etc Évitez de tergiverser trop longtemps sur la syntaxe La prise en charge multiplateforme est un dĂ©fi Les livres sur les compilateurs compilateurs ne valent pas l’argent que vous dĂ©penserez dessus Faire grandir et Ă©voluer un langage de programmation est difficile La meilleure suite de tests est une application rĂ©elle Ne privilĂ©giez pas les performances sur les fonctionnalitĂ©s. Librairies

    Spring Boot rajoute le hot reload des certificats SSL pour embedded Netty et Tomcat https://spring.io/blog/2023/11/07/ssl-hot-reload-in-spring-boot-3-2-0

    utilisez reload-on-update: true et écoute les changements de fichiers pas mal dans les déploiements non immuables (pas comme kubernetes)

    VertX 4.5 est sorti https://vertx.io/blog/whats-new-in-vert-x-4-5/

    support des thread virtuels qui permet d’écrire le code synchrone pour des cas complexes et utiliser les thread locaux dans ces cas la. Cela ne remplacement pas le code de process des Ă©vĂ©nements le code put faire des future await qui ne bloqueront pas le thread principal connection SQL dynamique: quand le host change dynamiquement dans l’application support des proxies de niveau 7 pour les clients SQL rotation certificats a chaud des builders (HTTP, SQL connection) extensions pour utiliser les coroutines kotlin

    Integration declarative de Langchain4j dans Quarkus https://quarkus.io/blog/quarkus-meets-langchain4j/

    Infrastructure

    Oxide sort le premier ordinateur cloud disponible commercialement https://oxide.computer/blog/the-cloud-computer

    pas facile de sĂ©parer le buzz de la rĂ©alitĂ© on dirait un ordi purpose built avec l’efficience et le cote compact en tete ils poussent contre le mode location uniquement des cloud providers en gros inspire des cloud providers qui construisent leurs propres ordis (et meme CPUs maintenant !) construit le hardware et le software en co optimisation c’est un rack entier, peu de bruit de ventilateur pas de cable (seul E/S du rack) donc ils ont leurs propres switch compliquĂ© de diffĂ©rencier l’avantage du dĂ©savantage

    Les leçons tirées de 20 de Site Reliability Engineering par Google https://sre.google/resources/practices-and-processes/twenty-years-of-sre-lessons-learned/

    Le risque d’une mitigation doit ĂȘtre proportionnĂ© Ă  la gravitĂ© de la panne Les mĂ©canismes de rĂ©cupĂ©ration doivent ĂȘtre entiĂšrement testĂ©s avant une urgence Canarisez tous les changements Avoir un “gros bouton rouge” Les tests unitaires ne suffisent pas, des tests d’intĂ©gration sont Ă©galement nĂ©cessaires CANAUX DE COMMUNICATION ! ET CANAUX DE SECOURS !! ET DES SAUVEGARDES POUR CES CANAUX DE SECOURS !!! Modes de dĂ©gradation intentionnelle des performances Tester la rĂ©silience aux catastrophes Automatisez vos mitigations RĂ©duisez le temps entre les dĂ©ploiements, afin de diminuer la probabilitĂ© que le dĂ©ploiement tourne mal Une seule version matĂ©rielle globale est un point de dĂ©faillance unique

    Karpenter une evolution de autoscaler pour les cluster kubernetes https://blog.ippon.fr/2023/11/07/mettez-a-lechelle-vos-clusters-kubernetes-de-maniere-efficace-et-faites-des-economies-avec-karpenter/

    fonctionne uniquement pour AWS aujourd’hui et un projet AWS donc a voir la portabilitĂ© permet d’ajouter ou de supprimer des noeuds au cluster kubernetes en dynamique pour right sizer ses clusters bypass les API kube pour la creation d’instance et utilise les APIs AWS EC2 directement permet des noeuds hĂ©tĂ©rogĂšnes (pas homogĂšne comme autoscaler) et se right size rapidement (e.g. 30s pour Ă©teindre un noeud) besoin d’applis cloud native par elles vont ĂȘtre baladĂ©es Web

    Deno! https://www.infoq.com/news/2023/10/deno-jupyter-integration

    Dev experience, jupyter notebook integration AmĂ©liorations sur Visual Studio Code extension (compatible avec NodeJS) Exec native sur Jupyter de javascript et typescript permet d’effectuer des analyses de donnĂ©es, construire des modĂšles d’apprentissage automatique et gĂ©nĂ©rer des rapports interactifs avec Deno Visualisation dynamiques avec D3 dans le notebook Connection Ă  Deno KV Plusieurs amĂ©liorations sur le testing, APIs etc

    Lancement du nouveau site angular.dev et de la version v17 du framework https://blog.angular.io/announcing-angular-dev-1e1205fa3039

    nouvelle doc, nouveaux tutoriels, et bac Ă  sable un nouveau logo aussi mais cette version v17 est la continuation d’Angular, pas une toute nouvelle version qui casse tout le nouveau “control flow” devient GA, et propose des conditionals (if, else
) https://blog.angular.io/meet-angulars-new-control-flow-a02c6eee7843 le blog d’Angular mentionne les nouveautĂ©s, au-delĂ  du revamp de la documentation https://blog.angular.io/introducing-angular-v17-4d7033312e4b CĂ©dric Exbrayat mets les mains dans le cambouis et couvre les nouveautĂ©s techniques dans le blog des Ninja Squad https://blog.ninja-squad.com/ Et les nouveautĂ©s aussi du cĂŽtĂ© de la CLI https://blog.ninja-squad.com/2023/11/09/angular-cli-17.0/ beaucoup de focus sur l’apprentissage et la manipulation concrete avec le bac a sable et les tutoriaux le site lui meme est maintenant open source (il ne l’était pas avant?) le logo est nouveau et adaptable par les communautĂ©s Outillage

    Il est possible de signer et notariser des applications pour macOS sur des machines non-Apple https://gregoryszorc.com/blog/2022/08/08/achieving-a-completely-open-source-implementation-of-apple-code-signing-and-notarization/

    implémenté en Rust pratique pour son pipeline CI/CD basé sur Linux a priori, il y a des outils similaires pour le monde Windows, qui permet de signer sur une machine non-Windows https://github.com/mtrojnar/osslsigncode

    Lors de son Github Universe, Copilot fait le show ! https://github.blog/2023-11-08-universe-2023-copilot-transforms-github-into-the-ai-powered-developer-platform/

    Copilot Chat sera GA en dĂ©cembre, il utilise GPT4, il permet de guider le dĂ©veloppeur, de gĂ©nĂ©rer du code, de dĂ©tecter des erreurs et aide Ă  les corriger, d’expliquer le code IntĂ©gration Ă  venir de Copilot Chat dans les IDEs de JetBrains Copilot Chat va ĂȘtre intĂ©grer sur github.com et dans l’appli mobile aussi Introduction de GitHub Copilot Enterprise pour les sociĂ©tĂ©s, qui permettra de spĂ©cialisĂ© le modĂšle sur le code de l’entreprise IntĂ©gration de Copilot ans Workspace, donc quand on voudra adresser un bug, crĂ©er un pull request, Copilot pourra nous aider Ă©tape par Ă©tape, suggĂ©rer un plan d’action Copilot Enterprise permettra de faire des recherches avec le contexte entier du code de l’entreprise, donc idĂ©alement meilleur que le focus sur un repo de Copilot

    Un guide sur OpenRewrite https://feeds.feedblitz.com//819402521/0/baeldungA-Guide-to-OpenRewrite

    permet de refactorer le code via des rĂšgles mise a jour de dependences, enlever usage d’api dĂ©prĂ©ciĂ©es, migration d’une bibliothĂšque a une autre, etc migration java, migration framework, transformations spĂ©cifiques a votre sociĂ©tĂ© OpenRewrite vient avec un Ă©cosystĂšme de recettes intĂ©gration via maven ou gradle la suite montre des examples de migrations Architecture

    Article interessant sur Monolithe vs Microservices ! https://www.infoq.com/articles/monolith-versus-microservices/

    Le dĂ©bat monolithe vs microservices. Les monolithes reviennent, par exemple spring-modulith https://spring.io/projects/spring-modulith Les microservices sont la solution Ă  la complexitĂ© plutĂŽt que la cause de celle-ci. Toutes les applications deviendront complexes ; au-delĂ  d’un certain point, les microservices nous aideront Ă  gĂ©rer cette complexitĂ©. Les microservices comportent des coĂ»ts et des avantages. Si les avantages ne l’emportent pas sur les coĂ»ts, vous n’aurez pas une expĂ©rience positive avec les microservices. Nous pouvons arrĂȘter notre transition vers les microservices quelque part au milieu du spectre, ce que j’aime appeler le modĂšle hybride. À ce stade, nous pouvons avoir quelques gros services mĂ©langĂ©s Ă  quelques petits services. Nous pouvons avoir le meilleur des deux mondes : la simplicitĂ© et la commoditĂ© du monolithe combinĂ©es Ă  la flexibilitĂ© et Ă  la scalabilitĂ© des microservices. Il n’y a pas de choix binaire entre monolithique et microservices. En rĂ©alitĂ©, il existe un spectre de possibilitĂ©s entre les deux. Si vous vous ĂȘtes fixĂ© Ă  l’une des extrĂ©mitĂ©s du spectre, vous passez Ă  cĂŽtĂ© de la grande variĂ©tĂ© d’architectures intermĂ©diaires. Nous devrions cesser de parler de monolithe contre microservices et plutĂŽt avoir un dĂ©bat plus nuancĂ© sur la taille appropriĂ©e des services. les microservices mettent sur le devant de la scene la complexification du systĂšme, les monolithes le cachent sous le tapis les microservices permette de manager cette complexitĂ© automatisation est la clĂ©s dans l’adoption des microservices bien aligner son architecture et son domain ou alors la douleur arrive SĂ©curitĂ©

    Une explication de la CVE sur HTTP/2 https://quarkus.io/blog/cve-2023-44487/

    en fonction de l’implĂ©mentation, le risque est plus ou moins grand (de plus de CPU a un full DDOS) au cƓur du problĂšme est la capacitĂ© d’envoyer pleins de requĂȘtes en parallĂšle sur le meme pipeline HTTP/2 les serveurs ont en general une limite au streams en parallĂšle (genre 100) la CVE est exploitĂ©e cote client en ouvrant et fermant rapidement une stream, c’est plus lĂ©ger sur le client, le serveur a un delai dans sont processing ce qui permet de bypasser la limit et affamer les resources du serveur c’es catastrophique en cas de one thread per request (thread starvation) en event loop, c’est une queue plus grande (donc le cas de quarkus) pour mitiger, quarkus regarde le nombre de stream close requests par seconde pour dĂ©tecter les abus (200 requĂȘtes de fermeture sur une fetnetre de 30s) Data / IA

    Elon Musk annonce son LLM, appelé Grok https://x.ai/

    ConnectivitĂ© en temps rĂ©el avec Twitter ! FenĂȘtre de contexte de 25k characters Le LLM garderait le contexte de la conversation (au lieu d’avoir Ă  toujours renvoyer toute la discussion dans le contexte, Ă  cause du cĂŽtĂ© sans Ă©tat des LLMs habituellement) Le style, la personnalitĂ©, du LLM, serait assez humoristique, voire carrĂ©ment sarcastique, Ă  la Musk
 et dĂ©jĂ  sur Twitter une personne commentait en disant que c’était le LLM “anti-woke” Grok serait disponible pour les utilisateurs payants de Twitter

    OpenAI fait 4 nouvelles annonces https://openai.com/blog/new-models-and-developer-products-announced-at-devday

    GPT-4 Turbo : leur dernier et plus puissant LLM. Il offre un contexte de 128k tokens, des prix plus bas et des quotas plus Ă©levĂ©s. 128k c’est comme Claude Assistants API : une solution permettant de crĂ©er des mini assistants personnalisĂ©s et de les exposer via une API. L’objectif est de faciliter l’intĂ©gration des solutions GenAI dans les applications, avec des fonctionnalitĂ©s de gestion des conversations, d’interprĂ©tation de code et de RAG. API pour DALL‱E 3 : un modĂšle de 3e gĂ©nĂ©ration pour la gĂ©nĂ©ration d’images. GPTs : des versions personnalisĂ©es de ChatGPT, faciles Ă  dĂ©velopper mĂȘme sans compĂ©tences en programmation. Une place de marchĂ© sera disponible pour monĂ©tiser ces “GPTs”. Merci Didier et son X de rĂ©sumer un article plus complet de SFEIR https://www.sfeir.dev/ia/quand-lesprit-de-noel-sinvite-a-lopenai-devday/ Protection juridique en cas d’attaque de droits d’auteur Loi, sociĂ©tĂ© et organisation

    Les acteurs et la IA, deal pour arrĂȘter a grĂšve https://www.bbc.com/news/entertainment-arts-67364587

    Les acteurs et les grands studios d’Hollywood ont conclu un accord le 8 novembre pour mettre fin Ă  une grĂšve qui a paralysĂ© la production de films et de sĂ©ries aux États-Unis pendant plusieurs mois. L’accord prĂ©voit une nouvelle convention collective de trois ans pour les acteurs (hormis les vedettes, les acteurs n’arrivent pas Ă  gagner leur vie avec le streaming) Revalorisation importante des salaires minimums ainsi que des des garde-fous contre le IA. Un systĂšme de primes pour les rediffusions en streaming. Double mouvement social historique : acteurs sont entrĂ©s en grĂšve mi-juillet, les scĂ©naristes depuis dĂ©but mai. La paralysie du secteur a coĂ»tĂ© au moins 6 milliards de dollars. Les acteurs craignaient que les studios utilisent l’IA pour cloner leur voix et leur image, les rĂ©utiliser Ă  perpĂ©tuitĂ©, sans compensation ni consentement. Les conditions entourant les droits des studios sur l’image des acteurs stars aprĂšs leur mort a Ă©tĂ© nĂ©gociĂ©.

    Chute de WeWork, dépÎt de bilan https://www.maddyness.com/2023/11/06/wework-impact-coworking-france/

    La disparition annoncĂ©e du gĂ©ant mondial du coworking marque un tournant pour le secteur, y compris en France. AsphyxiĂ© par une dette de prĂšs de 3 milliards de dollars Chute interminable entamĂ©e en 2019 WeWork Ă©tait le leader mondial du secteur et, de par son statut de pionnier du coworking WeWork propose 15 Ă©tablissements en France, tous situĂ©s Ă  Paris Pourtant la demande pour le coworking ne cesse d’exploser Startups domicilient leur siĂšge (Qonto par exemple) dans un espace de co-working Le modĂšle du coworking n’est pas remis en cause. WeWork, c’est un phĂ©nomĂšne Ă  part. Il y a eu une mauvaise gestion de dĂ©part d’une licorne qui croĂźt Ă  toute vitesse, en ne faisant absolument pas attention Ă  son modĂšle Ă©conomique de base (dit ClĂ©ment Alteresco CEO de Morning) Mauvaise publicitĂ© pour le marchĂ© et les concurrents, mais considĂšrent qu’ils vont s’en sortir

    Les français, les utilisateurs twitter le plus violents d’Europe? https://www.huffingtonpost.fr/france/article/les-francais-sont-les-utilisateurs-de-twitter-les-plus-violents-d-europe_225331.html#:~:text=2023%2023%3A57-,Les%20Fran%C3%A7ais%20sont%20les%20utilisateurs%20de%20Twitter%20les%20plus%20violents,’Allemagne%20et%20l’Espagne.

    Les signalements de contenus, suppressions et suspensions pour propos violents et haineux au sein de X sont les plus nombreux en France, loin devant l’Allemagne et l’Espagne. 16.288 suppressions de messages contre 7.160 en Allemagne et 7.743 en Espagne X explique avoir une « Ă©quipe internationale et inter-fonctionnelle » de « modĂ©rateurs humains », qui travaillent « 24 heures sur 24 avec la capacitĂ© de couvrir plusieurs langues ».

    Sam Altman PDG d’OpenAI est dĂ©barquĂ© par son conseil de surveillance https://thealgorithmicbridge.substack.com/p/why-openai-fired-sam-altman-and-what

    ça a surpris le monde la silicone valley dans lequel Altman est adulĂ©. N ancien cofondateur a aussi Ă©tĂ© Ă©cartĂ© Ă  un poste pĂ©riphĂ©rique mais a dĂ©cidĂ© de quitter le navire. C’est du Ă  des tensions dans la boĂźte entre la partie lucrative et non lucrative d’OpenAI. Le conseil travail pour une AI sĂ»re et pour le bien de l’humanitĂ© Sam Altman avait fait prendre le virage for du business depuis quelques annĂ©es Il n’a selon le communiquĂ© pas Ă©tĂ© franc et transparent avec son conseil de surveillance. Microsoft qui a misĂ© sur ce cheval (OpenAI) n’était pas au courant, ni la plupart des employĂ©s d’OpenAI Quelques employĂ©s de OpenAI ont dĂ©jĂ  dĂ©missionnĂ© la reduction des recherches fondamentales vs la productization a jouĂ© un role surement Et il n’est pas le seul Ă  partir https://x.com/hellokillian/status/1725797467315486902?s=46&t=GLj1NFxZoCFCjw2oYpiJpw Encore mieux que Dallas le board nĂ©gocie son retour au bout de 24h https://www.theverge.com/2023/11/18/23967199/breaking-openai-board-in-discussions-with-sam-altman-to-return-as-ceo Et le board saute: https://twitter.com/rowancheung/status/1726342477874102604?s=21&t=O1MqQ7XEw5hIAezn-npoQA Finalement, Satya Nadella annonce que Sam Altman et Greg Brockman rejoignent Microsoft dans une nouvelle Ă©quipe de recherche IA https://twitter.com/satyanadella/status/1726509045803336122 et finalement avec un nouveau board, Sam Altman retourne chez open AI https://x.com/sama/status/1727207458324848883?s=20

    Les groupes “Responsible AI” chez Google, Microsoft et plus rĂ©cemment Meta https://www.theverge.com/2023/11/18/23966980/meta-disbanded-responsible-ai-team-artificial-intelligence?utm_source=substack&utm_medium=email sont dĂ©truits

    meme dĂ©bat chez OpenAI en fait. difficile de comprendre les raisons, Ă  part que la course s’est accĂ©lĂ©rĂ©e l’article site les gouvernements qui veulent rĂ©guler mais je ne comprends pas en quoi cela influence ConfĂ©rences

    Retrouvez les conférences sur le site Developers Conferences Agenda/List par Aurélie Vache.

    Nous contacter

    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/

  • Dans cet Ă©pisode, Emmanuel et Guillaume reviennent sur les nouveautĂ©s de l’écosystĂšme Java (Java 21, SDKman, Temurin, JBang, Quarkus, LangChain4J, 
) mais aussi sur des sujets plus gĂ©nĂ©raux comme Unicode, WebAssembly, les bases de donnĂ©es vectorielles, et bien d’autres sujets orientĂ©s IA (LLM, ChatGPT, Anthropic, 
).

    Enregistré le 20 octobre 2023

    TĂ©lĂ©chargement de l’épisode LesCastCodeurs-Episode-301.mp3

    News Langages

    GĂ©rer facilement des versions multiples de Java grĂące Ă  SDKman https://foojay.io/today/easily-manage-different-java-versions-on-your-machine-with-sdkman/

    sdkman support java mais aussi graalVM, jbang, Quarkus, Micronaut etc (les CLIs) la CLI UI est toujours un peu chelou donc cet article est utile pour un rappel

    Tous les changements de Java 8 Ă  Java 21 https://advancedweb.hu/a-categorized-list-of-all-java-and-jvm-features-since-jdk-8-to-21/

    Nous avons dĂ©jĂ  partagĂ© ce lien par le passĂ©, mais l’article est mis Ă  jour Ă  chaque release majeure de Java pour couvrir les derniĂšres nouveautĂ©s. Et en particulier, Java 21 qui vient de sortir.

    Eclipse Temurin ne va pas sortir son Java 21 tout de suite https://adoptium.net/en-GB/blog/2023/09/temurin21-delay/

    Apparemment, une nouvelle licence pour le TCK (qui valide la compliance) doit ĂȘtre approuvĂ©e Oracle semble avoir sorti de nouveaux termes, Ă  quelques jours de la sortie officielle de Java 21 la mise a jour du TCK est arrivĂ©e le 9 octobre. comment Microsoft a pu sortir le sien avant?

    Le Financial Times propose un bel article avec des animations graphiques expliquant le fonctionnement de l’architecture de rĂ©seau de neurones de type transformers, utilisĂ© dans les large language model https://ig.ft.com/generative-ai/

    LLM via relation entre les mots notion de transformer qui parse les “phrases” entiĂšres ce qui capture le contexte discute le beam search vs greedy search pour avoir pas le prochain mot mais l’ensemble de prochains mots parle d’hallucination l’article parle de texte/vector embeddings pour reprĂ©senter les tokens et leurs relations aux autres il dĂ©crit le processus d’attention qui permet aux LLM de comprendre les associations frĂ©quentes entre tokens le sujet des hallucinations est couvert et pour Ă©viter des hallucinations, utilisation du “grounding”

    The Absolute Minimum Every Software Developer Must Know About Unicode in 2023 https://tonsky.me/blog/unicode/

    Un bel article qui explique Unicode, les encodings comme UTF-8 ou UTF-16, les code points, les graphĂšmes, les problĂšmes pour mesurer une chaĂźne de caractĂšres, les normalisation de graphĂšmes pour la comparaison de chaĂźne Si vous voulez mieux comprendre Unicode, c’est l’article Ă  lire ! unicode c’est un mapping chiffre - caractĂšre en gros 1,1 millions disponibles dont 15% dĂ©finis et 11% pour usage privĂ©, il reste de la place. Et non les meojis ne prennent pas beaucoup de place. usage prive est par exemple utilise par apple pour dĂ©livrer le logo apple dans les fonts du mac (mais pas ailleurs) UTF est l’encoding du chiffre de l’unicode UTF-32: 4 bytes tout le temps, UTF-8, encodage variable de 1 a 4 bytes (compatible avec ASCII) ; il a aussi un peu de dĂ©tection d’erreurs (prefix des bytes diffĂ©rents), optimise pour le latin et les textes techniques genre HTML problĂšme principal, on peut pas dĂ©terminer la taille en contant les bytes ni aller au milieu d’une chaine directement (variable) UTF-16 utilise 2 ou plus de bytes et est plus sympa pour les caractĂšres asiatiques un caractĂšre c’est en fait un graphĂšme qui peut ĂȘtre fait de plusieurs codepoints : Ă© = e U+0065 + ÂŽ U+0301 ; â˜č (smiley qui pleure) is U+2639 + U+FE0F D’ailleurs selon le langage “:man-facepalming::skin-tone-3:”.length = 5, 7 (java) ou 17 (rust) ou 1 (swift). Ça dĂ©pend de l’encodage de la chaine (UTF-?). ““I know, I’ll use a library to do strlen()!” — nobody, ever.” En java utiliser ICU https://github.com/unicode-org/icu Attention java.text.BreakIterator supporte une vieille version d’unicode donc c’est pas bon. Les rĂšgles de graphĂšme change a chaque version majeure d’unicode (tous les ans) certains caractĂšres comme Å ont plusieurs reprĂ©sentations d’encodage, donc il ya de la normalisation: NFD qui Ă©clate en pleins de codepoints ou NDC qui regroupe au max normaliser avant de chercher dans les chaines certains unicode sont reprĂ©sentĂ©s diffĂ©remment selon le LOCALE (c’est la life) et ça continue dans l’article

    JBang permet d’appeler Java depuis Python via un pypi https://jbang.dev/learn/python-with-jbang/

    c’est particuliùrement interessant pour appeler Java de son Jupyter notebook ça fait un appel a un autre process (mais installe jbang et java au besoin) Librairies

    Quarkus 3.4 est sorti https://quarkus.io/blog/quarkus-3-4-1-released/

    un CVE donc mettez a jour vos Quarkus support de Redis 7.2 plus de granularitĂ© sur la desactivation de flyway globalement ou par data source. Depuis l’activation transparente et automatique en 3.3 quarkus update est l’approche recommandĂ©e pour mettre Ă  jour.

    Comment tester si un thread virtuel “pin” https://quarkus.io/blog/virtual-threads-3/

    exemple avec quarkus comment gĂ©nĂ©rer la stackstrace et un utilitaire JUnit qui fait Ă©chouer le test quand le thread pin une sĂ©rie d’articles de Clements sur les threads virtuels et comment les utiliser dans quarkus https://quarkus.io/blog/virtual-thread-1/

    À la dĂ©couverte de LangChain4J, l’orchestration pour l’IA gĂ©nĂ©rative en Java https://glaforge.dev/posts/2023/09/25/discovering-langchain4j/

    Guillaume nous parle du jeune projet LangChain4J, inspirĂ© du projet Python LangChain, qui permet d’orchestrer diffĂ©rents composants d’une chaine d’IA gĂ©nĂ©rative GrĂące Ă  ce projet, les dĂ©veloppeurs Java ne sont pas en reste, et n’ont pas besoin de se mettre Ă  coder en Python LangChain4J s’intĂšgre avec diffĂ©rentes bases vectorielles comme Chroma ou WeAviate, ainsi qu’une petite base en mĂ©moire fort pratique LangChain4J supporte l’API PaLM de Google, mais aussi OpenAI Il y a diffĂ©rents composants pour charger / dĂ©couper des documents et pour calculer les vector embeddings des extraits de ces documents VidĂ©o enregistrĂ©e Ă  Devoxx sur ce thĂšme : https://www.youtube.com/watch?v=ioTPfL9cd9k Infrastructure

    OpenTF devient OpenTofu https://www.linuxfoundation.org/press/announcing-opentofu

    Dans les Dockerfiles, on peut utiliser la notation “heredocs”

  • Dans cet Ă©pisode Charles Sabourdin interview Jean-Michel Doudoux sur la sortie de la nouvelle version LTS de Java en 2023: Java 21.

    Enregistré le 5 septembre 2023

    TĂ©lĂ©chargement de l’épisode LesCastCodeurs-Episode-300.mp3

    Java 21

    The art of long-term support and what LTS means for the Java ecosystem

    JDK 21 444: Virtual Threads 453: Structured Concurrency (Preview) 446: Scoped Values (Preview) 440: Record Patterns 441: Pattern Matching for switch 430: String Templates (Preview) 443: Unnamed Patterns and Variables (Preview) 445: Unnamed Classes and Instance Main Methods (Preview) 431: Sequenced Collections 439: Generational ZGC 451: Prepare to Disallow the Dynamic Loading of Agents 452: Key Encapsulation Mechanism API 442: Foreign Function & Memory API (Third Preview) 448: Vector API (Sixth Incubator) 449: Deprecate the Windows 32-bit x86 Port for Removal À propos de Jean-Michel Doudoux DĂ©veloppons en Java https://www.jmdoudoux.fr http://blog.sciam.fr/. À propos de ParisJug https://www.parisjug.org/ https://www.jchateau.org/ https://javaday.parisjug.org/ Nous contacter

    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/

  • Dans cet Ă©pisode de rentrĂ©e, Antonio et Arnaud ont le plaisir d’accueillir Katia Aresti dans l’équipe. Ils passent en revue les derniĂšres nouveautĂ©s et sujets chauds de cette rentrĂ©e, notamment la sortie de Java 21, les nouvelles versions de Quarkus, Micronaut, Hibernate, NodeJS, Redis, et bien d’autres encore. Ils discutent de sujets plus gĂ©nĂ©raux tels que l’observabilitĂ©, la nouvelle tendance “Platform Engineering”, et la productivitĂ© des dĂ©veloppeurs. Ils abordent aussi les sujets sur la sĂ©curitĂ©, tels que les failles sur les CPUs Intel et AMD, ainsi que la vie privĂ©e, avec les Tracking APIs de Chrome, Firefox et le projet de loi SREN. Le tout est agrĂ©mentĂ© de sa dose d’IA, avec des librairies telles que Semantic Kernel, ainsi que des sujets plus haut niveau tels que Google Gemini, Meta GPT, LLama 2, et les biais et la consommation Ă©nergĂ©tique de l’IA.

    Enregistré le 8 septembre 2023

    TĂ©lĂ©chargement de l’épisode LesCastCodeurs-Episode–299.mp3

    News Langages

    Apache Groovy a 20 ans! https://twitter.com/ApacheGroovy/status/1695388098950217909

    L’annonce du lancement du projet par James Strachan https://web.archive.org/web/20030901064404/http://radio.weblogs.com/0112098/2003/08/29.html Le projet a depuis Ă©normĂ©ment Ă©voluĂ© et aprĂšs plusieurs vies a Ă©tĂ© adoptĂ© par la fondation Apache en 2015

    Java 21 arrive le 19 septembre https://www.infoworld.com/article/3689880/jdk–21-the-new-features-in-java–21.html.

    C’est la nouvelle LTS Pas mal de nouvelles fonctionnalitĂ©s comme les virtual threads, le pattern matching sur les switch, sequenced collections 
 Retrouvez le 19 septembre une interview de Jean-Michel Doudoux par Charles Sabourdin pour l’épisode 300 des castcodeurs! Librairies

    Semantic Kernel pour Java est (en train de) sorti: https://devblogs.microsoft.com/semantic-kernel/introducing-semantic-kernel-for-java/

    Framework OSS pour faire de l’IA .Net et Python Java 0.2.7 Alpha est publiĂ© Kernel car il est tout petit Se connecte Ă  plusieurs fournisseurs (aujourd’hui OpenAI, Azure AI, Hugging Face), plusieurs DB vectorielles, plusieurs template de prompt (suit la specification de OpenAI)

    OpenSSL qui committe https://www.openssl.org/blog/blog/2023/07/17/who-writes-openssl/

    en majoritĂ© des OSS payĂ©s puis des gens payĂ©s par leur boite et enfi des contributeurs non payĂ©s c’est ne passant rapide mais ca montre que depuis heartbleed, ca a changĂ©

    Micronaut 4.1.0 https://micronaut.io/2023/09/01/micronaut-framework–4–1–0-released/

    Bean Mappers pour crĂ©er automatiquement une correspondance entre un type et un autre un Introspection Builder l’annotation @Introspected pour gĂ©nĂ©rer un builder dynamique si un type ne peut ĂȘtre construit que via un modĂšle builder amĂ©liorations pour les dĂ©veloppeurs utilisant Kotlin Symbol Processing (KSP)

    Quarkus 3.3.1 / 3.3.2

    https://quarkus.io/blog/quarkus–3–3–1-released/

    https://quarkus.io/blog/quarkus–3–3–2-released/

    Pas mal de fixes https://github.com/quarkusio/quarkus/releases/tag/3.3.1 https://github.com/quarkusio/quarkus/releases/tag/3.3.2 Il est important de noter qu’un problĂšme de dĂ©gradation des performances et de la mĂ©moire a Ă©tĂ© introduit dans Quarkus 3.3. Ce problĂšme est corrigĂ© dans Quarkus 3.3.2.

    Hibernate ORM 6.3.0 et 6.2.8 https://hibernate.org/orm/ et Hibernate Reactive 2.0.5

    un support initial de la spĂ©cification Jakarta Persistence 3.2 Un nouveau guide d’introduction Hibernate 6, un nouveau guide de syntaxe et de fonctionnalitĂ©s pour le langage de requĂȘte Hibernate (Hibernate Query Language) Annotation @Find sur des mĂ©thodes -> crĂ©er des mĂ©thodes de recherche similaires aux mĂ©thodes de requĂȘte Reactive compatible avec Hibernate ORM 6.2.8.Final, certains changements d’api Infrastructure

    Une sĂ©rie d’articles sur l’observabilitĂ© par Mathieu Corbin

    Observability: tout ce que vous avez toujours voulu savoir sur les mĂ©triques: https://www.mcorbin.fr/posts/2023–07–04-metriques/

    Tracing avec Opentelemetry: pourquoi c’est le futur (et pourquoi ça remplacera les logs): https://www.mcorbin.fr/posts/2023–08–20-traces/

    L’auteur reprend les bases sur l’observabilitĂ©.

    Qu’est ce qu’une mĂ©trique ? Les labels, les cardinalitĂ©s

    Les types de métriques (Compteurs, jauges, quantiles et histogrammes)

    C’est quoi le tracing ?

    Traces, Spans, Resources, Scopes qu’est ce que c’est?

    Les Events pour remplacer les logs?

    Web

    NodeJS 20.6.0 est disponible et ajoute le support des fichiers .env https://philna.sh/blog/2023/09/05/nodejs-supports-dotenv/

    Configurable avec l’option --env-file Le fichier .env peut contenir des variables d’environnement et commentaires # Attention par contre: pas de lignes multiples ni d’extension de variables Vous pouvez par exemple configurer NODE_OPTIONS avec ce systùme Data

    Redis 7.2 est sorti ! https://redis.com/blog/introducing-redis–7–2/

    Auto-tiering : cette nouvelle fonctionnalitĂ© permet de stocker les donnĂ©es sur des supports de stockage diffĂ©rents, en fonction de leur importance et de leur frĂ©quence d’accĂšs. Cela permet d’amĂ©liorer les performances et la scalabilitĂ© de Redis. RESP3 : cette nouvelle version du protocole RESP permet une communication plus efficace entre Redis et les clients. Improvements to performance : de nombreuses amĂ©liorations de performances ont Ă©tĂ© apportĂ©es Ă  Redis 7.2, notamment pour les opĂ©rations de lecture et d’écriture. New commands : plusieurs nouvelles commandes ont Ă©tĂ© ajoutĂ©es Ă  Redis 7.2, notamment : CLIENT NO-TOUCH : cette commande permet d’empĂȘcher un client d’ĂȘtre touchĂ© par une opĂ©ration AOF ou RDB. WAITAOF : cette commande permet d’attendre que l’AOF soit Ă©crite avant de poursuivre l’exĂ©cution.

    Dans le podcast sont cités les hot replacement des Redis, comme https://www.dragonflydb.io/

    Architecture

    Article sur Google Gemini et sa capacité a battre ChatGPT https://www.semianalysis.com/p/google-gemini-eats-the-world-gemini

    Google a ratĂ© les premiers pas (ils avient le meilleur LLM public avant ChatGPT 3) ET les chercheurs qui invente le champs des LLMs Google va 5x ChatGPT–4 avant al fin de l’annĂ©e, mais vont-il les publier les chercheurs se tirent la bourre sur le nombre de GPU (H100) auxquels ils ont accĂšs ; ce sont lers grosses orga comme Meta OpenAI Google et les autres qui lutent avec des GPU qui n’ont pas assez de VRAM et ce qu’ils vont faire c’est de la merde et sans consequence le peuple utilise le modele dense de LLAMA mais pour les environnements contraints ca serait mieux des sparse models et du speculative decoding. ils devraient se concentre sur la performance de modele qui utilise plus de compute et memoire en evitant de consommer de la bande passante de memoire, c’est ce que l’edge a besoin les benchmarks public ne mesurent pas des choses utiles meme hugging faces est dans la category des pauvres de GPU Nvidia est entrain de se construire une machine de guerre (service) la chine et les us vont etre en competition mais l’europe qui fait du GPU pauvre ne va pas s’en sortir les startups ne peuvent pas payer les GPU en actiosn, il faut du cash Tout le monde rempli les poches de NVidia, sand Google Gogole grossi exponentiellement ses propres GPUs

    Meta GPT https://www.infoq.com/news/2023/08/metagpt-agent-collaboration/

    IA: les biais et Ă©nergie qui consomme par Leslie Miley tech advisor du CTO de Microsoft https://www.infoq.com/presentations/ai-bias-sustainability

    nouvels infranstructures consommation Ă©nergĂ©tique et d’eau des data center pour IA est terriblement coĂ»teuse l’impact des infrastructures sur les comunautĂ©s (bruit) explique bien son point de vu sur les problĂšmes d’amplification des biais du IA propose des stratĂ©gies pour mitiger l’impact negatif

    Kubeflow toolkit pour deployer machine learning (ML) workflow en Kubernetes est accepté par la CNCF (Cloud Native Computing Foundation) https://www.infoq.com/news/2023/08/kubeflow-cncf-project

    MĂ©thodologies

    Measuring developer productivity? A response to McKinsey by Kent Beck and Gergely Orosz (pragmaticengineer.com) https://tidyfirst.substack.com/p/measuring-developer-productivity

    McKinsey a sorti un article oĂč ils expliquent la recette miracle recherchĂ©e par tous les managers comme le graal: Comment mesurer la productivitĂ© des dĂ©veloppeurs? (faut bien vendre du conseil) Kent et Gergely partent d’un model mental de description de la crĂ©ation de valeur par le dĂ©veloppeur pour ensuite voir quels sont les besoins de mesurer la productivitĂ© et comparent cela avec d’autres secteurs (la vente, le support, le recrutement). Ils concluent cette premiĂšre partie avec les compromis Ă  faire pour que ce type de mesures ait un intĂ©rĂȘt sans impacter trop nĂ©gativement les dĂ©veloppeurs un autre article dans la mĂȘme lignĂ©e de Martin Fowler https://martinfowler.com/bliki/CannotMeasureProductivity.html

    Et si on parlait de Platform Engineering ?

    DevOps vs. SRE vs. Platform Engineering (humanitec.com)

    What is platform engineering? (gartner.com) / What is platform engineering? (platformengineering.org)

    Internal Developer Platform

    Cognitive load

    Team topologies

    Engineering Effectiveness (thoughtworks.com) and Maximize your tech investments with Engineering Effectiveness (thoughtworks.com)

    Ces différents articles retracent la génÚse du concept de Platform Engineering

    L’activitĂ© de Platform Engineering vient en rĂ©ponse Ă  la charge cognitive rajoutĂ©e aux Ă©quipes techs dans des transitions DevOps loupĂ©es (You build it, you run it 
 et vous vous dĂ©brouillez).

    Cela conduit Ă  la crĂ©ation de golden paths et d’une Internal Developers Platform qui doit proposer en interne les services nĂ©cessaires aux Ă©quipes pour livrer leurs produits le lus efficacement possible tout en suivant les critĂšres de qualitĂ©, de compliance de l’entreprise.

    Pour en savoir plus, une table ronde à laquelle Arnaud a participé en Juillet : https://youtu.be/N-tN7HUA4No?si=2P0wSqG32MLWUlGq

    On call Process (Astreinte) , startup TinyBird par VP Engineering FĂ©lix LĂłpez (ex google, ex eventbrite) https://thenewstack.io/keeping-the-lights-on-the-on-call-process-that-works/

    Si votre produit est SAAS, on doit avoir des astreintes. Cela impose un lourd fardeau Ă  ceux qui doivent ĂȘtre en astreinte,, surtout en petite entreprise Petites entreprises Ă©vitent avoir un processus d’astreinte formel pour Ă©viter le stress. Cela crĂ©e dans la pratique plus de stress: Si personne n’est responsable, tout le monde est responsable. Tinybird est la plateforme de donnĂ©es en temps rĂ©el pour les dĂ©veloppeurs et les Ă©quipes de donnĂ©es. PrĂ© crĂ©ation du process formel chez Tinybird: dĂ©sorganisĂ©, non structurĂ© et stressant Mise en place: Principes fondamentaux d’un processus d’astreinte: L’astreinte n’est pas obligatoire, minimiser le bruit, pas seulement pour les SRE, alert = runbook, avoir des backups pour la personne en astreinte, appeler quelqu’un devrait ĂȘtre la derniĂšre solution, minimiser le temps en astreinte L’article explique comment ils sont passĂ© regarder chaque alerte (comprehensible?, exploitable?), puis avoir un board grafana pour chacune et plan spĂ©cifique. Une fois le tri fait, tout migrĂ© vers un seul channel de com, et manuel d’astreinte pour chaque alerte. ItĂ©rer. Multiples benefices sur le long terme: rapports d’incident ouvert, attĂ©nuer les problĂšmes futurs, renforcement la propriĂ©tĂ© et les connaissances du code et systĂšmes au sein de toute l’équipe etc. SĂ©curitĂ©

    Downfall, une nouvelle faille de sĂ©curitĂ© sur les processeurs intel ( https://www.lemondeinformatique.fr/actualites/lire-la-faille-downfall-met-a-mal-des-milliards-de-processeurs-intel–91247.html ) et AMD ne fait pas mieux avec une faille nommĂ©e Inception (https://www.lemondeinformatique.fr/actualites/lire-les-puces-amd-vulnerables-a-la-faille-inception–91273.html)

    Downfall, La vulnĂ©rabilitĂ© est due Ă  des fonctions d’optimisation de la mĂ©moire dans les processeurs Intel qui rĂ©vĂšlent involontairement les registres matĂ©riels internes aux logiciels. Cela permet Ă  des logiciels non-fiables d’accĂ©der Ă  des donnĂ©es stockĂ©es par d’autres programmes, qui ne devraient normalement pas ĂȘtre accessibles. Tous les PC ou ordinateurs portables Ă©quipĂ©s de processeurs Intel Core de la 6e gĂ©nĂ©ration Skylake jusqu’aux puces Tiger Lake de 11e gĂ©nĂ©ration incluses contiennent cette faille. Les derniers processeurs Core 12e et 13e gĂ©nĂ©ration d’Intel ne sont pas concernĂ©s. Inception, nĂ©cessite un accĂšs local au systĂšme pour ĂȘtre potentiellement exploitĂ© ce qui en limite de fait la portĂ©e. Tous les processeurs AMD depuis 2017 sont touchĂ©s, incluant les derniers modĂšles Zen 4 Epyc et Ryzen

    Comment désactiver le nouveau tracking publicitaire ciblé sur Chrome https://www.blogdumoderateur.com/chrome-comment-desactiver-tracking-publicitaire-cible/

    Google a annoncĂ© en juillet le dĂ©ploiement de sa nouvelle API Topics, permettant « Ă  un navigateur de partager des informations avec des tiers sur les intĂ©rĂȘts d’un utilisateur tout en prĂ©servant la confidentialitĂ© ». C’est cette API, incluse dans la version Chrome 115 de juillet 2023, qui est censĂ©e remplacer les cookies tiers. Loi, sociĂ©tĂ© et organisation

    Une nouvelle definition d’open pour Llama 2? https://opensourceconnections.com/blog/2023/07/19/is-llama–2-open-source-no-and-perhaps-we-need-a-new-definition-of-open/

    c’est relativement “open” mais il y a des restrictions donc pas open source pas plus de 700 M d’utilisateurs par mois pas le droit d’utiliser Llama pour amĂ©liorer d’autres modĂšles autres que dse dĂ©rivĂ©s de Llama et c’est le modele final qui est ouvert, pas la sauce pour le construire, donc pas de maven build ni le “source code” pour y arriver “from scratch” attention au risuqe de sacrivier open source pour avoir l’IA plus vite, plus facile

    HashiCorp passe tous ses projets open source en BSL, comme Confluent, Mongo, Redis, Elastic, etc https://thenewstack.io/hashicorp-abandons-open-source-for-business-source-license/

    Couverture par InfoQ https://www.infoq.com/news/2023/08/hashicorp-adopts-bsl/ Fork de Terraform : OpenTF, avec pour objectif de rejoindre la CNCF https://opentf.org/announcement

    Stack overflow annonce Overflow AI https://www.infoq.com/news/2023/09/stackoverflow-overflowai/

    l’intĂ©gration de l’IA gĂ©nĂ©rative dans leur plateforme publique, Stack Overflow for Teams, ainsi que de nouveaux domaines de produits IA/ML aident Ă  gĂ©nĂ©rer des balises initiales et Ă  suggĂ©rer des paires question-rĂ©ponse, permettant aux dĂ©veloppeurs de se concentrer sur l’amĂ©lioration et la prĂ©cision AmĂ©lioration des CapacitĂ©s de Recherche Les forums de questions-rĂ©ponses basĂ©s sur la communautĂ© sont le cƓur battant de Stack Overflow. Selon Prashanth Chandrasekar, PDG de Stack Overflow, l’objectif d’OverflowAI est d’amĂ©liorer la communautĂ© de diverses maniĂšres plutĂŽt que de la remplacer complĂštement.

    Vous avez entendu parler du projet de loi SREN ? http://share.mozilla.org/817319645t

    Le gouvernement français prĂ©pare une loi qui pourrait menacer la libertĂ© sur Internet. Le projet de loi visant Ă  sĂ©curiser et rĂ©guler l’espace numĂ©rique (SREN) obligerait les navigateurs web, comme Mozilla Firefox, Ă  bloquer des sites web directement au niveau du navigateur. Mozilla lance une pĂ©tition pour retirer cette n-ieme solution stupide pour censurer Internet ConfĂ©rences

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

    8 septembre 2023 : JUG Summer Camp - La Rochelle (France) 14 septembre 2023 : Cloud Sud - Toulouse (France) & Online 18 septembre 2023 : Agile Tour Montpellier - Montpellier (France) 19 septembre 2023 : Salon de la Data Nantes - Nantes (France) & Online 19–20 septembre 2023 : Agile en Seine - Paris (France) 21–22 septembre 2023 : API Platform Conference - Lille (France) & Online 22 septembre 2023 : Agile Tour Sophia Antipolis - Valbonne (France) 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) 6 octobre 2023 : DevFest Perros-Guirec - Perros-Guirec (France) 10 octobre 2023 : ParisTestConf - Paris (France) 11–13 octobre 2023 : Devoxx Morocco - Agadir (Morocco) 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) 13–14 octobre 2023 : SecSea 2K23 - La Ciotat (France) 17–20 octobre 2023 : DrupalCon Lille - Lille (France) 19–20 octobre 2023 : DevFest Nantes - Nantes (France) 19–20 octobre 2023 : Agile Tour Rennes - Rennes (France) 26 octobre 2023 : Codeurs en Seine - Rouen (France) 30 septembre 2023 : ScalaIO - Paris (France) 26–27 octobre 2023 : Agile Tour Bordeaux - Bordeaux (France) 26–29 octobre 2023 : SoCraTes-FR - Orange (France) 10 novembre 2023 : BDX I/O - Bordeaux (France) 15 novembre 2023 : DevFest Strasbourg - Strasbourg (France) 16 novembre 2023 : DevFest Toulouse - Toulouse (France) 18–19 novembre 2023 : Capitole du Libre - Toulouse (France) 23 novembre 2023 : DevOps D-Day #8 - Marseille (France) 23 novembre 2023 : Agile Grenoble - Grenoble (France) 30 novembre 2023 : PrestaShop Developer Conference - Paris (France) 30 novembre 2023 : WHO run the Tech - Rennes (France) 6–7 dĂ©cembre 2023 : Open Source Experience - Paris (France) 7 dĂ©cembre 2023 : Agile Tour Aix-Marseille - Gardanne (France) 7–8 dĂ©cembre 2023 : TechRocks Summit - Paris (France) 8 dĂ©cembre 2023 : DevFest Dijon - Dijon (France) 31 janvier 2024–3 fĂ©vrier 2024 : SnowCamp - Grenoble (France) 6–7 mars 2024 : FlowCon 2024 - Paris (France) 19–22 mars 2024 : KubeCon + CloudNativeCon Europe 2024 - Paris (France) 28–29 mars 2024 : SymfonyLive Paris 2024 - Paris (France) 17–19 avril 2024 : Devoxx France - Paris (France) 25–26 avril 2024 : MiXiT - Lyon (France) 25–26 avril 2024 : Android Makers - Paris (France) 6–7 juin 2024 : DevFest Lille - Lille (France) Nous contacter

    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/

  • Dans cet Ă©pisode estival Guillaume, Emmanuel et Arnaud parcourent les nouvelles du dĂ©but d’étĂ©. Du Java, du Rust, du Go du cotĂ© des langages, du Micronaut, du Quarkus pour les frameworks, mais aussi du WebGPU, de l’agilitĂ©, du DDD, des sondages, de nombreux outils et surtout de l’intelligence artificielle Ă  toutes les sauces (dans les bases de donnĂ©es, dans les voitures
).

    Enregistré le 21 juillet 2023

    TĂ©lĂ©chargement de l’épisode LesCastCodeurs-Episode-298.mp3

    News Langages

    La release candidate de Go 1.21 supporte WASM et WASI nativement https://go.dev/blog/go1.21rc

    StringBuilder ou contatenation de String https://reneschwietzke.de/java/the-stringbuilder-advise-is-dead-or-isnt-it.html

    StringBuilder Ă©tait la recommendation ca cela crĂ©ait moins d’objects notamment. Mais la JVM a Ă©voluĂ© et le compilateur ou JIT remplace cela par du code efficace Quelques petites exceptions le code froid (e.g. startup time) qui est encore interprĂ©tĂ© peut beneficier de StringBuilder autre cas, la concatenation dans des boucles oĂč le JIT ne pourrait peut etre pas optimiser le StringBuilder “fluid” est plus efficace (inlinĂ©?) ces regles ne changement pas si des objects sont stringifiĂ© pour etre concatĂ©nĂ©s

    GPT 4 pas une revolution https://thealgorithmicbridge.substack.com/p/gpt-4s-secret-has-been-revealed

    rumeur ca beaucou de secret pas u modele a 1 trillion de parametres maus 8 a 220 Milliards combinĂ©s intelligeament les chercheurs attendaient un breakthrough amis c’est une envolution et pas particulierement nouveau methode deja implem,entee par des cherchers chez google (maintenant chez ooenai ils ont retarde la competition avec ces rumeurs de breakthrough amis 8 LLaMA peut peut etre rivaliser avec GPT4

    Le blog Open Source de Google propose un article sur 5 mythes ou non sur l’apprentissage et l’utilisation de Rust https://opensource.googleblog.com/2023/06/rust-fact-vs-fiction-5-insights-from-googles-rust-journey-2022.html

    Il faut plus de 6 mois pour apprendre Rust : plutĂŽt faux; quelques semaines Ă  3-4 mois max Le compilateur Rust est pas aussi rapide qu’on le souhaiterait — vrai ! Le code unsafe et l’interop sont les plus gros challanges — faux, c’est plutĂŽt les macros, l’owernship/borrowing, et la programmation asynchrone Rust fournit des messages d’erreur de compilation gĂ©niaux — vrai Le code Rust est de haute qualitĂ© — vrai

    InfoQ sort un nouveau guide sur le Pattern Matching pour le switch de Java https://www.infoq.com/articles/pattern-matching-for-switch/

    Le pattern matching supporte tous les types de rĂ©fĂ©rence L’article parle du cas de la valeur null L’utilisation des patterns “guarded” avec le mot clĂ© when L’importance de l’ordre des cases Le pattern matching peut ĂȘtre utilisĂ© aussi avec le default des switchs Le scope des variables du pattern Un seul pattern par case label Un seul case match-all dans un bloc switch L’exhaustivitĂ© de la couverture des types L’utilisation des generics La gestion d’erreur avec MatchException Librairies

    Sortie de Micronaut 4 https://micronaut.io/2023/07/14/micronaut-framework-4-0-0-released/

    Langage minimal : Java 17, Groovy 4 et Kotlin 1.8 Support de la derniĂšre version de GraalVM Utilisation des GraalVM Reachability Metadata Repository pour faciliter l’utilisation de Native Image Gradle 8 Nouveau Expression Language, Ă  la compilation, pas possible au runtime (pour des raisons de sĂ©curitĂ© et de support de prĂ©-compilation) Support des Virtual Threads Nouvelle couche HTTP, Ă©liminant les stack frames rĂ©actives quand on n’utilise pas le mode rĂ©actif Support expĂ©rimental de IO Uring et HTTP/3 Des filtres basĂ©s sur les annotations Le HTTP Client utilise maintenant le Java HTTP Client GĂ©nĂ©ration de client et de serveur en Micronaut Ă  partir de fichier OpenAPI L’utilisation YAML n’utilise plus la dĂ©pendance SnakeYAML (qui avait des problĂšmes de sĂ©curitĂ©) Transition vers Jackarta terminĂ© Et plein d’autres mises Ă  jour de modules Couverture par InfoQ https://www.infoq.com/news/2023/07/micronaut-brings-virtual-thread/

    Quarkus 3.2 et LTS https://quarkus.io/blog/quarkus-3-2-0-final-released/ https://quarkus.io/blog/quarkus-3-1-0-final-released/ https://quarkus.io/blog/lts-releases/

    Infrastructure

    Red Hat partage les sources de sa distribution au travers de son Customer Portal, et impacte la communauté qui se base dessus https://almalinux.org/blog/impact-of-rhel-changes/

    RedHat a annoncĂ© un autre changement massif qui affecte tous les rebuilds et forks de Red Hat Enterprise Linux. À l’avenir, Red Hat publiera uniquement le code source pour les RHEL RPMs derriĂšre leur portail client. Comme tous les clones de RHEL dĂ©pendent des sources publiĂ©es, cela perturbe encore une fois l’ensemble de l’écosystĂšme Red Hat.

    Une analyse du choix de red hat sur la distribution du code source de rhel https://dissociatedpress.net/2023/06/24/red-hat-and-the-clone-wars/

    Une reponse de red hat aux feux dĂ©marrĂ©s par l’annonce de la non distribution des sources de RHEL en public https://www.redhat.com/en/blog/red-hats-commitment-open-source-response-gitcentosorg-changes et un lien vers une de ces feux d’une personne proheminente dans la communautĂ© Ansible https://www.jeffgeerling.com/blog/2023/im-done-red-hat-enterprise-linux

    Oracle demande a garder un Linux ouvert et gratuit https://www.oracle.com/news/announcement/blog/keep-linux-open-and-free-2023-07-10/

    Suite Ă  l’annonce d’IBM/RedHat, Oracle demande Ă  garder Linux ouvert et gratuit IBM ne veut pas publier le code de RHEL car elle doit payer ses ingĂ©nieurs Alors que RedHat a pu maintenir son modĂšle Ă©conomique durante des annĂ©es L’article revient sur CentOS qu’IBM “a tuĂ©â€ en 2020 Oracle continue ses Ă©fforts de rendre Linux ouvert et libre Oracle Linux continuera Ă  ĂȘtre compatible avec RHEL jusqu’à la version 9.2, aprĂšs ça sera compliquĂ© de maintenir une comptabilitĂ© Oracle embauche des dev Linux Oracle demande Ă  IBM de rĂ©cupĂ©rer le downstream d’Oracle et de le distribuer

    SUSE forke RHEL https://www.suse.com/news/SUSE-Preserves-Choice-in-Enterprise-Linux/

    SUSE est la sociĂ©tĂ© derriĂšre Rancher, NeuVector, et SUSE Linux Enterprise (SLE) Annonce un fork de RHEL $10M d’investissement dans le projet sur les prochaines annĂ©es CompatibilitĂ© assurĂ©e de RHEL et CentOS Web

    Google revent sont service de nom de domaine a Squarespace https://www.reddit.com/r/webdev/comments/14agag3/squarespace_acquires_google_domains/

    et c’était pas gratuit donc on n’est pas censĂ© etre le produit :wink: Squarespace est une entreprise amĂ©ricaine spĂ©cialisĂ©e dans la crĂ©ation de site internet Squarespace est un revendeur de Google Workspace depuis longtemps La vente devrait se finaliser en Q3 2023

    Petite introduction à WebGPU en français https://blog.octo.com/connaissez-vous-webgpu/

    Data

    Avec la mode des Large Language Models, on parle de plus en plus de bases de donnĂ©es vectorielles, pour stocker des “embeddings” (des vecteurs de nombre flottant reprĂ©sentant sĂ©mantiquement du texte, ou mĂȘme des images). Un article explique que les Vecteurs sont le nouveau JSON dans les bases relationnelles comme PostgreSQL https://jkatz05.com/post/postgres/vectors-json-postgresql/

    L’article parle en particulier de l’extension pgVector qui est une extension pour PostgreSQL pour rajouter le support des vectors comme type de colonne https://github.com/pgvector/pgvector Google Cloud annonce justement l’intĂ©gration de cette extension vectorielle Ă  CloudSQL pour PostgreSQL et Ă  AlloyDB pour PostgreSQL https://cloud.google.com/blog/products/databases/announcing-vector-support-in-postgresql-services-to-power-ai-enabled-applications Il y a Ă©galement une vidĂ©o, un notebook Colab, et une article plus dĂ©taillĂ© techniquement utilisant LangChain https://cloud.google.com/blog/products/databases/using-pgvector-llms-and-langchain-with-google-cloud-databases Mais on voit aussi Ă©galement Elastic amĂ©liorer Lucene pour utiliser le support des instructions SIMD pour accĂ©lĂ©rer les calculs vectoriels (produit scalaire, distance euclidienne, similaritĂ© cosinus) https://www.elastic.co/fr/blog/accelerating-vector-search-simd-instructions Outillage

    Le sondage de StackOverflow 2023 https://survey.stackoverflow.co/2023/

    L’enquĂȘte a Ă©tĂ© rĂ©alisĂ©e auprĂšs de 90 000 dĂ©veloppeurs dans 185 pays. Les dĂ©veloppeurs sont plus nombreux (+2%) que l’an dernier Ă  travailler sur site (16% sur site, 41% remote, 42% hybrid) Les dĂ©veloppeurs sont Ă©galement de plus en plus nombreux Ă  utiliser des outils d’intelligence artificielle, avec 70 % d’entre eux dĂ©clarant les utiliser (44%) ou prĂ©voyant de les utiliser (25) dans leur travail. Les langages de programmation les plus populaires sont toujours JavaScript, Python et HTML/CSS. Les frameworks web les plus populaires sont Node, React, JQuery. Les bases de donnĂ©es les plus populaires sont PostgreSQL, MySQL, et SQLite. Les systĂšmes d’exploitation les plus populaires sont Windows puis macOS et Linux. Les IDE les plus populaires sont Visual Studio Code, Visual Studio et IDEA IntelliJ.

    Les différents types de déplacement dans Vim https://www.barbarianmeetscoding.com/boost-your-coding-fu-with-vscode-and-vim/moving-blazingly-fast-with-the-core-vim-motions/

    JetBrains se mets aussi à la mode des assistants IA dans l’IDE https://blog.jetbrains.com/idea/2023/06/ai-assistant-in-jetbrains-ides/

    une intĂ©gration avec OpenAI mais aussi de plus petits LLMs spĂ©cifiques Ă  JetBrains un chat intĂ©grĂ© pour discuter avec l’assistant, puis la possibilitĂ© d’intĂ©grer les snippets de code lĂ  oĂč se trouve le curseur possibilitĂ© de sĂ©lectionner du code et de demander Ă  l’assistant d’expliquer ce que ce bout de code fait, mais aussi de suggĂ©rer un refactoring, ou de rĂ©gler les problĂšmes potentiels on peut demander Ă  gĂ©nĂ©rer la JavaDoc d’une mĂ©thode, d’une classe, etc, ou Ă  suggĂ©rer un nom de mĂ©thode (en fonction de son contenu) gĂ©nĂ©ration de message de commit il faut avoir un compte JetBrains AI pour y avoir accĂšs

    Des commandes macOS plus ou moins connues https://saurabhs.org/advanced-macos-commands

    caffeinate — pour garder le mac Ă©veillĂ© pbcopy / pbpaste — pour interagir avec le clipboard networkQuality — pour mesurer la rapiditĂ© de l’accĂšs Ă  internet sips — pour manipuler / redimensionner des images textutil — pour covertir des fichers word, texte, HTML screencapture — pour faire un screenshot say — pour donner une voix Ă  vos commandes

    Le sondage de la communauté ArgoCD https://blog.argoproj.io/cncf-argo-cd-rollouts-2023-user-survey-results-514aa21c21df

    Un client d’API open-source et cross-platform pour GraphQL, REST, WebSockets, Server-sent events et gRPC https://github.com/Kong/insomnia

    Architecture

    Moderniser l’architecture avec la decouverte via le domain driven discovery https://www.infoq.com/articles/architecture-modernization-domain-driven-discovery/?utm_source=twitter&utm_medium=link&utm_campaign=calendar

    Un article trĂšs dĂ©taillĂ© pour moderniser son architecture en utilisant une approche Domain-Driven Discovery qui se fait en 5 Ă©tapes: Encadrer le problĂšme – Clarifier le problĂšme que vous rĂ©solvez, les personnes touchĂ©es, les rĂ©sultats souhaitĂ©s et les contraintes de solution. Analyser l’état actuel – Explorer les processus opĂ©rationnels et l’architecture des systĂšmes existants afin d’établir une base de rĂ©fĂ©rence pour l’amĂ©lioration. Explorer l’état futur – Concevoir une architecture modernisĂ©e fondĂ©e sur des contextes dĂ©limitĂ©s, Ă©tablir des prioritĂ©s stratĂ©giques, Ă©valuer les options et crĂ©er des solutions pour l’état futur. CrĂ©er une feuille de route – CrĂ©er un plan pour moderniser l’architecture au fil du temps en fonction des flux de travail ou des rĂ©sultats souhaitĂ©s.

    Récemment, Sfeir a lancé son blog de développement sur https://www.sfeir.dev/

    plein d’articles techniques sur de nombreux thĂšmes : front, back, cloud, data, AI/ML, mobile aussi des tendances, des success stories par exemple dans les derniers articles : on parle d’Alan Turing, du Local Storage en Javascript, des la prĂ©paration de certifications React, l’impact de la cybersĂ©curitĂ© sur le cloud

    Demis Hassabis annonce travailler sur une IA nommée Gemini qui dépassera ChatGPT https://www.wired.com/story/google-deepmind-demis-hassabis-chatgpt/

    Demis Hassabis CEO de Google DeepMind créateur de AlphaGOet AlphaFold Travaille sur une IA nommé Gemini qui dépasserait ChatGPT de OpenAI Similair à GPT-4 mais avec des techniques issues de AlphaGO Encore en developpement, va prendre encore plusieurs mois Un remplaçant a Bard? Méthodologies

    Approcher l’agilitĂ© par les traumatismes (de developement) passĂ©s des individus https://www.infoq.com/articles/trauma-informed-agile/?utm_campaign=infoq_content&utm_source=twitter&utm_medium=feed&utm_term=culture-methods

    Nous subissons tous un traumatisme du dĂ©veloppement qui rend difficile la collaboration avec d’autres - une partie cruciale du travail dans le dĂ©veloppement de logiciels agiles. Diriger d’une maniĂšre tenant compte des traumatismes n’est pas pratiquer la psychothĂ©rapie non sollicitĂ©e, et ne justifie pas les comportements destructeurs sans les aborder. Être plus sensible aux traumatismes dans votre leadership peut aider tout le monde Ă  agir de façon plus mature et plus disponible sur le plan cognitif, surtout dans des situations Ă©motionnellement difficiles. Dans les milieux de travail tenant compte des traumatismes, les gens accordent plus d’attention Ă  leur Ă©tat physique et Ă©motionnel. Ils s’appuient aussi davantage sur le pouvoir de l’intention, fixent des objectifs d’une maniĂšre moins manipulatrice et sont capables d’ĂȘtre empathiques sans s’approprier les problĂšmes des autres. Loi, sociĂ©tĂ© et organisation

    Mercedes va rajouter de l’intelligence artificielle dans ses voitures https://azure.microsoft.com/en-us/blog/mercedes-benz-enhances-drivers-experience-with-azure-openai-service/

    Programme bĂ©ta test de 3 mois pour le moment Assistance vocale “Hey Mercedes” Permet de discuter avec la voiture pour trouver son chemin, concocter une recette, ou avoir tout simplement des discussions Ils travaillent sur des plugin pour reserver un resto, acheter des tickets de cinĂ©ma

    Free software vs Open Source dans le contexte de l’intelligence artificielle par Sacha Labourey https://medium.com/@sachalabourey/ai-free-software-is-essential-to-save-humanity-86b08c3d4777

    on parle beaucoup d’AI et d’open source mais il manque la dimension de controle des utilisateurs finaux Stallman a crĂ©e la FSF par peur de la notion d’humain augmentĂ© par des logiciels qui sont controllĂ©s par d’autres (implants dans le cerveau etc) d’ou la GPL et sa viralitĂ© qui propage la capacitĂ© a voir et modifier le conde que l’on fait tourner dans le debat AI, ce n’est pas seulement open source (casser oligopolie) mais aissu le free software qui est en jeu

    La folie du Cyber Resilience Act (CRA) europeen https://news.apache.org/foundation/entry/save-open-source-the-impending-tragedy-of-the-cyber-resilience-act

    Au sein de l’UE, la loi sur la cyber-rĂ©silience (CRA) fait maintenant son chemin Ă  travers les processus lĂ©gislatifs (et doit faire l’objet d’un vote clĂ© le 19 juillet 2023). Cette loi s’appliquera Ă  un large Ă©ventail de logiciels (et de matĂ©riel avec logiciel intĂ©grĂ©) dans l’UE. L’intention de ce rĂšglement est bonne (et sans doute attendue depuis longtemps) : rendre le logiciel beaucoup plus sĂ»r. Le CRA a une approche binaire: oui/non et considĂšre tout le monde de la mĂȘme maniĂšre Le CRA rĂ©glementerait les projets Ă  source ouverte Ă  moins qu’ils n’aient « un modĂšle de dĂ©veloppement entiĂšrement dĂ©centralisĂ© ». Mais les modĂšles OSS sont de complexes mĂ©langes de pur OSS et Ă©diteurs de logiciels les entreprises commerciales et les projets open source devront ĂȘtre beaucoup plus prudents quant Ă  ce que les participants peuvent travailler sur le code, quel financement ils prennent, et quels correctifs ils peuvent accepter. Certaines des obligations sont pratiquement impossibles Ă  respecter, par exemple l’obligation de « livrer un produit sans vulnĂ©rabilitĂ©s exploitables connues ». Le CRA exige la divulgation de vulnĂ©rabilitĂ©s graves non corrigĂ©es et exploitĂ©es Ă  l’ENISA (une institution de l’UE) dans un dĂ©lai mesurĂ© en heures, avant qu’elles ne soient corrigĂ©es. (complĂštement opposĂ© aux bonnes pratiques de sĂ©cu) Une fois de plus une bonne idĂ©e Ă  l’origine mais trĂšs mal implĂ©mentĂ©e qui risque de faire beaucoup de dommages

    Octave Klaba, avec Miro, son frÚre, et la Caisse des DépÎts, finalisent la création de Synfonium qui va maintenant racheter 100% de Qwant et 100% fe Shadow. Synfonium est détenue à 75% par Jezby Venture & Deep Code et à 25% par la CDC. https://twitter.com/i/web/status/1673555414938427392

    L’un de rĂŽles de Synfonium est de crĂ©er la masse critique des utilisateurs et des clients B2C & B2B qui vont pouvoir utiliser tous ces services gratuits et payants Vous y retrouverez le moteur de recherche, les services gratuits, la suite collaborative, le social login, mais aussi les services de nos partenaires tech. Le but est de crĂ©er une plateforme dans le Cloud SaaS EU qui respectent nos valeurs et nos lois europĂ©ennes

    Yann LeCun : «L’intelligence artificielle va amplifier l’intelligence humaine» https://www.europe1.fr/emissions/linterview-politique-dimitri-pavlenko/yann-lecun-li[
]gence-artificielle-va-amplifier-lintelligence-humaine-4189120

    Conférences

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

    2-3 septembre 2023 : SRE France SummerCamp - Chambéry (France) 6 septembre 2023 : Cloud Alpes - Lyon (France) 8 septembre 2023 : JUG Summer Camp - La Rochelle (France) 14 septembre 2023 : Cloud Sud - Remote / Toulouse (France) 18 septembre 2023 : Agile Tour Montpellier - Montpellier (France) 19-20 septembre 2023 : Agile en Seine - Paris (France) 19 septembre 2023 : Salon de la Data Nantes - Nantes (France) & Online 21-22 septembre 2023 : API Platform Conference - Lille (France) & Online 22 septembre 2023 : Agile Tour Sophia Antipolis - Valbonne (France) 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) 6 octobre 2023 : DevFest Perros-Guirec - Perros-Guirec (France) 10 octobre 2023 : ParisTestConf - Paris (France) 11-13 octobre 2023 : Devoxx Morocco - Agadir (Morocco) 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) 19-20 octobre 2023 : Agile Tour Rennes - Rennes (France) 26 octobre 2023 : Codeurs en Seine - Rouen (France) 25-27 octobre 2023 : ScalaIO - Paris (France) 26-27 octobre 2023 : Agile Tour Bordeaux - Bordeaux (France) 26-29 octobre 2023 : SoCraTes-FR - Orange (France) 10 novembre 2023 : BDX I/O - Bordeaux (France) 15 novembre 2023 : DevFest Strasbourg - Strasbourg (France) 16 novembre 2023 : DevFest Toulouse - Toulouse (France) 23 novembre 2023 : DevOps D-Day #8 - Marseille (France) 30 novembre 2023 : PrestaShop Developer Conference - Paris (France) 30 novembre 2023 : WHO run the Tech - Rennes (France) 6-7 décembre 2023 : Open Source Experience - Paris (France) 7 décembre 2023 : Agile Tour Aix-Marseille - Gardanne (France) 8 décembre 2023 : DevFest Dijon - Dijon (France) 7-8 décembre 2023 : TechRocks Summit - Paris (France) Nous contacter

    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/

  • Guillaume, Arnaud et Emmanuel discutent des nouvelles de mai et juin. La communautĂ© Rust, WebAssembly. Guava, Debezium, Kafka, de flame graph, d’open source et bien sĂ»r les large language models. On rĂ©pond aussi Ă  la question fondamentale: mais pourquoi Maven n’a pas de fichier .lock ?

    Enregistré le 9 juin 2023

    TĂ©lĂ©chargement de l’épisode LesCastCodeurs-Episode-297.mp3

    News Langages

    Lors de Microsoft BUILD 2023, un des fondateurs de OpenAI a fait une excellente présentation de Large Language Models, des GPT https://build.microsoft.com/en-US/sessions/db3f4859-cd30-4445-a0cd-553c3304f8e2

    Il parle du fonctionnement des LLM, comment/pourquoi ils arrivent Ă  gĂ©nĂ©rer ce qu’ils gĂ©nĂšrent Le fine-tuning, l’apprentissage renforcĂ© avec feedback humain, l’art du prompting Des patterns comme Chain of Thought (CoT) ou ReAct (Reflect then Act)

    Leaning Technologies annonce l’arrivĂ©e prochaine de CheerpJ 3 : le retour de Java dans la navigateur, grĂące Ă  WebAssembly https://leaningtech.com/announcing-cheerpj-3-0-a-jvm-replacement-in-html5-and-webassembly-to-run-java-applications-and-applets-on-modern-browsers/

    Avant la version 3.0, CheerpJ utilisait une approche AOT (ahead of time compilation) qui nĂ©cessitait aussi une Ă©tape d’intĂ©gration continue pour transformer aussi toutes les dĂ©pendances JAR associĂ©es Ă  un projet Avec la version 3.0, qui devrait sortir cet Ă©tĂ©, CheerpJ adopte une approche JIT (Just In Time compilation) qui ressemble plus Ă  l’approche de Java lui mĂȘme Plus besoin non plus de version custom d’OpenJDK Les Applets vous avaient manquĂ© ? Elles sont de retour avec WebAssembly :smile:

    CommunautĂ© RUST: Il y a de l’eau dans le gaz https://www.jntrnr.com/why-i-left-rust/

    Plus d’infos https://gist.github.com/fasterthanlime/42da9378768aebef662dd26dddf04849 liĂ© au backchannel et un petit groupe qui essaie de faire les choses bien mais qui derappe de l’exterieur en gros ils ont un process interne pour prendre des decisions avec ce process ils ont invitĂ© une personne pas super pro Rust a faire la keynote a RustConf d’autres du commitĂ© ont vu ca et on discutĂ© en backchannel pour revenir en arriere de la decision (sans suivre le process) il y a eu une semaine de pause avant action mais pas annoncĂ© le speaker a ete dĂ© keynotĂ© et a donc refusĂ© de venir a la conf et paf, ca enerve des gens decisionaire et ils demissionnent Bref des gens qui veulent faire le bien mais en cercle un peu trop fernĂ© et paf

    Les gens de Wasmer Ă©tendent WASI avec WASIX, on rajoutant le support POSIX, les threads
 permettant de compiler vers WASM plein de projet C/C++ ou Rust, comme cURL ou autre https://wasmer.io/posts/announcing-wasix

    ca frotte un oeu entre innovation et standardisation dans la communaite WASM WASMER sont un peu les cowboys startuper par exemple ils ont essayĂ© de deposer la marque WebAssemble au nez et Ă  la barbe de la communautĂ© donc la reaction du coeur de la communautĂ© a cette annonce est plutĂŽt calme WASI c’est standard mais ca prend du temps a maturer WASIX c’est cool et dispo maintenant mais c’est un produit d’une sociĂ©tĂ© spĂ©cifique, donc pas de portabilitĂ© Librairies

    Guava 32 est sorti et beaucoup de choses annotées en @Beta ne le sont plus https://www.reddit.com/r/java/comments/13w2l8w/guava_320_released_today_and_the_beta_annotation/

    ont eu des API en @Beta pendant longtemps pour proteger des risques de changements en pratique quasi personne ne se limitait au non beta, et elles n’ont pas bougĂ© ces API ou peu donc ils ont enlevĂ© @Beta de la plupart beaucoup de parties de Guava sont dans le JDK, le cache est dans Caffeine des bons echanges dans les commentaires entre les utilisateurs et Kevin un des mainteneurs chez Google

    Comment dĂ©marrer avec l’API PaLM de Google, mais en Java! https://glaforge.dev/posts/2023/05/30/getting-started-with-the-palm-api-in-the-java-ecosystem/

    Guillaume a Ă©crit une petite application qui gĂ©nĂšre des histoires pour enfants avec un Large Language Model (l’API PaLM) https://bed-time-stories.web.app/ Le code est dispo sur Github https://github.com/glaforge/bedtimestories Il explique Ă©galement le processus incrĂ©mentale des prompts qui aident Ă  gĂ©nĂ©rer aussi le contenu de l’application https://glaforge.dev/posts/2023/06/08/creating-kids-stories-with-generative-ai/ Infrastructure

    Debezium 2.2 https://debezium.io/blog/2023/04/20/debezium-2-2-final-released/

    Experimental, opt-in Parallel Snapshots Incremental snapshots with surrogate keys Quarkus 3 support Ingestion of Oracle changes from logical standby instances Google Spanner improvementsNew Debezium Server sinks for Infinispan, RabbitMQ, and RocketMQ New Storage APIs for Amazon S3 and RocketMQ Many MongoDB improvements Cassandra connector for Cassandra Enterprise

    Un article sur l’utilisation de Kafka par CloudFlare https://www.infoq.com/articles/kafka-clusters-cloudflare/?utm_campaign=infoq_content&utm_source=twitter&utm_medium=feed&utm_term=architecture-design

    c’est du “classique” mais bon de se le faire rappeler beaucoup d’evenements CloudFlare passent pas Kafka pour processing Kafka en tant que bus generique Ils ont imposĂ© un message unique par topic via protobuf ils sont une Application Service team (internal developer platform) depuis peu de temps gitops pour creation de topic etc dĂ©veloppĂ© un connector framework declaratif pour Ă©tendre le pannel de patrons d’architecture disponibles developĂ© des SDKs d’access a KAfka avec monitoring (prometheus) sympa a lire

    Post mortem du problĂšme chez datadogHQ https://www.datadoghq.com/blog/2023-03-08-multiregion-infrastructure-connectivity-issue/

    data dog a perdu tous ces services dans la plupart ou toutes ses regions pendant 3 heures avant la premiere recuperation et 10 heures au total pour la recuperation totale Equipe : 10 senior engineering leaders, about 70 local incident commanders and a pool of 450 to 750 incident responders active throughout the incident, which required four shifts to bring the incident to full resolution. cause: une mise a jour de systemd appliquĂ© sur la plupart de leurs VM en quasi parallele qui a effacer les routes des container et ne les a aps remis ; c’est un cas qui n’arrive pas au reboot d’un noeud (init sequence) des 10000s noeuds impactĂ©s en general ils font du rollout par region en enlevant les noeuds etc mais le base os avait un legacy update channel activĂ© (vs gere pas les equipes de datadog manuellement) les noeuds de controlleurs qui sont cense recycler les noeuds n’ont pu le faire vu le volume de noeud et surtout parce qu’eux meme Ă©taient effectĂ©s l’autre article Cloud

    Le data center parisien europe-west9-a est en panne depuis 3 semaines https://www.lebigdata.fr/data-center-panne

    un feu s’est dĂ©clenchĂ© qui a touchĂ© une zone le DC reste opĂ©rationnel sur les zones non touchĂ©e sauf BigTable qui a besoin de la zone touchĂ©e les autres services fonctionnent sauf les applis utilisateurs qui ne tournaiuent que sur la zone affectĂ© Outillage

    Podman Desktop 1.0 est sorti https://podman-desktop.io/blog/podman-desktop-release-1.0

    pas grand chose a dire que c’est la 1.0 “Works on my machine”

    Contract testing with Pact https://hollycummins.com/contract-testing-devoxx-greece/

    Conference quand on change un microservice l’autre casse les tests d’integration sont lent, instable et demande des grosses machines ou des environnements remote de dev mock / unit tests ne sont pas vraiment le code de l’autre Ă©quipe D’oĂč Contract test qui vit entre les end to end et les unit tests. Peut partir d’un test mock et rempalcer avec pact cote consommateur en faisait tourner, un pack listener enregistre la declaration (le DSL) et le retours attendus / generĂ©s par l’appel du test copier ce fichier vers le producteur copier a la main, dans le repo, via a broker ajoute un test pact cote producteur qui va exercer le JSON et verifier que cela marche tests de pack sont plus profonds qu’un test OPENAPI consommateur utilise pact comme mock et verifie le provider wrt le contract du mock

    Pourquoi Maven n’a pas de fichier lock ? https://www.reddit.com/r/Maven/comments/vkcmys/why_maven_doesnt_have_a_lock_file_like/?utm_source=share&utm_medium=ios_app&utm_name=ioscss&utm_content=1&utm_term=9

    conversation interessance sur les fichiers .lock dans les builds Par exemple ruby a le Gemfile.lock, npm pareil mais pas Java? Fondamentalement c’est du aux valeurs par defaut initiales et Ă  la culture de la communautĂ© les version range sont peu ou pas utilisĂ©s en Maven alors que le default dans d’autres plateformes la poule et l’oeuf

    Simplifier les flame graph avec jbang https://someth2say.wordpress.com/2023/06/04/jbang-and-flame-graphs/

    discute les flame graph pour le temps comsommĂ© et pas un call graph hauteur c’est la profondeur d’appel ne regarder que la largeur, pas l’ordre pas quand et ou une action est faite mais qui l’a fait reste discute comment utiliser jbang pour lancer le prgramme et le javaagent

    Les modĂ©rateurs de Stack Overflow en greve contre le flux de rĂ©ponses d’intelligence artificeille https://openletter.mousetail.nl/

    le ban des contenus generes par l’IA a ete levĂ© discrĂštement par stack overflow peur du flux de donnĂ©es massif et des hallucinations difficiles Ă  dĂ©tecter sans passer du temps pas de consensus communautaire stackoverflow est une des sources trustĂ©es pour les LLM des intelligences arificielles generatives (serpent qui se mord la queue) les modĂ©rateurs font tourner l’anti spam, gere les flag levĂ©s, ferment ou effacent les entrĂ©es, genre les bots qui detectent le plagiat etc. 414 votants des les premiers heures

    Just, un petit outil en ligne de commande avec une syntaxe inspirée de make, pour exécuter des commandes fréquentes dans nos projets https://glaforge.dev/posts/2023/06/07/just-a-handy-command-line-tool/

    Syntaxe proche de celle de make PossibilitĂ© de dĂ©finir des dĂ©pendances entre tĂąches Support de paramĂštres Peut charger des fichier .env S’installe sur tous les systĂšmes d’exploitation qu’on aime bien et qu’on n’aime pas aussi MĂ©thodologies

    AWS retire ses documentations en Open Source https://www.infoq.com/news/2023/06/aws-documentation-github/

    ils ont open sourcĂ© en espĂ©rant des contributions il y a deux ans mais sans changer les approche en interne resultat copie de repo de l’interieur vers l’exterieur tracker de travail interne != externe c’était plus compliquĂ© leçon, embrace entiĂšrement sinon les frictions sont compliquĂ©es

    Un guide pour communiquer avec l’IA: https://learnprompting.org/

    Gratuit et open source Prompt Engineering ou comment rédiger vos prompts Plusieurs niveau (Basic, Intermediaire, Avancé..) Défini plein de concepts: Prompt, Few Shot Prompt, LLMs
 Loi, société et organisation

    Migration de Twitter vers Mastodon (ou plutît “dual run”) https://glaforge.dev/talks/2023/06/09/from-bird-to-elephant-starting-a-new-journey-on-mastodon/

    Présentation de Guillaume à Devoxx France et GrÚce Avec code sur Github pour un bot Mastodon: https://github.com/glaforge/stootistics Et un service en ligne pour voir la popularité de ses derniers posts sur Mastodon https://stootistics.web.app/ Conférences

    Aurelie Vache publie sont agenda des conferences via le site: https://developers.events/

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

    14-15 juin 2023 : OW2 openSource Conf - Paris (France) 14-17 juin 2023 : VivaTech (Viva Technology) - https://vivatechnology.com/) - Paris (France) 15-16 juin 2023 : Le Camping des Speakers - Baden (France) 15-17 juin 2023 : Pas Sage En Seine - Choisy-le-Roi (France) 20 juin 2023 : Mobilis in Mobile - Nantes (France) 20 juin 2023 : Cloud Est - Villeurbanne (France) 20-22 juin 2023 : Adeo DevSummit - Lille (France) 21-23 juin 2023 : Rencontres R - Avignon (France) 23 juin 2023 : Unconf HackYourJob - RĂ©gion lyonnaise (France) 28-30 juin 2023 : Breizh Camp - Rennes (France) 29 juin 2023 : Google Cloud Summit France - Paris (France) 29-30 juin 2023 : Sunny Tech - Montpellier (France) 29-30 juin 2023 : Agi’Lille - Lille (France) 7-9 juillet 2023 : Nantes Maker Campus - Nantes (France) 2-3 septembre 2023 : SRE France SummerCamp - ChambĂ©ry (France) 6 septembre 2023 : Cloud Alpes - Lyon (France) 8 septembre 2023 : JUG Summer Camp - La Rochelle (France) 14 septembre 2023 : Cloud Sud - Remote / Toulouse (France) 18 septembre 2023 : Agile Tour Montpellier - Montpellier (France) 19-20 septembre 2023 : Agile en Seine - Paris (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) 6 octobre 2023 : DevFest Perros-Guirec - Perros-Guirec (France) 10 octobre 2023 : ParisTestConf - Paris (France) 11-13 octobre 2023 : Devoxx Morocco - Agadir (Morocco) 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) 19-20 octobre 2023 : Agile Tour Rennes - Rennes (France) 26 octobre 2023 : Codeurs en Seine - Rouen (France) 25-27 octobre 2023 : ScalaIO - Paris (France) 26-27 octobre 2023 : Agile Tour Bordeaux - Bordeaux (France) 10 novembre 2023 : BDX I/O - Bordeaux (France) 15 novembre 2023 : DevFest Strasbourg - Strasbourg (France) 16 novembre 2023 : DevFest Toulouse - Toulouse (France) 6-7 dĂ©cembre 2023 : Open Source Experience - Paris (France) 7-8 dĂ©cembre 2023 : TechRocks Summit - Paris (France) 31 janvier 2024-3 fĂ©vrier 2024 : SnowCamp - Grenoble (France) 19-22 mars 2024 : KubeCon + CloudNativeCon Europe 2024 - Paris (France) 28-29 mars 2024 : SymfonyLive Paris 2024 - Paris (France) 17-19 avril 2024 : Devoxx France - Paris (France) 25-26 avril 2024 : MiXiT - Lyon (France) 25-26 avril 2024 : Android Makers - Paris (France) Nous contacter

    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/

  • Dans cet Ă©pisode, Antonio, Emmanuel et Guillaume reviennent sur les nouveautĂ©s et annonces faites Ă  Google I/O 2023 : de nouveaux tĂ©lĂ©phones Pixel qui se plient ou pas, et surtout de l’intelligence artificielle du sol au plafond ! Que ce soit dans Android, dans Google Workspace, dans Google Cloud, une tonne de produits passe en mode survitaminĂ© Ă  l’IA. Guillaume, Antonio et Emmanuel discutent aussi de l’impact qu’ils voient sur l’AI, et de comment les Large Language Models sont raffinĂ©s et pourquoi on les fait halluciner, de subtilitĂ©s du langage des signes.

    Enregistré le 23 mai 2023

    TĂ©lĂ©chargement de l’épisode LesCastCodeurs-Episode-296.mp3

    Google I/O 2023

    Site web : https://io.google/2023/

    Keynote principale : https://io.google/2023/program/396cd2d5-9fe1-4725-a3dc-c01bb2e2f38a/

    Keynote développeur : https://io.google/2023/program/9fe491dd-cadc-4e03-b084-f75e695993ea/

    Vidéo résumée en 10 minutes de toutes les annonces : https://www.youtube.com/watch?v=QpBTM0GO6xI&list=TLGGCy91ScdjTPYxNjA1MjAyMw

    Vidéo de toutes les sessions techniques : https://io.google/2023/program/?q=technical-session

    Google I/O s’est tenu il y a 10 jours en Californie, dans l’amphithĂ©Ăątre de Shoreline, prĂšs du campus de Google.

    Seulement 2000 personnes sur place, un chat et un jeu en ligne pour assister Ă  distance.

    Jeu en ligne I/O Flip créé avec Flutter, Dart, Firebase, et Cloud Run, et tous les assets graphiques générés par Generative AI https://blog.google/technology/ai/google-card-game-io-flip-ai/

    Des Pixels plein les yeux !

    Des détails sur le design des nouveaux appareils : https://blog.google/products/pixel/google-pixel-fold-tablet-7a-design/

    Pixel Fold

    Article : https://blog.google/products/pixel/google-pixel-fold/

    Premier tĂ©lĂ©phone foldable de Google (aprĂšs Samsung et Oppo) Un Ă©cran sur le dessus, et un grand Ă©cran pliable Ă  l’intĂ©rieur Pratique pour la traduction oĂč peut voir une discussion traduire en deux langues d’un cĂŽtĂ© sur un Ă©cran et dans l’autre langue sur l’autre Utilisation crĂ©ative de la pliure : mode “laptop”, pour les selfies, pour poser l’appareil pour des photos de nuit Par contre
 pas disponible en France, et tout de mĂȘme presque 1900€ ! Pixel Tablet

    Article : https://blog.google/products/pixel/google-pixel-tablet/

    Une belle tablette de 11 pouces, avec un dock de recharge avec enceinte intĂ©grĂ©e Processeur Tensor G2, Chromecast intĂ©grĂ© C’est un peu comme le Google Nest Hub Max mais avec un Ă©cran dĂ©tachable Une coque pratique avec un trĂ©pied intĂ©grĂ© et qui n’empĂȘche pas de recharger la tablette sur le dock En mode dock, c’est comme l’écran du Google Home App, et dĂšs qu’on la dĂ©croche, on est en mode multi-utilisateur, chacun avec son profil Pixel 7a

    Article : https://blog.google/products/pixel/pixel-7a-io-2023/

    Écran de 6 pouces Triple appareil photo (grand angle, principal, et photo avant pour les selfies) 509 euros Magic Eraser pour effacer les trucs qu’on veut pas dans la photo, Magic Unblur pour rendre une photo floue plus nette, Real Tone pour rendre les peaux foncĂ©es plus naturelles Android

    Article quoi de neuf dans Android : https://blog.google/products/android/android-updates-io-2023/

    Dans Messages, Magic Compose dans les conversations, l’IA nous aide Ă  concevoir nos messages, dans diffĂ©rents styles (plus pro, plus fun, dans le style de Shakespeare) Android 14 devrait arriver un peu plus tard dans l’annĂ©e, avec plus de possibilitĂ©s de customisation (fond d’écran gĂ©nĂ©rĂ© par Gen AI, fond d’écran Emojis, couleurs associĂ©es, fond d’écran 3D issus de ses photos) https://blog.google/products/android/new-android-features-generative-ai/ StudioBot : un chatbot intĂ©grĂ© Ă  Android Studio pour aider au dĂ©veloppement d’applis Android https://io.google/2023/program/d94e89c5-1efa-4ab2-a13a-d61c5eb4e49c/ 800 millions d’utilisateurs sont passĂ©s Ă  RCS pour le messaging Adaptation de 50 applications Android pour s’adapter aux foldables https://blog.google/products/android/android-app-redesign-tablet-foldable/ Wear OS 4 va rajouter le backup restore quand on change de montre et autres nouveautĂ©s https://blog.google/products/wear-os/wear-os-update-google-io-2023/ 800 chaĂźnes TV gratuites dans Google TV sur Android et dans la voiture Android Auto va ĂȘtre disponible de 200 millions de voitures
    https://blog.google/products/android/android-auto-new-features-google-io-2023/ Waze disponible globalement sur le playstore dans toutes les voitures avec Android Auto Google Maps

    Article : https://blog.google/products/maps/google-maps-updates-io-2023/

    Maps propose 20 milliards de km de direction tous les jours Immersive View for Routes 15 villes : Amsterdam, Berlin, Dublin, Florence, Las Vegas, London, Los Angeles, Miami, New York, Paris, San Francisco, San Jose, Seattle, Tokyo et Venice PossibilitĂ© pour les dĂ©veloppeurs de s’intĂ©grer et rajouter des augmentations 3D, des marqueurs Google Photos

    Article Magic Editor : https://blog.google/products/photos/google-photos-magic-editor-pixel-io-2023/

    Magic Editor survitaminĂ© Ă  l’IA pour amĂ©liorer les photos, en dĂ©plaçant des gens, en rajoutant des parties coupĂ©es, ou bien rendre le ciel plus beau Possible que ce soit limitĂ© aux tĂ©lĂ©phones Pixel au dĂ©but Projets expĂ©rimentaux Project Starline (Ă©cran avec camĂ©ra 3D qui donne un rendu 3D de son interlocuteur comme s’il Ă©tait en face de soi) a Ă©tĂ© amĂ©liorĂ© pour prendre moins de place https://blog.google/technology/research/project-starline-prototype/ Universal Translator : une nouvelle expĂ©rimentation pour faire du doublage et traduction automatique avec synchronisation des mouvements des lĂšvres Project Tailwind, une sorte de notebook dans lequel on peut rajouter tous ses documents Ă  partir de drive, et poser des questions sur leur contenu, proposer des rĂ©sumĂ©s, de faire du brainstorming sur ces thĂšmes https://thoughtful.sandbox.google.com/about MusicLM : un large language model pour gĂ©nĂ©rer de la musique Ă  partir d’un texte de prompt (waitlist pour s’inscrire) https://blog.google/technology/ai/musiclm-google-ai-test-kitchen/ Project Gameface : utilisation des expressions du visage pour commander une souris et un ordinateur, pour les personnes qui ont perdu leur mobilitĂ© https://blog.google/technology/ai/google-project-gameface/ VisualBlocks : pour expĂ©rimenter dans une interface drag’n drop avec le dĂ©veloppement de modĂšles pour Tensorflow lite et js https://visualblocks.withgoogle.com/ MakerStudio : pour les bidouilleurs et dĂ©veloppeurs https://makersuite.google.com/
    https://developers.googleblog.com/2023/05/palm-api-and-makersuite-moving-into-public-preview.html Search Labs

    Article : https://blog.google/products/search/generative-ai-search/

    ExpĂ©rimentations pour rajouter l’IA gĂ©nĂ©rative dans Google Search Faire des recherches avec des requĂȘtes avec des phrases plus complexes, en intĂ©grant des rĂ©ponses comme Bard, avec des liens, des suggestions d’autres recherches associĂ©es Mais aussi proposer des publicitĂ©s mieux ciblĂ©es On peut s’inscrire Ă  Search Labs pour tester cette nouvelle expĂ©rience, mais au dĂ©but juste en Anglais et juste pour les US Des intĂ©grations avec Google Shopping pour proposer et filtrer des produits qui correspondent Ă  la requĂȘte Recherche Ă  l’aide d’image, avec Google Lens : 12 milliards de recherches visuelles par mois Palm et Bard Annonce du modĂšle LLM Palm 2 utilisĂ© dans Bard et dans Google Cloud https://blog.google/technology/ai/google-palm-2-ai-large-language-model/ PaLM 2 est en cours d’intĂ©gration dans 25 produits de Google Supportera 100 langues diffĂ©rentes (pour l’instant seulement l’anglais, japonais et corĂ©en), avec dĂ©jĂ  les 40 langues les plus parlĂ©es d’ici la fin de l’annĂ©e Maintenant disponible dans 180 pays
 sauf l’Europe !!! CapacitĂ© de raisonnement accrue Peut coder dans une vingtaine de langages de programmation diffĂ©rents dont Groovy DiffĂ©rentes tailles de modĂšles : Gecko, Otter, Bison et Unicorn, mais le nombre de paramĂštres n’est pas communiquĂ©e, comme pour GPT-4 d’OpenAI Utilisable pour des requĂȘtes et pour du chat Des modĂšles dĂ©rivĂ©es fine-tunĂ©s Med-PaLM 2 sur du savoir mĂ©dical, sur l’analyse visuelle des radios et Sec-PaLM, entrainĂ© sur des cas d’utilisation sur le thĂšme de la cybersĂ©curitĂ©, pour aider Ă  dĂ©celer des scripts malicieux, des vecteurs d’attaque Sundar Pichai a aussi annoncĂ© que Google travaillait dĂ©jĂ  sur la prochaine Ă©volution de ses LLM avec un modĂšle appelĂ© Gemini. Peu de dĂ©tails Ă  part qu’il sera multimodal (en particulier recherche combinĂ©e image et texte par ex.) Partenariat et intĂ©gration de Adobe Firefly dans Bard pour gĂ©nĂ©rer des images https://blog.adobe.com/en/publish/2023/05/10/adobe-firefly-adobe-express-google-bard Duet AI pour Google Workspace

    Article : https://workspace.google.com/blog/product-announcements/duet-ai

    Dans Gmails et Docs, propose d’aider Ă  la rĂ©daction de vos emails et documents une extension de “smart compose” qui va permettre de gĂ©nĂ©rer des emails entiers, d’amĂ©liorer le style, de corriger la grammaire, Ă©viter les rĂ©pĂ©titions de texte Dans Docs, des nouveaux “smart chips” pour rajouter des variables, des templates Dans Slides, rajouter des images gĂ©nĂ©rĂ©es par IA Des prompts dans Sheets pour gĂ©nĂ©rer un draft de table Dans Google Meet, possibilitĂ© de crĂ©er une image de fond customisĂ©e avec Generative AI Ces amĂ©liorations font parties de Workspace Labs auquel on peut s’inscrire dans la liste d’attente https://workspace.google.com/labs-sign-up/ Google Cloud

    Intégration de Generative AI partout https://cloud.google.com/blog/products/ai-machine-learning/google-cloud-launches-new-ai-models-opens-generative-ai-studio

    Nouvelles VM A3 avec les GPUs H100 de Nvidia, idĂ©al pour l’entrainement de modĂšles de machine learning, avec 26 exaFlops de performance https://cloud.google.com/blog/products/compute/introducing-a3-supercomputers-with-nvidia-h100-gpus Trois nouveaux modĂšles LLM dans Vertex AI : Imagen (private preview) pour gĂ©nĂ©rer des images, Codey pour la gĂ©nĂ©ration de code, et Chirp pour la gĂ©nĂ©ration de la parole supportant 100 langues diffĂ©rentes avec 2 milliards de paramĂštres vocaux Model Garden : avec les modĂšles de machine learning y compris externes et open sources Ajout des embeddings pour le texte et l’image RLHF, Reinforcement Learning from Human Feedback bientĂŽt intĂ©grer pour Ă©tendre Vertex AI tuning et prompt design avec une boucle de feedback humaine Generative AI Studio pour tester ses prompts zero-shot, one-shot, multi-shots Duet AI pour Google Cloud https://cloud.google.com/blog/products/application-modernization/introducing-duet-ai-for-google-cloud Assistance de code dans VSCode et bientĂŽt les IDEs JetBrains grĂące au plugin Cloud Code, et dans Cloud Workstations. IntĂ©gration dans les IDEs d’un chat pour comme un compagnon pour discuter d’architecture, trouver les commandes Ă  lancer pour son projet Le modĂšle de code de Codey fonctionne sur une vingtaine de languages de programmation, mais un modĂšle fine-tunĂ© a Ă©tĂ© entrainĂ© sur toute la doc de Google Cloud, donc pourra aider en particulier sur l’utilisation des APIs de Google Cloud, ou l’utilisation de la ligne de commande gcloud Duet AI est aussi dans App Sheet, la plateforme low/no-code, et permettra de chatter avec un chatbot pour gĂ©nĂ©rer une application App Sheet Quoi de neuf dans Firebase https://firebase.blog/posts/2023/05/whats-new-at-google-io Web

    Article : https://developers.googleblog.com/2023/05/io23-developer-keynote-recap.html

    Flutter 3 et Dart 3.10 https://io.google/2023/program/7a253260-3941-470b-8a4d-4253af000119/ WebAssembly
    https://io.google/2023/program/1d176349-7cf8-4b51-b816-a90fc9d7d479/ WebGPU
    https://io.google/2023/program/0da196f5-5169-43ff-91db-8762e2c424a2/ Baseline
    https://io.google/2023/program/528a223c-a3d6-46c5-84e4-88af2cf62670/
    https://web.dev/baseline/ Nous contacter

    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/

  • Dans cet Ă©pisode, Arnaud, Antonio et Emmanuel dĂ©cortiquent les nouvelles d’avril et mai. On y discute Java 20, ecrire un profiler de zĂ©ro, Quarkus 3 (encore !), Micronaut 4, Podman, JReleaser, GitHub, CloudEvent, GraphQL, licenciements (encore !), et de la question a 1000 francs: librarie vs framework, quelle diffĂ©rence? Mais pas que.

    Enregistré le 12 mai 2023

    TĂ©lĂ©chargement de l’épisode LesCastCodeurs-Episode–295.mp3

    News Langages

    Un descriptif du changement de paiement d’Oracle JDK https://horstmann.com/unblog/2023–02–23/

    Cay Horstmann Explique OpenJDK avec plusieurs distributeurs PrefĂšre Adoptium dont celle par dĂ©faut est Eclipse Temurin Pour Oracle, beaucoup d’options de licenses (no-fee, binary code, OTM license) Oracle depense beaucoup pour Java La license en discussion est Java SE Universal Subscription Licensing passage de license par CPU (Java SE advanced) vers license par employĂ© (et une assiete large) Bref si vous ĂȘtes concernĂ©s, passer sur OpenJDK: Adoptium, ou d’autres vendeurs

    Java 20 est sorti : qu’y a t’il de nouveau dans Java 20 par rapport à Java 19 ? https://foojay.io/today/its-java–20-release-day-heres-whats-new/

    L’article fait le point sur ce qu’il y a de nouveau par rapport Ă  la prĂ©cĂ©dente release : 4Ăšme preview du pattern matching pour switch 2nde preview des record patterns 2nde preview des virtual threads incubation des scoped values (similaire au thread locals mais pour les virtual threads) 2nde incubation de la structured concurrency 2nd preview de foreign function et memory API 5Ăšme incubation de la vector API (pour utiliser les instructions vectorielles des processeurs) La liste des JEPs : https://openjdk.org/projects/jdk/20/ Les release notes : https://jdk.java.net/20/release-notes dans le pattern matching switch: guarde when Record pattern: utilisation de var. utilisable dans les for aussi maintenant for (Delay(var timeInMS) : delays) quelques changements autour de l’API Thread est non preview (main API) Les ScopedValue sont comme les threadlocal par (virtual) thread mais elles sont immuables une fois Ă©crites. use cases: copie d’etat pour des donnĂ©es non changeantes pour le virtual thread Serait interessant d’avoir des details dessus

    PDF 2.0 maintenant un vrai format ISO ouvert et gratuit https://www.pdfa.org/sponsored-standards/

    standard dispo sans cout versions precedentes Ă©taient payantes clarifications et corrections de beaucoup de corner cases Librairies

    Écrire un Profiler en 240 lignes de Java https://mostlynerdless.de/blog/2023/03/27/writing-a-profiler-in–240-lines-of-pure-java/

    Ce n’est peut-ĂȘtre pas si compliquĂ© d’écrire soi mĂȘme un Java Profiler ! Et justement cet article nous montre comment le faire, en crĂ©ant un Java Agent, en analysant les stacks d’appel, et Ă  la fin en crĂ©ant mĂȘme un flame-graph en HTML TrĂšs didactique ! fondamentallement: appeler Threads:getAlStackStrace reguilerement et faire une liste des methodes visibles et crĂ©er un flamegraph a partir de ces donnĂ©es

    L’équipe de Flutter partage les grands thĂšmes de sa roadmap https://flutter.dev/go/strategy–2023

    Performance, interopérabilité, portabilité, écosystÚme, sécurité, fondamentaux (comme la documentation, la fidélité des UI natives, adresser les issues publiques)

    Quarkus 3 est sorti https://quarkus.io/quarkus3/

    on a deja couvert Hibernate ORM 6.2 nouvelle DevUI et admin sur un port different Support for Pact quarkus deply et extensibilite de la CLI avec des nouveaux verbes dev services for Kubernetes simule un Kube pour tester les calls vers l’API Kube Java 11 et 17 (recommendĂ©) Jakarta EE Eclipse MicroProfile 6

    Une librairie en Java spĂ©cialement pour l’astronomie par CĂ©dric Champeau https://melix.github.io/blog//2023/04–22-introducing-astro4j.html

    diffĂ©rentes librairies et applications pour traiter les images issues de sol’ex qui permet de prendre des photos du soleil

    Micronaut 4 milestone 2 est sorti. Les nouveautés de Micronaut 4 https://docs.micronaut.io/4.0.0-M2/guide/index.html#whatsNew

    Kotlin 1.8.0 Experimental Support for Kotlin Symbol Processing (KSP) Apache Groovy 4.0 Core Changes Java 17 Baseline Improved Modularity GraalVM Metadata Repository and Runtime Initialization Completed javax to jakarta Migration Expression Language Injection of Maps Arbitrary Nesting of Configuration Properties Improved Error Messages for Missing Configuration Improved Error Messages for Missing Beans Tracking of Disabled Beans HTTP Changes Initial Support for Virtual Threads (Loom) Rewritten HTTP layer Annotation-Based HTTP Filters JDK HTTP Client Infrastructure

    5 choses Ă  savoir sur Podman Desktop pour un utilisateur Docker https://podman-desktop.io/blog/5-things-to-know-for-a-docker-user

    Une UI unique pour travailler avec diffĂ©rents moteur de conteneurs, et pas uniquement Docker Compatible avec Docker avec un mode adaptĂ© pour fonctionner aussi avec la docker CLI ou docker.sock pour les sockets Support de Compose Support de Kubernetes SecuritĂ© : on peut utilisĂ© rootless sans avoir les privilĂšges root socket est particulierement utile pour TestContainer compose n’est pas supporte en tant que tel mais on pout faire utiliser podman par compose podman peut emuiler / executer des definitions de pods si besoin d’exposer des ports code est meilleur mais synchro front back toujours un probleme en pratique erreurs, plus simple en rest avec les codes HTTP a debugger et monitorer version free est une mensonge, les schemas ne peuvent etre cassĂ©s pagination est compliquĂ© et non standard et caching est primitif comparĂ© a REST n+1 probleme comme dans les ORMs ou alors dataloaders qui amene de la complexitĂ© securite est plus compliquĂ© a cause de la nav libre de GraphQL ecosysteme pas super mature pour les besoins encore et paradoxalement tres complexe MĂ©thodologies

    Trends technologie et culture par InfoQ https://www.infoq.com/articles/culture-trends–2023/

    les licenciement ont cassĂ© les effets de psychological safety dans l’industrie les IA genratives ont un impact fort sur la productivitĂ© du dĂ©veloppeur mais aussi avec des faiblesses significatives au dela du legal, les responsabilitĂ©s societales deviennent plus importantes pour retenir employĂ©s et clients Le travail asynchrone devient plus acceptĂ© socialement et adopter les practiques apportent des bĂ©nĂ©fices rĂ©els Le travail hybride devient la norme, amener les gens ensemble devient un choix dĂ©libĂ©rĂ©, plus un horaire fixe Loi, sociĂ©tĂ© et organisation

    Red Hat fĂȘte ses 30 ans ! (limite, on n’était mĂȘme pas nĂ©s, hein ?) https://www.redhat.com/en/blog/red-hat–30th-anniversary-celebrating-red-hat-day-north-carolina

    Red Hat licencie 4% de ses employés https://wraltechwire.com/2023/04/24/red-hat-cutting-hundreds-of-jobs-ceo-says-in-letter-to-employees/

    IBM avait annoncĂ© 3900 licenciements il y a peu et cela monte Ă  5000 avec les licenciements chez Redhat (les effectifs Ă©taient de 2200 Ă  Raleigh et 19000 Ă  l’international) Licenciements suite au contexte Ă©conomique post Covid, les revenus trimestriels de redhat n.ont Ă©tĂ© que de 8% en Q1 alors que la croissance Ă©tait de 15 depuis l’acquisition de redhat par ibm en 2019

    Crazy Bob est dĂ©cĂ©dĂ© :scream: https://www.sfgate.com/bayarea/article/mill-valley-man-killed-sf-stabbing–17878809.php

    Annonce sur TechCrunch https://techcrunch.com/2023/04/05/bob-lee-creator-of-cash-app-and-former-cto-of-square-stabbed-to-death/ Il avait crĂ©Ă© le framework Guice, d’injection de dĂ©pendance, mais aussi Dagger Il a contribuĂ© aux librairies d’Android Il avait proposĂ© une syntaxe alternative aux lambda : CIC Il a coĂ©crit le livre Bitter EJB https://www.manning.com/books/bitter-ejb Il avait des idĂ©es bien tranchĂ©es, anti-Spring, anti-Groovy (pro-BeanShell), anti-lambda (tels qu’on les connait aujourd’hui) Guillaume l’avait rencontrĂ© pour la premiĂšre fois en 2007 https://blog.octo.com/javaone–2007-et-groovy-chez-google/ Les gens partagent leurs souvenirs sur ce thread sur HackerNews https://news.ycombinator.com/item?id=35457341

    10 millions de comptes sur Mastodon https://mastodon.social/@mastodonusercount/110051957865629817

    Peut-ĂȘtre pas 10 millions de comptes actifs, mais d’autres commentateurs estiment le nombre d’actifs serait plutĂŽt de 6 Ă  7 millions actifs, pour effectivement 10 millions de comptes crĂ©Ă©s donc certains inutilisĂ©s ou disparus (serveur disparu)

    Gordon Moore meure à 94 ans https://www.lemonde.fr/economie/article/2023/03/26/mort-de-gordon-moore-entrepreneur-par-accident-et-cofondateur-d-intel_6167037_3234.html#xtor=AL–32280270-%5Bdefault%5D-%5Bios%5D

    chimiste de formation, il refuse de bosser autour de la bombe atomique et fini dans la silicon valley fonde un des premiers semiconducteurs (plusieurs transistors ensemble) Intel sera un des rpemier a parier sur le silicium (pour construire de la mémoire) et un des premiers a faire une puce intégré regroupant plusieurs fonctions

    Twitter open source ses algorithmes de recommendation https://blog.twitter.com/engineering/en_us/topics/open-source/2023/twitter-recommendation-algorithm

    on retrouve le code source sur Github https://github.com/twitter/the-algorithm-ml et quelqu’un a dĂ©jĂ  trouvĂ© oĂč il y a des clauses particuliĂšres pour le cas oĂč un tweet vient d’Elon Musk, oĂč un tweet vient d’un rĂ©publicain ou d’un dĂ©mocrate https://uwyn.net/@[email protected]/110119479811452246 L’algorithme de Twitter https://aakashgupta.substack.com/p/the-real-twitter-files-the-algorithm analyse sans sensation trois Ă©tapes: aggravation des donnĂ©es, construction des “features”, mixage Followers, nos tweets et nous Plus gros booster likes 30x, puis retweet 20x Features: SimCluster: groupe par categories/personnes le tweet Feature: TwHIN: vecteur de prediction d’engagement pour un tweet donnĂ© Features: RealGraph, prend le tweet, the tweeter et le tweetĂ© et construit un graphe pondĂ©rĂ© de potentiel d’interaction RĂšgles de confiance et securitĂ©: Ă©limine certains sujets (cela censure plus depuis Elon Musk) Mixer: prend tout et construit la “timeline” Utilisateur rĂ©pond aux rĂ©ponses: x75 En fait que 80% du code ouvert

    The end of faking it in silicon valley https://www.nytimes.com/2023/04/15/business/silicon-valley-fraud.html

    les startup qui brulaient du cash sans business model clair proces et prisons pour falsification de donnĂ©es clients le approches non etique ne sont plus ignorĂ©es avant les investisseurs avaient peur de se mettre les createur de boite a dos, maintenant, l’argent vaut cher “finding out who is swimming naked when the tide goes out” Warren Buffet “It feels like we were in a nightclub and the lights just turned on” ils vont evaluer plus exhaustivement les foundateurs le probleme c’\est que VC c’est sur la confiance (one way au moins) et que la c’est cassĂ© Rubrique dĂ©butant

    On parle souvent de librairies et de frameworks, mais c’est quoi la diffĂ©rence ? https://www.red-gate.com/simple-talk/development/other-development/the-difference-between-libraries-and-frameworks/

    Une librairie est une collection de classes, de fonctions, de code, que l’ont peut utiliser pour des tĂąches spĂ©cifiques, pour Ă©viter au dĂ©veloppeur de rĂ©inventer la roue (par exemple une librairie comme Joda Time qui permet de simplifier / codifier la reprĂ©sentation du temps) Il y a diffĂ©rents types de librairies : des librairies statiques ou dynamiques, suivant si elles sont chargĂ©es au runtime ou bien attachĂ©es au code que l’on compile. Il y a des librairies standards (comme celles venant du JDK et donc inclues avec lui) ou des librairies tierces (que l’on va par exemple trouver sur Maven Central) Un framework (un “cadriciel” en bon françois) c’est aussi un ensemble de code, mais aussi de librairies, qui va offrir un cadre de dĂ©veloppement pour ses applications. Par exemple un framework web qui permet de crĂ©er des applications web plus facilement, ou Tensorflow pour dĂ©velopper de nouveaux algorithmes d’intelligence artificielle, ou Unity pour dĂ©velopper des jeux vidĂ©os Mais un framework est effectivement plus “cadrant” dans le sens oĂč on doit suivre ses recommendations sur comment structurer son code, comment Ă©tendre des classes ou interfaces du framework, etc. ainsi que les bonnes pratiques et parfois une boite a outil “prete a l’emploi vs assemblage article decrit les pour et les contre ConfĂ©rences

    Une liste de conférences Java https://javaconferences.org/

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

    10–12 mai 2023 : Devoxx UK - London (UK) 12 mai 2023 : AFUP Day - Lille & 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) 1–2 juin 2023 : Agile Tour Toulouse - Toulouse (France) 2 juin 2023 : Flutter Connection - Paris (France) 2–3 juin 2023 : Sud Web - Toulouse (France) 7 juin 2023 : Serverless Days Paris - Paris (France) 14–15 juin 2023 : OW2 openSource Conf - Paris (France) 14–17 juin 2023 : VivaTech (Viva Technology) - https://vivatechnology.com/) - Paris (France) 15–16 juin 2023 : Le Camping des Speakers - Baden (France) 15–17 juin 2023 : Pas Sage En Seine - Choisy-le-Roi (France) 20 juin 2023 : Mobilis in Mobile - Nantes (France) 20 juin 2023 : Cloud Est - Villeurbanne (France) 20–22 juin 2023 : Adeo DevSummit - Lille (France) 21–23 juin 2023 : Rencontres R - Avignon (France) 28–30 juin 2023 : Breizh Camp - Rennes (France) 29 juin 2023 : Google Cloud Summit France - Paris (France) 29–30 juin 2023 : Sunny Tech - Montpellier (France) 29–30 juin 2023 : Agi’Lille - Lille (France) 7–9 juillet 2023 : Nantes Maker Campus - Nantes (France) 8 septembre 2023 : JUG Summer Camp - La Rochelle (France) 18 septembre 2023 : Agile Tour Montpellier - Montpellier (France) 19–20 septembre 2023 : Agile en Seine - Paris (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) 6 octobre 2023 : DevFest Perros-Guirec - Perros-Guirec (France) 10 octobre 2023 : ParisTestConf - Paris (France) 11–13 octobre 2023 : Devoxx Morocco - Agadir (Morocco) 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) 19–20 octobre 2023 : Agile Tour Rennes - Rennes (France) 26 octobre 2023 : Codeurs en Seine - Rouen (France) 25–27 octobre 2023 : ScalaIO - Paris (France) 26–27 octobre 2023 : Agile Tour Bordeaux - Bordeaux (France) 10 novembre 2023 : BDX I/O - Bordeaux (France) 15 novembre 2023 : DevFest Strasbourg - Strasbourg (France) 16 novembre 2023 : DevFest Toulouse - Toulouse (France) 6–7 dĂ©cembre 2023 : Open Source Experience - Paris (France) 7–8 dĂ©cembre 2023 : TechRocks Summit - Paris (France) 31 janvier 2024–3 fĂ©vrier 2024 : SnowCamp - Grenoble (France) 19–22 mars 2024 : KubeCon + CloudNativeCon Europe 2024 - Paris (France) 28–29 mars 2024 : SymfonyLive Paris 2024 - Paris (France) 17–19 avril 2024 : Devoxx France - Paris (France) 25–26 avril 2024 : MiXiT - Lyon (France) 25–26 avril 2024 : Android Makers - Paris (France) Nous contacter

    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/