Episodes

  • 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/

  • Missing episodes?

    Click here to refresh the feed.

  • 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/

  • Les Cast Codeurs font la clĂŽture de Devoxx France 2022 en chair, en os et en bĂ©ret.

    Enregistré le 14 avril 2023

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

    Interview

    La vidéo du direct Devoxx France qui est plus facile à suivre se trouvera sur YouTube.

    Nous contacter

    Soutenez Les Cast Codeurs sur Patreon https://www.patreon.com/LesCastCodeurs
    Faire un crowdcast ou une crowdquestion
    Contactez-nous via twitter https://twitter.com/lescastcodeurs
    sur le groupe Google https://groups.google.com/group/lescastcodeurs
    ou sur le site web https://lescastcodeurs.com/

  • Dans le cocon de jchateau, HervĂ© Boutemy se fait interviewer par Charles Sabourdin sur Maven 3, 4, 5 et sur les builds reproductibles. Un grand merci Ă  Charles pour son passage derriĂšre le micro.

    Enregistré le 18 mars 2023

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

    Interview

    Twitter Hervé Boutemy

    JChateau
    JavaDay

    Maven et son histoire

    Les builds reproductibles
    Les builds reproductibles sur la JVM
    Les builds reproductibles avec Maven

    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 nouvelles discute d’amĂ©liorations dans le JDK, d’Hibernate 6, de Service Weaver, de la fin d’options dans DockerHub pour certains projets open source, de Gradle, de cURL et pleins d’autres choses encore.

    Enregistré le 17 mars 2023

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

    News Langages

    Quelle version de JDK utiliser en fonction des fonctionnalitĂ©s que l’on souhaite utiliser mais aussi du long time support https://whichjdk.com/

    JetBrains propose une formation Rust intégrée aux IDEs https://blog.jetbrains.com/rust/2023/02/21/learn-rust-with-jetbrains-ides/

    Un apprentissage directement intĂ©grĂ© Ă  l’IDE Avec un plugin “Academy” dĂ©diĂ©, qui rajoute un troisiĂšme panneau avec les instructions, les explications, et on fait des exercices dans la partie IDE Une chouette maniĂšre d’apprendre intĂ©grĂ©e directement Ă  son IDE Chacun doit pouvoir crĂ©er ses propres ressources d’apprentissage, et on pourrait appliquer ça Ă  des frameworks, des outils, ou pourquoi pas son propre projet informatique !

    Retravail de classes du JDK Bits / ByteArray vers un usage via VarHandle pour le swapping de bits dans Java 21 https://minborgsjavapot.blogspot.com/2023/01/java–21-performance-improvements.html

    petit changement mais utilisé par beaucoup de classes comme ObjectInputStream RandomAccessFile etc améliore la serialization en java

    Rajout de la notion de “sequenced collection” dans la hiĂ©rarchie des collections, planifiĂ© pour JDK 21 https://www.infoq.com/news/2023/03/collections-framework-makeover/

    va permettre de codifier les collections qui ont un ordre donnĂ© (pas forcĂ©ment triĂ©) rajouter aussi des mĂ©thodes pour traverser des collections sĂ©quentielles Ă  l’envers, ou pour rĂ©cupĂ©rer ou ajouter un Ă©lĂ©ment au dĂ©but ou Ă  la fin d’une collection ordonnĂ©e aujourd’hui ces methodes sont eparpillĂ©es dans les implĂ©mentaions et n’avaient aps de contrat commun

    Le guide ultime des virtual threads https://blog.rockthejvm.com/ultimate-guide-to-java-virtual-threads/

    un trĂšs long article qui couvre le sujet des nouveaux virtual threads comment en crĂ©er comment ils fonctionnent le scheduler et le scheduling coopĂ©ratif les “pinned” virtual threads (lorsqu’un thread virtuel est bloquĂ© dans un vrai thread, par exemple dans un bloc synchronized ou lors d’appel de mĂ©thondes natives) les thread local et thread pools Librairies

    Quarkus 3 alpha 5 avec Hibernate ORM 6 et une nouvelle DevUI https://quarkus.io/blog/quarkus–3–0–0-alpha5-released/

    passage d’Hibernate 5 a 6 (donc testez! switch de compatibilitĂ© supĂ©rieur pour aider la transition https://github.com/quarkusio/quarkus/wiki/Migration-Guide–3.0:-Hibernate-ORM–5-to–6-migration#database-orm-compatibility (DB interaction esp schema StatelessSession injectable Gradle 8 nouvelle DEvUI (nouveau look and feel, plus extensible pour els extensions et pplus facile a utiliser, va au dela des integrations d’extension (config etc) quarkus deploy dans la CLI, gradle et maven: deploie dans Kube, knative, OpenShift

    La route vers Quarkus 3, article sure infoq https://www.infoq.com/news/2023/03/road-quarkus–3/

    Jakarta EE, ORM 6, Microprofile 6, virtual threads, io_uring, ReactiveStreams=> Flow io_uring reduit les copie de buffer entre userspace et kernel space pas de support JPMS en vue mais Red Hat contribue a project Leyden Camel extensions, attendez Camel 4 (passage Jakarta EE)

    Interview de Geert Bevin, l’auteur du framework Java RIFE2 https://devm.io/java/rife2-java-framework

    Google annouce Service Weaver https://opensource.googleblog.com/2023/03/introducing-service-weaver-framework-for-writing-distributed-applications.html

    EJB is back (Enterprise Go Beans :D) ecrire en tant que modular monolith permet au deploiement dĂ©cider ce qui est distribuĂ© basĂ© sur leur experience du surtout de maintance des microservices (contrats plus difficiles a casser - dbesoin de coordination de rollout etc) dans la communautĂ© des entousiastes et des gens concernĂ©s par les 10 falaccies of distributed computing et le fait de cacher les appels distants EJB et corba avant cela ont Ă©tĂ© des Ă©checs de ce point de vue la ils n’expliquement pas comment le binding de nouveax contrats et de deploiement se fait de maniere transparente des deployeurs implementables (go et GKE initialement)

    Etude d’opinion de certains utilisateurs de Jakarta EE (OmniFaces community) https://omnifish.ee/2023/03/10/jakarta-ee-survey–2022–2023-results/

    biaisĂ©e donc attention Java EE 8 suivi par Jakarta EE 8 et derriere Jakarta EE 10 etc WildFly puis Payara puis glassfish ensuite tomee et JBoss EAP gens contents de leurs serverus d’app sand Weblogic et Websphere les api utilisĂ©es le plus JPA, CDI, REST, Faces, Servlet, Bean Validation, JTA, EJB, EL etc Produit microprofile: Quarkus puis WildFlky puis Open Liberty puis Payara et Helidon Dans microprofile: Config, rest client, open api, health et metric sont les plus utilisĂ©s

    Comment utiliser des records et Hibernate https://thorben-janssen.com/java-records-embeddables-hibernate/

    pas en tant qu’entitĂ© encore (final, pas de constructeur vide) mais en tant qu’@Embeddable records sont immuable dans hibernate 6.2, c’est supportĂ© par default (annoter le record @Embeddable Ca utilise le contrat EmbeddableIntentiator

    Cinq librairies Java super confortables https://tomaszs2.medium.com/5-amazingly-comfortable-java-libraries–887802e240de

    mapstruct mapper des entitĂ©s en DTO jOOQ requĂȘte de bases de donnĂ©es typĂ©es WireMock mocker des API ou ĂȘtre entre le client et l’API pour ne mocker que certaines requĂȘtes Eclipse Collections : pour rendre le code plus simple et facile Ă  comprendre. Attention Ă  la,surface d’attaque HikariCP connection pool rapide - agroal est dans la meme veine mais supporte JTA. C’est ce qui est dans Quarkus.

    Retour d’expĂ©rience sur Hibernate 6 https://www.jpa-buddy.com/blog/hibernate6-whats-new-and-why-its-important/

    cĂŽtĂ© APIs et cĂŽtĂ© moteur jakarta persistence 3 ; java 11 annotations de types hibernate sont typesafe support des types JSON OOTB meilleur support des dates avec @TimeZoneStorage soit natif de la base soit avec une colonne sĂ©parĂ©e changement dans la gĂ©nĂ©ration des ID (changement cassant) mais stratĂ©gies de noms historique peut ĂȘtre activĂ© Options autour de UUID (Time base et IP based) composite id n’ont plus besoin d’ĂȘtre serialisable type texte long supportĂ©s via @JdbcTypeCode multitenancy (shared schema, resolver de tenant a plugger) read by position (SQL plus court car sans alias, deserialisarion plus rapide, moins de joins dans certains cas) modele sous jacent commun entre HQL et l’api criteria et donc mĂȘme moteur meilleure gĂ©nĂ©ration du SQL et plus de fonction SQL modernes rĂ©duisant le gap entre HQL et SQL ronctions analytiques et fenĂȘtre quand la base les supportent graphe traverse en largeur plutĂŽt qu’en profondeur (potentiellement plus de join donc bien mettre lazy sur vos associations) Cloud

    Docker supprime les organisations open source sur DockerHub https://blog.alexellis.io/docker-is-deleting-open-source-images/

    Les projets open source risquent de devoir passer de 0 $ à 420 $ par an pour héberger leurs images Rétropédalage de Docker https://www.docker.com/blog/we-apologize-we-did-a-terrible-job-announcing-the-end-of-docker-free-teams/ Web

    Une base de connaissance sur le fonctionnement et les bonnes pratiques autour des WebHooks https://nordicapis.com/exploring-webooks-fyi-the-webhooks-knowledge-center/

    Guillaume a refondu son blog https://glaforge.dev/

    Cette fois ci, c’est un site web statique, gĂ©nĂ©rĂ© avec Hugo, avec des articles en Markdown, hĂ©bergĂ© sur Github Pages, buildĂ© / publiĂ© automatiquement par Github Actions Outillage

    Gradle 8.0 est sorti https://docs.gradle.org/8.0/release-notes.html

    Une CLI connectĂ©e Ă  OpenAI’s Davinci model pour gĂ©nĂ©rer vos lignes de commandes https://github.com/TheR1D/shell_gpt

    sgpt -se "start nginx using docker, forward 443 and 80 port, mount current folder with index.html" -> docker run -d -p 443:443 -p 80:80 -v $(pwd):/usr/share/nginx/html nginx -> Execute shell command? [y/N]: y

    Un petit outil en ligne basĂ© sur le modĂšle GPT–3 qui permet d’expliquer un bout de code https://whatdoesthiscodedo.com/g/db97d13

    Copiez-collez un bout de code de moins de 1000 caractĂšres, et le modĂšle de code de GPT–3, et l’outil vous explique ce que fait ces quelques lignes de code Assez impressionnant quand on pense que c’est un modĂšle de prĂ©diction probabiliste des prochains caractĂšres logiques Certaines rĂ©ponses donnent vraiment l’impression parfois que l’outil comprends rĂ©ellement l’intention du dĂ©veloppeur derriĂšre ce bout de code

    Git: Comment rebaser des branches en cascade https://adamj.eu/tech/2022/10/15/how-to-rebase-stacked-git-branches/

    native-image va ĂȘtre inclu dans la prochaine version de GraalVM JDK. Plus besoin de gu install native-image https://github.com/oracle/graal/pull/5995

    Si vous utilisez l’outil Mermaid pour faire des graphes d’architecture, d’interactions, etc, il y a un petit cheatsheet sympa qui montre comment faire certains diagrammes https://jojozhuang.github.io/tutorial/mermaid-cheat-sheet/

    Un site avec plein de trucs et astuces sur psql, le langage SQL de PostgreSQL https://psql-tips.org/

    CURL a 25 ans ! https://daniel.haxx.se/blog/2023/03/10/curl–25-years-online-celebration/

    Son crĂ©ateur, Daniel Stenberg, est toujours Ă  la tĂȘte du projet cURL est utilisĂ© dans d’innombrables projets par dĂ©faut dans plein de systĂšmes d’exploitation

    CĂ©dric Champeau explique le concept de version catalog de Gradle et comment il amĂ©liore la productivitĂ© https://melix.github.io/blog//2023/03–12-micronaut-catalogs.html

    permet de rĂ©duire le temps et l’effort nĂ©cessaire Ă  gĂ©rer la version de ses dĂ©pendances apport aussi plus de sĂ©curitĂ©, de flexibilitĂ©, pour s’assurer qu’on a les bonnes versions les plus rĂ©centes des dĂ©pendances et qu’elles fonctionnent bien entre elles Architecture

    La pyramide des besoins du code de qualité https://www.fabianzeindl.com/posts/the-codequality-pyramid

    le bas de la pyramide supporte le haut performance de build performance de test testabilitĂ© qualitĂ© des codes de composants fonctionalitĂ©s performance du code pour chaque bloc, il explique les raisons, ses definitions et des astuces pour l’ameliorer par exemples les fonctionalites changent et donc build, testabilitĂ© et qualite de code permet des changements lĂ©gers en cas de changement dans les fonctionalitĂ©s perf viennent ensuite ("premature opt, root of all evil), regader des besoins globaux MĂ©thodologies

    Le DevSusOps est né https://www.infoq.com/news/2023/02/sustainability-develop-operation/?utm_campaign=i[
]nt&utm_source=twitter&utm_medium=feed&utm_term=culture-methods

    bon serieusement, comment on couvre avec un nom pareil sans déraper :man-facepalming: ah dommage Micreosoft rejoints la FinOps foundation https://www.infoq.com/news/2023/02/microsoft-joins-finops-org/?utm_campaign=infoq_content&utm_source=twitter&utm_medium=feed&utm_term=Cloud Imagine si ils avaient rejoint la DevSusOps fondation Sécurité

    Plein de choses qu’on peut faire avec des Yubikeys https://debugging.works/blog/yubikey-cheatsheet/

    Pour gĂ©nĂ©rer des time-based one-time passwords, pour l’accĂšs SSH,, pour sĂ©curiser un base Keepass, comme 2FA pour le chiffrement de disque, pour la vĂ©rification d’identifiant personnel, pour gĂ©rer les clĂ©s privĂ©es
 Loi, sociĂ©tĂ© et organisation

    Le fabricant de graveurs de CPU hollandais ASML se voit interdire d’exporter ses technologies vers la chine https://www-lemagit-fr.cdn.ampproject.org/c/s/www.lemagit.fr/actualites/365532284/Processeurs[
]le-escalade-dans-les-sanctions-contre-la-Chine?amp=1

    en tous cas les technologies de gravure des deux derniĂšres generations de la pression commerciale on passe au registre d’exclusion par decision militaire ASML s’était fait espionner rĂ©cemment CAnon et Sony aussi dans la restriction

    Meta supprime de nouveau 10000 emplois soit 25% au total depuis la fin de l’annĂ©e derniĂšre https://www.lesechos.fr/tech-medias/hightech/meta-va-supprimer–10000-postes-de-plus–1915528

    Rubrique débutant

    Bouger les Ă©lĂ©ments d’une liste https://www.baeldung.com/java-arraylist-move-items

    discute le concept d’array list en dessous et donc le coĂ»t d’insĂ©rer au milieu decouverte de Collections.swap (pour intervertir deux elements) decouverte de Collections.rotate pour “deplacer” l’index zero de la liste ConfĂ©rences

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

    15–18 mars 2023 : JChateau - Cheverny in the ChĂąteaux of the Loire Valley (France) 23–24 mars 2023 : SymfonyLive Paris - Paris (France) 23–24 mars 2023 : Agile Niort - Niort (France) 30 mars 2023 : Archilocus - Online (France) 31 mars 2023–1 avril 2023 : Agile Games France - Grenoble (France) 1–2 avril 2023 : JdLL - Lyon 3e (France) 4 avril 2023 : AWS Summit Paris - Paris (France) 4 avril 2023 : Lyon Craft - Lyon (France) 5–7 avril 2023 : FIC - Lille Grand Palais (France) 12–14 avril 2023 : Devoxx France - Paris (France) 20 avril 2023 : WordPress Contributor Day - Paris (France) 20–21 avril 2023 : Toulouse Hacking Convention 2023 - Toulouse (France) 21 avril 2023 : WordCamp Paris - Paris (France) 27–28 avril 2023 : AndroidMakers by droidcon - Montrouge (France) 4–6 mai 2023 : Devoxx Greece - Athens (Greece) 10–12 mai 2023 : Devoxx UK - London (UK) 11 mai 2023 : A11yParis - Paris (France) 12 mai 2023 : AFUP Day - lle & Lyon (France) 12 mai 2023 : SoCraTes Rennes - Rennes (France) 25–26 mai 2023 : Newcrafts Paris - Paris (France) 26 mai 2023 : Devfest Lille - Lille (France) 27 mai 2023 : Polycloud - Montpellier (France) 31 mai 2023–2 juin 2023 : Devoxx Poland - Krakow (Poland) 31 mai 2023–2 juin 2023 : Web2Day - Nantes (France) 1 juin 2023 : Javaday - Paris (France) 1 juin 2023 : WAX - Aix-en-Provence (France) 2–3 juin 2023 : Sud Web - Toulouse (France) 7 juin 2023 : Serverless Days Paris - Paris (France) 15–16 juin 2023 : Le Camping des Speakers - Baden (France) 20 juin 2023 : Mobilis in Mobile - Nantes (France) 20 juin 2023 : Cloud Est - Villeurbanne (France) 21–23 juin 2023 : Rencontres R - Avignon (France) 28–30 juin 2023 : Breizh Camp - Rennes (France) 29–30 juin 2023 : Sunny Tech - Montpellier (France) 29–30 juin 2023 : Agi’Lille - Lille (France) 8 septembre 2023 : JUG Summer Camp - La Rochelle (France) 19 septembre 2023 : Salon de la Data Nantes - Nantes (France) & Online 21–22 septembre 2023 : API Platform Conference - Lille (France) & Online 25–26 septembre 2023 : BIG DATA & AI PARIS 2023 - Paris (France) 28–30 septembre 2023 : Paris Web - Paris (France) 2–6 octobre 2023 : Devoxx Belgium - Antwerp (Belgium) 10–12 octobre 2023 : Devoxx Morroco - Agadir (Morroco) 12 octobre 2023 : Cloud Nord - Lille (France) 12–13 octobre 2023 : Volcamp 2023 - Clermont-Ferrand (France) 12–13 octobre 2023 : Forum PHP 2023 - Marne-la-VallĂ©e (France) 19–20 octobre 2023 : DevFest Nantes - Nantes (France) 10 novembre 2023 : BDX I/O - Bordeaux (France) 6–7 dĂ©cembre 2023 : Open Source Experience - Paris (France) 31 janvier 2024–3 fĂ©vrier 2024 : SnowCamp - Grenoble (France) 1–3 fĂ©vrier 2024 : SnowCamp - Grenoble (France) 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/

  • Antonio, Guillaume et Emmanuel discutent de licence Oracle pour Oracle JDK, de JEPs, de Flutter, d’Hibernate, de Mokito, de Kafka, de (not so) Big Data, du parsing de YAML, de ChatGPT, de licenciements, de platform engineering, et de nombres flottants.

    Enregistré le 10 février 2023

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

    News Langages

    Oracle a changé une des licences de Oracle Java https://redresscompliance.com/oracle-java-licensing-changes-explaned-free/

    plus d’utilisateurs nommĂ© mais basĂ© sur tous les employĂ©s et mĂȘme les employĂ©s de vos soustraitant Bref, ca va faire cher et si vous itulisez plus de 50k processeurs, vous payez en plus Un autre article d’IDC https://blogs.idc.com/2023/01/30/oracle-java-subscription-changes-what-is-the-impact-to-customers/ Message a caractĂšre informatif: il y a d’autres distributions de OpenJDK supportĂ©es de diffĂ©rents vendeurs ; ou la version non supportĂ©e

    InfoQ fait un rĂ©sumĂ© des derniĂšres nouvelles Java, les mises Ă  jour sur les JEPs, les derniĂšres releases https://www.infoq.com/news/2023/01/java-news-roundup-jan23–2023/

    sur Java specificquement des mises à jour de drafts autour du projet amber (primitive types in patterns etc) Une JEP pour discuter du future process des JEP (evolutions) JDK 20 en rampdown phase avec en nouvelles features: scoped values, record patterms, pattern matching for switches, virtual threads, structured concurrency - toutes en incubation ou preview https://www.infoq.com/news/2023/02/java-news-roundup-jan30–2023/ Le framework RIFE fait son grand retour !

    Sortie de Go 1.20 https://go.dev/doc/go1.20

    mais pas de gros changements, juste des améliorations de la toolchain, des librairies


    Recap de la confĂ©rence Flutter Forward 2023 https://medium.com/@flutterqueen/flutter-forward–2023-recap–8f6da4876e3

    Annonces de Flutter 3.7 et Dart 2.19 AmĂ©lioration de la performance graphique (utilisation de Impeller au lieu de Skia) Layout adaptatif Barres et sous-barres de menu Validation de release iOS Support de Material 3 Nouveaux widgets Support de ses propres shaders Facilitation de l’intĂ©gration native avec FFIgen et JNIgen Support de la 3D Support de WebAssembly Support de RISC-V PossibilitĂ© d’intĂ©grer une app Flutter comme un Ă©lĂ©ment HTML dans un page HTML Un toolkit spĂ©cifique pour les applis de News CĂŽtĂ© langage Dart, il devrait bientĂŽt y avoir du pattern matching Librairies

    Les bonnes pratiques d’accessibilitĂ© pour les applications en Flutter https://medium.com/flutter-community/creating-inclusive-apps-with-flutter-best-practices-for-accessibility-c7cebe0beb4d

    4 grands thĂšmes dans l’article : l’accessibilitĂ© dans Flutter, les fonctionnalitĂ©s intĂ©grĂ©es Ă  Flutter pour l’accessibilitĂ©, les meilleurs pratiques pour rendre les apps Flutter accessibles, et tester / dĂ©bugguer l’accessibilitĂ© Flutter supporte le text contrast, les screen readers, les labels sĂ©mantiques, l’utilisation au clavier

    Comment logger les requetes Hibernate ORM https://www.adeliosys.fr/articles/hibernate-monitoring/

    log brut via un logger les requetes lentes (plus lentes que n millisecondes) les metriques plus avancées (Statement, requetes, temps acquisition de connections, cache) Exposable via JMX le pool de connexion

    Sortie de Mockito 5, avec la possibilitĂ© de mocker des constructeurs, des mĂ©thodes statiques et des classes finales https://www.infoq.com/news/2023/01/mockito–5/

    avant, c’était dĂ©jĂ  possible de le faire avec mockito-inline mais maintenant c’est “out of the box” la version Java minimale passe de Java 8 Ă  Java 11 Cloud

    Kubernetes Java client ajouté le support de kubernetes 1.25 https://www.infoq.com/news/2023/01/kubernetes-java-client/?utm_campaign=infoq_content&utm_source=twitter&utm_medium=feed&utm_term=java

    ajout d’APIs dynamique pour faire du monitoring gĂ©nĂ©rique L’article montre l’API utilisĂ©e en alternative a certaines commandes kubectl fabric8 est une alternative Data

    Big data est mort https://motherduck.com/blog/big-data-is-dead/

    fondateur de BigQuery Puis regardĂ© comment les utiilsateurs utilisaent Big Query Et pas un probleme de big data Retour des moteurs classiques MySQL / PostgreSQL vs MongoDB etc la plupart des utilisaeur de big query etaient sous les 1Tb et 50% at 100GB ou moins doncle deluge de donnĂ©es n’est pas arrivĂ© le shift moderne c’est de detacher le stockage du compute les donnĂ©es grossissent plus vite que les besoin en compute sur ces donnĂ©es la taille du workload est sur un petit sous ensemble de la taille des donnĂ©es entiĂ©res (90% des requetes bigquery sont sur 100M de donnĂ©es) bases de donnĂ©es modernes sont force a travailler sur un sous ensemble des donnĂ©es pression pour scocker moins de donnĂ©es sur les equipes donnĂ©es sont requetees dans la journĂ©e, dans la semaine et ensuite rarement touchĂ©es donc big data = whatever doesn’t fit on a single machine, est de moins en moins vrai map reduce en 2004 et machines de maintenant entre 2 et 4 ordre de grandeurs de RAM en plus avant on se foutait de supprimer des donnĂ©es mais GDPR et responsabilitĂ© pĂ©nales change la donne data putrefaction comme le bit rot questionnaire pour savoir si les prochaines generations de data processing seront suffisant pour vous distribution est une raison par contre Outillage

    Tous les soucis avec YAML https://ruudvanasseldonk.com/2023/01/11/the-yaml-document-from-hell

    article qui explique la complexitĂ© de YAML et ses incohĂ©rences Comparaison a la simplicitĂ© de JSON les commentaires JSON enlevĂ©s en 2005 parce que les gens mettaient des meta instructions pour les parseurs et l’implementation des commentaire Ă©tait trĂšs complexe 22:22 est une nombre en base 60 vs 80:80 qui ne l’est pas (enleve en YAML 1.2 - **.png est invalide, ** est une reference vers une ancre - !.git est parsĂ© diffĂ©remment par les parseurs: ! est une echape pour exprimer un type natif du langage (e.g. Java) - ca veut dire que charger un YAML inconnu est non sĂ»r - fr - de - no retourne ["fr", "de", no] le problĂšme NorvĂšge | changĂ© en tre YAML 1./1 et 1.2 mais l;es parseurs gardent les anciens comportements:. Boolean: on, yes, y on: "let's go" est convertit en { "True": "let's go" } parce que on est boolean et acceptĂ© en clĂ© non String dans YAML version: [ 9.5.1, 12.13] -> { "version": [ "9.5.1", 12,13 ] } les chiffres non echapĂ© par un guillement syntax highlighting est donc dependant les templates dans yaml ca court a la cata altewrnatives: TOML, JSON, sous ensemble de YAML (toujours quoter les chaines)

    ChatGPT, on lui attribue plus de magie qu’il n’en a https://arxiv.org/pdf/2212.03551.pdf

    un article scientifique mais de 8 pages seulement ChatGPT entant que large language models (LLM) et un prompt Engineering au dessus (le conversational agent) ChatGPT c’est une exĂ©cution du modĂšle Next Token Prediction C’est de la statistique brute mais excrĂ©ment versatile dans ses usages Tendance Ă  anthropomorphismes parce qu’on a passĂ© la sensation de uncanny valley ConsidĂ©rant la distribution statistique des mots du corpus public, quels mots ont le plus de chance de venir aprĂšs Pas de relation au monde, aux objets et aux interactions d’ĂȘtres partageant le mĂȘme langage Pas des faits, ChatGPT ne sait pas, n’a pas d’intention C’est donc un outil gĂ©nial pour Ă©liminer un paquet du bullshit work de tous les jours, pas les gens qui le font Est-ce que les capacitĂ©s sont Ă©mergentes ? LLM fondamentalement est hors du concept

    Le méta tutoriel sur le parsing avec Antlr https://tomassetti.me/antlr-mega-tutorial/

    Couvre diffĂ©rents langages don’t Java, Python, JavaScript et C# Explique les diffĂ©rentes phases de lexing, de parsing Comment rĂ©soudre les ambiguĂŻtĂ©s avec les prĂ©dicats sĂ©mantiques Comment transformer du code Comment tester son parseur Et autre trucs et astuces

    Un tutoriel sur comment releaser un module Java avec Maven, JReleaser et Github Actions https://foojay.io/today/how-to-release-a-java-module-with-jreleaser-to-maven-central-with-github-actions/

    montre le setup necessaire (clĂ© GPG, pripriĂ©tĂ© du groupid, config maven etc montre comment faire la release Ă  la main comment l’automatiser via GitHub actions

    Un tutoriel expliquant comment utiliser CRaC pour vos applis Java dans un conteneur https://foojay.io/today/how-to-run-a-java-application-with-crac-in-a-docker-container/

    Coordinated Restore at Checkpoint (dĂ©veloppĂ© par Azul) Permet de crĂ©er des snapshots d’une application Java Pour qu’elle puisse ĂȘtre relancĂ©e rapidement aprĂšs son dĂ©marrage, son warmup

    Une intro à Kafka en français https://blog.octo.com/kafka-repond-il-a-mon-besoin/

    Maven 3.9 sorti https://lists.apache.org/thread/0tfr7t2j2ddbv4gjvxm47yohtk3dg6b3

    https://maven.apache.org/docs/3.9.0/release-notes.html Java 8 nĂ©cessaire pour lancer Maven Pas mal de nettoyage de code et de dĂ©pendances pour prĂ©parer Maven 4. Certains plugins mal conçus (ex: qui ne dĂ©clare pas la dep plexus-util) peuvent ĂȘtre incompatibles. .mvn/maven.config dit dĂ©sormais avoir 1 arg par ligne Maven avertit maintenant sur l’utilisation de plugins obsolĂštes, objectifs, paramĂštres, etc. Ajout de la prise en charge de l’invocation « mvn pluginPrefix:version:goal » et mise Ă  jour des logs (pour simplifier le copier/coller). Ajout d’activation de profil par packaging. Maven 3.9.0 est dĂ©sormais entiĂšrement compatible avec la nouvelle ligne 3.x d’installation et de dĂ©ploiement de plugins (les versions prĂ©cĂ©dentes prĂ©viennent Ă  ce sujet). Ajout du support du repo local partagĂ© - https://maven.apache.org/resolver/local-repository.html#shared-access-to-local-repository Ajout de la possibilitĂ© de splitter le repo local (releases, vs snapshots
) et possibilitĂ© de gĂ©rer des workspaces - https://maven.apache.org/resolver/local-repository.html#split-local-repository Filtrage des dependences par repository - https://maven.apache.org/resolver/remote-repository-filtering.html Chained local repository (pour l’isolation entre “outer” and “inner” builds) - https://issues.apache.org/jira/browse/MNG–7612 Attention: Il y aurait une regression (10%) sur les perfs de gros projets - https://issues.apache.org/jira/browse/MNG–7677

    Les bisounours

    MĂ©thodologies

    De operation engineering vers platform engineering https://www.infoq.com/news/2022/10/platform-devops-summary/

    et quand le sysadmin devient de nouveau sexy grosse tendance et beaucoup de discussions autour du la platform engineering une plateforme imposĂ©e aux devs mais sexy donc c’est bon cette fois: plus serieusement customer focus - la fameuse developer experience Requilibrage entre dev vs ops puis devops plat et maintenant ceci. Sans enlever devops car devops amene une charge mentale lourde objectif developper la “core business value” et donc supporter cela avec une Internal DEveloper Platform Backstage est la GUI au dessus mais une IDP est plus profonde Infra Platform dev teams IDP: ne pas avoir a faire tourner l’infra (pour une equipe dev metier) Et cela permet d’ajouter des controles “entreprise”: cout, gouvernance etc C’est un pendule qui se reequilibre, mais n’oublions pas que les devs aime le jeu, comme les otaries. Pas pisser du code metier le plus vite possible. Est-ce que les IDP seront populaires, c’est la grande question un contre point dans l’articl;e: IDP are expensive and hard to do, offer a mediocre service at best, destroy velocity, and create bad incentives liĂ© a la notion de golden path SĂ©curitĂ©

    Une liste de binaires Unix qui peuvent ĂȘtre utilisĂ©s pour bypasser des systĂšmes malconfigurĂ©s https://gtfobins.github.io/

    apparemment mĂȘme des images type distroless peuvent ĂȘtre affectĂ©es risques potentiels : accĂšs Ă  un shell, des privilĂšges Ă©levĂ©s, transfĂ©rer des fichiers, etc. Loi, sociĂ©tĂ© et organisation

    Twitter desactive l’API pour les clients qui n’affichent pas les pubs de Twitter (comme Tweetbot https://twitter.com/tweetbot/status/1613763746437947394)

    et paf le support de twitter sur ton ordi

    Ola Bini déclaré innocent https://peoplesdispatch.org/2023/02/01/digital-rights-activist-ola-bini-declared-innocent-by-ecuadorian-court

    ArrĂ©tĂ© en 2019 en Equateur AccusĂ© d’avoir eu access Ă  des ordinateurs et des systemes de communication En mĂȘme temps que Julian Assange Ă©tait renvoyĂ© de l’ambassage Equatorienne de Londres Il a fait 70 jours de prison

    Google a viré son équipe Open Source https://www.infoworld.com/article/3686511/google-blew-it-with-open-source-layoffs.html

    gros efforts autour de l’open sourcing (Kubernetes, Tensor flow) paie des dividendes virĂ© par les tetes de gondoles mais ceux qui avaient fait des diffĂ©rences Open Source program, Google Summer of Code Grosse influeence interne qui se perd, risque pour le futur ca reste l’opinion de Matt Asay ( :stuck_out_tongue_winking_eye: )

    Dans la saga Twitter, aprĂšs l’arrĂȘt des clients Twitter tiers, maintenant l’accĂšs mĂȘme Ă  l’API va devenir payant https://twitter.com/twitterdev/status/1621026986784337922

    donc par exemple, on ne pourra mĂȘme plus crĂ©er des bots gratuitement, comme faire des annonces automatiques de release, etc ah bah merde c’est ce que je fais pour les cast codeurs :/

    On peut rajouter son Mastodon sur son profil Github https://github.blog/changelog/2023–02–02-add-more-social-links-to-your-user-profile/

    Pratique pour la vérification Mastodon ! On pouvait seulement mettre un lien vers Twitter, maintenant on peut avoir plusieurs profils de médias sociaux différents Rubrique débutant

    Julia Evans a écrit deux articles intéressants sur les problÚmes avec les nombres flottants et avec les nombres entiers https://jvns.ca/blog/2023/01/13/examples-of-floating-point-problems/ https://jvns.ca/blog/2023/01/18/examples-of-problems-with-integers/

    les problĂšmes classiques d’overflow le grand Ă©cart entre les grands nombres flottants des cas concrets de valeur approchĂ©e (proche Ă  epsilon prĂšs), ou avec JavaScript qui interprĂšte les entiers comme des flottants et du coup interprĂšte mal des grands ID en JSON des clĂ©s primaires trop petites, les bizarreries de l’encodage des nombres signĂ©s ou non

    Quels sont les types de mémoires dans la JVM ? https://www.baeldung.com/java-jvm-memory-types

    Heap Stack Native Direct je pense que l’article a des incoherences, Ent ous cas native vs direct est mal expliquĂ©. Un truc pas super clair mais plus clair est ici sur native vs direct: https://stackoverflow.com/questions/30622818/what-is-the-difference-between-off-heap-native-heap-direct-memory-and-native-m c’est en gros direct vers du hardware (IO/ network etc) memory mapped file permet d’aller au dela de la limit e de memoire vive du systeme ConfĂ©rences

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

    9–11 fĂ©vrier 2023 : World AI Cannes Festival - Cannes (France) 16–19 fĂ©vrier 2023 : PyConFR - Bordeaux (France) 7 mars 2023 : Kubernetes Community Days France - Paris (France) 15–18 mars 2023 : JChateau - Cheverny in the ChĂąteaux of the Loire Valley (France) 23–24 mars 2023 : SymfonyLive Paris - Paris (France) 23–24 mars 2023 : Agile Niort - Niort (France) 30 mars 2023 : Archilocus - Online (France) 31 mars 2023–1 avril 2023 : Agile Games France - Grenoble (France) 1–2 avril 2023 : JdLL - Lyon 3e (France) 4 avril 2023 : AWS Summit Paris - Paris (France) 5–7 avril 2023 : FIC - Lille Grand Palais (France) 12–14 avril 2023 : Devoxx France - Paris (France) 20–21 avril 2023 : Toulouse Hacking Convention 2023 - Toulouse (France) 27–28 avril 2023 : AndroidMakers by droidcon - Montrouge (France) 4–6 mai 2023 : Devoxx Greece - Athens (Greece) 10–12 mai 2023 : Devoxx UK - London (UK) 12 mai 2023 : AFUP Day - lle & Lyon (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) 7 juin 2023 : Serverless Days Paris - Paris (France) 15–16 juin 2023 : Le Camping des Speakers - Baden (France) 29–30 juin 2023 : Sunny Tech - Montpellier (France) 8 septembre 2023 : JUG Summer Camp - La Rochelle (France) 19 septembre 2023 : Salon de la Data Nantes - Nantes (France) & Online 21–22 septembre 2023 : API Platform Conference - Lille (France) & Online 2–6 octobre 2023 : Devoxx Belgium - Antwerp (Belgium) 12 octobre 2023 : Cloud Nord - Lille (France) 12–13 octobre 2023 : Volcamp 2023 - Clermont-Ferrand (France) 6–7 dĂ©cembre 2023 : Open Source Experience - Paris (France) 31 janvier 2024–3 fĂ©vrier 2024 : SnowCamp - Grenoble (France) 1–3 fĂ©vrier 2024 : SnowCamp - Grenoble (France) 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 et Arnaud discutent de tech en cette nouvelle annĂ©e 2023. GraalVM dans OpenJDK, Rust, Webassembly, containers. postgres, ChatGPT, le rĂŽle de l’architecte et la ribambelle de rĂ©trospective 2022.

    Enregistré le 13 janvier 2023

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

    News Langages

    OpenJDK propose projet Galahad : pour fusionner dans OpenJDK certaines parties de GraalVM community edition https://www.infoq.com/news/2022/12/openjdk-galahad-Dec22/

    https://www.infoq.com/articles/graalvm-java-compilers-openjdk/

    Alex Snaps partage un article sur Rust pour le développeur Java https://wcgw.dev/posts/2023/rusty-java-intro/

    Google a sorti sa formation interne sur Rust en libre accĂšs https://google.github.io/comprehensive-rcust/

    Paul King du projet Apache Groovy partage sa rĂ©trospective de l’annĂ©e 2022 https://blogs.apache.org/groovy/entry/apache-groovy–2022-year-in

    Webassembly pour le developpeur Java https://www.javaadvent.com/2022/12/webassembly-for-the-java-geek.html

    Un article assez critique sur TypeScript https://dev.to/wiseai/17-compelling-reasons-to-start-ditching-typescript-now–249b

    On voit souvent des articles plutĂŽt positif sur TypeScript, mais est-ce que tout est tout rose tout le temps, pas forcĂ©ment ! L’article cite 17 problĂšmes avec TypeScript, dont la courbe d’apprentissage, la baisse de productivitĂ©, la verbositĂ© des types, le manque de flexibilitĂ©, le fait que ce n’est pas vraiment un sur-ensemble de JavaScript, la lenteur du temps de compilation
 basĂ© sur son talk sur le mĂȘme thĂšme qu’il a dĂ©jĂ  prĂ©sentĂ© Ă  Devoxx Maroc et Belgique Alex a Ă©galement Ă©crit une deuxiĂšme partie faisant suite Ă  son article, dans lequel il parle un peu plus d’ownership, de borrowing, du trait Drop, etc. (cĂ d sur la gestion mĂ©moire) https://wcgw.dev/posts/2023/rusty-java–2/ Librairies

    Sortie du Micronaut 3.8 https://micronaut.io/2022/12/27/micronaut-framework–3–8–0-released/

    support de GraalVM 22.3.0 possibilitĂ© d’annoter les records avec @RequestBean (pour binder les paramĂštres de requĂȘte et autre, aux paramĂštres de la mĂ©thode du controleur) amĂ©lioration du CorsFilter pour Ă©viter certaines attaques Ă©galement des amĂ©liorations sur le support de CRaC (Coordinated Restore at Checkpoint) et plein d’autres upgrades de versions, nouveaux plugins, et amĂ©liorations mineures

    Swing n’est pas mort ! Un nouveau DSL Java open source pour Swing dĂ©nommĂ© Sierra, pour faciliter la crĂ©ation d’interfaces graphiques Swing https://github.com/HTTP-RPC/Sierra

    Infrastructure

    Comprendre root dans et en dehors des containers https://www.redhat.com/en/blog/understanding-root-inside-and-outside-container

    un article pas recent mais utile c’est quoi un container rootless on peut etre root et lancer le moteur de container on peut etre root dans le container lui meme quand on run en root le moteur, l’utilisateur exterieur et interieur sont mappĂ©s (meme # d’UID) ; par contre en non root, le UID de l’utilisateur du container est mappĂ© sur un nouvel UID c’est top car les utilisateurs dedans et dehors ne sont pas mappĂ©s donc moins de risque en cas de sortie de bac a sable (sandbox escape) c’est le cas pour podman mais pour docker il y a un ajout: docker a un dĂ©mon (root ou pas) et une CLI qui appelle ce demon (root ou pas), ce qui importe c’est le demon pour les risques de sĂ©cu l’idĂ©al c’est de tourner non root le moteur et dans le container (meme si encore beaucoup d’images s’attendent a ĂȘtre root les folles) Cloud

    Kubernetes 1.26 avec notamment une de corrĂ©lation de l’hĂ©bergement de la Registry par Google https://www.infoq.com/news/2022/12/kubernetes–1–26/?utm_campaign=infoq_content&utm_source=twitter&utm_medium=feed&utm_term=Devops

    Web

    Evan You, le crĂ©ateur de Vue.js revient sur l’annĂ©e 2022 https://blog.vuejs.org/posts/2022-year-in-review.html

    C’est la grande migration de Vue 2 vers Vue 3 Migration de l’API Composition de Vue 3 vers l’API Options de Vue 2 (mais supportĂ© encore en 3) La documentation de Vue propose Vue 3 par dĂ©faut depuis fĂ©vrier Pendant la phase de transition, gros focus sur l’outillage et l’expĂ©rience dĂ©veloppeur L’écosystĂšme a bien adoptĂ© Vue 3 et continue de le faire au fur et Ă  mesure Pour 2023, espĂšre faire plus de releases mineures rĂ©guliĂšres, et travail sur le “vapor mode” qui propose une stratĂ©gie de compilation plus rapide Data

    Un article de Stephan Schmidt qui suggùre d’utiliser PostgreSQL
 pour tout ! https://www.amazingcto.com/postgres-for-everything/

    pour du caching Ă  la place de REDIS comme une queue de messages pour stocker des documents JSON au lieu de MongoDB pour faire des requĂȘtes gĂ©o-spatiales pour le full-text search Ă  la place d’ElasticSearch pour gĂ©nĂ©rer du JSON directement en base comme stockage / adaptateur pour GraphQL ou pour Timescale (base de donnĂ©es time-series) Outillage

    ChatGPT en action sur le design d’un nouveau langage de programmation https://judehunter.dev/blog/chatgpt-helped-me-design-a-brand-new-programming-language

    ChatGPT, on lui attribue plus de magie qu’il n’en a https://arxiv.org/pdf/2212.03551.pdf

    Github rajoute le scan des secrets dans vos rĂ©pos publics aussi https://github.blog/2022–12–15-leaked-a-secret-check-your-github-alerts-for-free/

    ce n’est plus seulement pour les organisations des entreprises aussi accessible pour les rĂ©pos publics permet d’éviter de leaker des clĂ©s d’API et autre

    Les nouveautĂ©s de Java sur Visual Studio Code https://foojay.io/today/java-on-visual-studio-code-update-december–2022/

    amĂ©lioration visuelles pour les extensions Spring Boot et aussi pour la visualisation de la mĂ©moire utilisĂ©e complĂ©tion “post-fix” comme dans IntelliJ plus de raccourcis pour gĂ©nĂ©rer du code support de Lombok intĂ©grĂ© support de l’annotation processing de Gradle meilleure visualisation des erreurs de build 2 millions de dĂ©veloppeurs utilisent Visual Studio Code pour Java

    Encore un guide pour sortir de Vi https://thevaluable.dev/vim-advanced/

    Le client HTTP de IntelliJ peut maintenant ĂȘtre utilisĂ© en ligne de commande et dans un environnement d’intĂ©gration continue https://blog.jetbrains.com/idea/2022/12/http-client-cli-run-requests-and-tests-on-ci/

    Architecture

    L’évolution du rĂŽle de l’architecte https://www.infoq.com/articles/architecture-architecting-role/

    Le (trùs long) rapport des tendances 2023 par Didier Girard et Olivier Rafal https://www.linkedin.com/pulse/rapport-tendances–2023-didier-girard/?trackingId=wu9pJ4wNQAOKjh11R2UyjA%3D%3D

    un prisme tech/orga/culture pour prĂ©parer l’entreprise aux enjeux un prisme produits/plateformes/data pour structurer notre approche d’un SI moderne. couvre des tonnes de sujets de l’intelligence artificielle, les donnĂ©es, le cloud, le web1/2/3, mais aussi l’organisation des Ă©quipes, les rĂŽles, etc. Loi, sociĂ©tĂ© et organisation

    Twitter n’apprĂ©cie guĂšre Mastodon, et bride les tweets avec des liens vers Mastodon. La libertĂ© d’expression façon Elon Musk ! https://twitter.com/bluxte/status/1603656787097534464

    Statement de Mastodon sur le fait que Twitter bannit les liens vers Mastodon https://blog.joinmastodon.org/2022/12/twitter-suspends-mastodon-account-prevents-sharing-links/ Et finalement Twitter est revenu en arriùre sur son changement des conditions d’utilisation

    Dans la famille “les informaticiens ont des supers passions”, je voudrais CĂ©dric Champeau, qui nous fait une magnifique rĂ©trospective de ces clichĂ©s d’astrophotographie https://melix.github.io/blog//2022/12/astrophoto–2022.html

    Conférences

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

    19 janvier 2023 : Archilocus - Bordeaux (France) 19–20 janvier 2023 : Touraine Tech - Tours (France) 25–28 janvier 2023 : SnowCamp - Grenoble (France) 31 janvier 2023 : Duck Conf - Paris (France) 2 fĂ©vrier 2023 : Very Tech Trip - Paris (France) 2 fĂ©vrier 2023 : AgiLeMans - Le Mans (France) 9–11 fĂ©vrier 2023 : World AI Cannes Festival - Cannes (France) 16–19 fĂ©vrier 2023 : PyConFR - Bordeaux (France) 7 mars 2023 : Kubernetes Community Days France - Paris (France) 23–24 mars 2023 : SymfonyLive Paris - Paris (France) 23–24 mars 2023 : Agile Niort - Niort (France) 1–2 avril 2023 : JdLL - Lyon 3e (France) 5–7 avril 2023 : FIC - Lille Grand Palais (France) 12–14 avril 2023 : Devoxx France - Paris (France) 20–21 avril 2023 : Toulouse Hacking Convention 2023 - Toulouse (France) 4–6 mai 2023 : Devoxx Greece - Athens (Greece) 10–12 mai 2023 : Devoxx UK - London (UK) 12 mai 2023 : AFUP Day - lle & Lyon (France) 25–26 mai 2023 : Newcrafts Paris - Paris (France) 26 mai 2023 : Devfest Lille - Lille (France) 27 mai 2023 : Polycloud - Montpellier (France) 7 juin 2023 : Serverless Days Paris - Paris (France) 15–16 juin 2023 : Le Camping des Speakers - Baden (France) 29–30 juin 2023 : Sunny Tech - Montpellier (France) 19 septembre 2023 : Salon de la Data Nantes - Nantes (France) & Online 21–22 septembre 2023 : API Platform Conference - Lille (France) & Online 2–6 octobre 2023 : Devoxx Belgium - Antwerp (Belgium) 12 octobre 2023 : Cloud Nord - Lille (France) 12–13 octobre 2023 : Volcamp 2023 - Clermont-Ferrand (France) 6–7 dĂ©cembre 2023 : Open Source Experience - 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/