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ĂźtAmĂ©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 CartierManuel 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 contacterPour 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
NewsLes 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 :)
LangagesRetour 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 LibrairiesSortie 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Ă©liorationsjQuery 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 InfrastructureLinkerd 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 aussiCloudflare 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 contentLe 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 ArtificielleMistral 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 MistralInfinispan 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 OutillageNe 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 dangereuxUne 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 ArchitectureNetflix 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 longtempsUn 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Ă©thodologiesOpinion: 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 suffisantNavigate 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 inspirantUn 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Ă©rencesLa 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 contacterPour 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?
-
Enregistré le 27 février 2024
TĂ©lĂ©chargement de lâĂ©pisode LesCastCodeurs-Episode-307.mp3
InterviewLes 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 JaneHolly Cummins
Mark JaneHolly 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 termeDans 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 contacterPour 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 LangagesUne 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
NewsRIP 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 pragmatiquehttps://recording.zencastr.com/lescastcodeurs/news-305
LangagesLâ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 deuxComment 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 LibrairiesLe 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 ! CloudLe glossaire de la Cloud Native Foundation a Ă©tĂ© traduit en Français https://glossary.cncf.io/fr/
WebSortie 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 composantsPrĂ©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 ArtificielleRetour 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 programmationDidier 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âentrepriseAppel 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Ă©thodologiesUne 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 organisationEU 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 informationChatGPT 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 5Transcription 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âĂ©pisodeUserscripts https://github.com/quoid/userscripts: extension pour changer le CSS et JS des sites dans votre navigateur
Rubrique dĂ©butantGuillaume 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érencesLa 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 contacterPour 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
NewsAide Les Cast Codeurs et remplis un petit formulaire pour nous guider lâannĂ©e prochaine https://lescastcodeurs.com/sondage
LangagesAvec 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 glissantesJoe 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) LibrairiesUne 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 bisounoursMarc 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 alpha1Hibernate 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 JFRIntĂ©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) CloudComment 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 WebVers 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 ArtificielleGoogle 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 correctAvec 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 GeminiFacebook, 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 macsFaire 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 OutillageSfeir 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 assembleurLes 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-2023Un 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 lireUne 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/ ArchitectureComment 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Ă©thodologiesUn 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 LLMVous 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 specifiquementComment 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 gensPourquoi 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Ă©rencesLâ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 desengagentLa 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 contacterPour 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
Vert.x 4.5
X (ancien twitter)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 contacterPour 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 LangagesRecap 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 Ă jourDouglas 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 actorsWasmGC 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. LibrairiesSpring 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 kotlinIntegration declarative de Langchain4j dans Quarkus https://quarkus.io/blog/quarkus-meets-langchain4j/
InfrastructureOxide 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Ă©savantageLes 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 uniqueKarpenter 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 WebDeno! 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 etcLancement 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 OutillageIl 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/osslsigncodeLors 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 CopilotUn 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 ArchitectureArticle 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 / IAElon 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 TwitterOpenAI 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 organisationLes 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 sortirLes 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=20Les 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Ă©rencesRetrouvez les confĂ©rences sur le site Developers Conferences Agenda/List par AurĂ©lie Vache.
Nous contacterPour 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 LangagesGĂ©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 rappelTous 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âarticleJBang 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) LibrairiesQuarkus 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 InfrastructureOpenTF 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 21The 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 contacterPour 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 LangagesApache 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 2015Java 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! LibrairiesSemantic 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 InfrastructureUne 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?
WebNodeJS 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 DataRedis 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/
ArchitectureArticle 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 GPUsMeta 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 negatifKubeflow 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Ă©thodologiesMeasuring 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.htmlEt 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 RyzenComment 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 organisationUne 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 facileHashiCorp 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/announcementStack 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Ă©rencesLa 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 contacterPour 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 LangagesLa 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Ă©sGPT 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 GPT4Le 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Ă© â vraiInfoQ 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 LibrairiesSortie 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/
InfrastructureRed 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 distribuerSUSE 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 WebGoogle 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 2023Petite introduction Ă WebGPU en français https://blog.octo.com/connaissez-vous-webgpu/
DataAvec 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 OutillageLe 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ĂšsDes 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 commandesLe 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
ArchitectureModerniser 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 cloudDemis 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Ă©thodologiesApprocher 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 organisationMercedes 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Ă©maFree 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 jeuLa 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 dommagesOctave 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Ă©ennesYann 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érencesLa 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 contacterPour 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 LangagesLors 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 pafLes 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Ă© LibrairiesGuava 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 GoogleComment 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/ InfrastructureDebezium 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 EnterpriseUn 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 lirePost 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 CloudLe 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Ă© OutillagePodman 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 mockPourquoi 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âoeufSimplifier 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 javaagentLes 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 heuresJust, 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Ă©thodologiesAWS 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Ă©esUn 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 organisationMigration 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érencesAurelie 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 contacterPour 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 2023Site 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 FoldArticle : 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 TabletArticle : 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 7aArticle : 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 AndroidArticle 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 MapsArticle : 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 PhotosArticle 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 LabsArticle : 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 WorkspaceArticle : 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 CloudIntĂ©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 WebArticle : 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 contacterPour 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 LangagesUn 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 vendeursJava 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 dessusPDF 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Ă©esLâĂ©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 6Une 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 soleilMicronaut 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 Infrastructure5 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Ă©thodologiesTrends 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 organisationRed 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 2019Crazy 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=3545734110 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 fonctionsTwitter 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 ouvertThe 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Ă©butantOn 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Ă©rencesUne 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 contacterPour 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
InterviewLa vidéo du direct Devoxx France qui est plus facile à suivre se trouvera sur YouTube.
Nous contacterSoutenez 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
InterviewTwitter Hervé Boutemy
JChateau
JavaDayMaven et son histoire
Les builds reproductibles
Nous contacter
Les builds reproductibles sur la JVM
Les builds reproductibles avec MavenPour 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 LangagesQuelle version de JDK utiliser en fonction des fonctionnalitĂ©s que lâon souhaite utiliser mais aussi du long time support https://whichjdk.com/
JetBrains propose une formation Rust intégrée aux IDEs https://blog.jetbrains.com/rust/2023/02/21/learn-rust-with-jetbrains-ides/
Un apprentissage directement intĂ©grĂ© Ă lâIDE Avec un plugin âAcademyâ dĂ©diĂ©, qui rajoute un troisiĂšme panneau avec les instructions, les explications, et on fait des exercices dans la partie IDE Une chouette maniĂšre dâapprendre intĂ©grĂ©e directement Ă son IDE Chacun doit pouvoir crĂ©er ses propres ressources dâapprentissage, et on pourrait appliquer ça Ă des frameworks, des outils, ou pourquoi pas son propre projet informatique !Retravail de classes du JDK Bits / ByteArray vers un usage via VarHandle pour le swapping de bits dans Java 21 https://minborgsjavapot.blogspot.com/2023/01/javaâ21-performance-improvements.html
petit changement mais utilisĂ© par beaucoup de classes comme ObjectInputStream RandomAccessFile etc amĂ©liore la serialization en javaRajout 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 communLe 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 LibrairiesQuarkus 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, OpenShiftLa 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Ă©sComment 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 EmbeddableIntentiatorCinq 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) CloudDocker 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/ WebUne 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 OutillageGradle 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]: yUn 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 codeGit: 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âexploitationCĂ©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 ArchitectureLa 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Ă©thodologiesLe 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 organisationLe 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 restrictionMeta supprime de nouveau 10000 emplois soit 25% au total depuis la fin de lâannĂ©e derniĂšre https://www.lesechos.fr/tech-medias/hightech/meta-va-supprimerâ10000-postes-de-plusâ1915528
Rubrique dĂ©butantBouger les Ă©lĂ©ments dâune liste https://www.baeldung.com/java-arraylist-move-items
discute le concept dâarray list en dessous et donc le coĂ»t dâinsĂ©rer au milieu decouverte de Collections.swap (pour intervertir deux elements) decouverte de Collections.rotate pour âdeplacerâ lâindex zero de la liste ConfĂ©rencesLa 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 contacterPour 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 LangagesOracle 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Ă©eInfoQ 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 LibrairiesLes 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 clavierComment 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 connexionSortie 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 CloudKubernetes 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 DataBig 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 OutillageTous 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 conceptLe 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 astucesUn 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 actionsUn 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 warmupUne 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â7677Les bisounours
MĂ©thodologiesDe 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 organisationTwitter 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 ordiOla 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 prisonGoogle 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ébutantJulia 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 nonQuels 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Ă©rencesLa 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 contacterPour 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 LangagesOpenJDK 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/ LibrairiesSortie 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 mineuresSwing 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
InfrastructureComprendre 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) CloudKubernetes 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
WebEvan 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 DataUn 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) OutillageChatGPT 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 autreLes 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 JavaEncore 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/
ArchitectureLâĂ©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 organisationTwitter 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âutilisationDans 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érencesLa 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 contacterPour 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/ - Show more