POPULARITY
Dans cet épisde en audio et en vidéo (youtube.com/lescastcodeurs), Guillaume et Emmanuel discutent des 15 ans de Go, d'une nouvelle approche de garbage collecting, de LLMs dans les applications Java, dobservabilité, d'une attaque de chaine d'approvisionnement via javac et d'autres choses. Enregistré le 13 décembre 2024 Téléchargement de l'épisode LesCastCodeurs-Episode-319.mp3 News Langages Go fête son 15ème anniversaire ! https://go.dev/blog/15years discute les 15 ans la corrections de gotchas dans les for loops (notamment les variables étaient loop scoped) le fait que la compile echoue si on attend une version de go superieure seulement depuis go 1.21 en parallele de la gestion de la chaine d'outil (c'est en 2023 seulement!) opt-in telemetrie aussi recent Construire OpenJDK à partir des sources sur macOS https://www.morling.dev/blog/building-openjdk-from-source-on-macos/ de maniere surprenante ce n'est pas tres compliqué Papier sur l'aproche Mark-scavenge pour un ramasse miette https://inside.java/2024/11/22/mark-scavenge-gc/ papier de recherche utiliser l'accessibilité pour preuve de vie n'est pas idéal: un objet peut etre atteignable mais ne sera jamais accedé par le programme les regions les plus pauvres en objets vivant voient leurs objets bouger dans uen autre region et la regio libéré, c'est le comportement classique des GC deux methodes: mark evaguate qui le fait en deux temps et la liveness peut evoluer ; et scavenge qui bouge l'objet vivant des sa decouverte ont fait tourner via ZGC des experience pour voir les objects consideres vivants et bougés inutilement. resultats montrent un gros taux d'objets bougés de maniere inutile proposent un algo different ils marquent les objets vivants mais ne les bougent pas avant le prochain GC pour leur donner une change de devenir unreachable elimine beaucoup de deplacement inutiles vu que les objets deviennent non accessible en un cycle de GC jusquà 91% de reduction ! Particulierement notable dans les machines chargées en CPU. Les tokens d'accès court ou longs https://grayduck.mn/2023/04/17/refresh-vs-long-lived-access-tokens/ pourquoi des long access tokens (gnre refresh token) sont utilises pour des short lived dans oauth 2.0 refresh token simplifient la revocation: vu que seul le auth serveur a a verifier la révocation et les clients vérifient l'expiration et la validité de la signature refresh token ne sont envoyés que entre endpoints alors que les access tokens se baladent pas mal: les frontières de confiance ne sont pas traversées refresh token comme utilise infréquement, et donc peut etre protegee dans une enclave les changements de grants sont plus simple tout en restant distribuable histoire des access refresh token et access token permet de mieux tracer les abus / attaques les inconvenients: c'est plus compliqué en flow, the auth serveur est un SPOF amis mitigeable Java Advent est de retour https://www.javaadvent.com/calendar backstage Java integrite par defaut (et ses consequences sur l'ecosysteme) timefold (sovler) Les extensions JUNit 5 OpenTelemetry via Java Agent vs Micrometer analyse statique de code CQRS et les fonctionalités modernes de Java java simple (sans compilatrion, sans objet fullstack dev with quarkus as backend José Paumard introduit et explique les Gatherers dans Java 24 dans cette vidéo https://inside.java/2024/11/26/jepcafe23/ Librairies Micronaut 4.7, avec l'intégration de LangChain4j https://micronaut.io/2024/11/14/micronaut-framework-4-7-0-released/ Combiner le framework de test Spock et Cucumber https://www.sfeir.dev/back/spock-framework-revolutionnez-vos-tests-unitaires-avec-la-puissance-du-bdd-et-de-cucumber/ les experts peuvent écrire leurs tests au format Gherkin (de Cucumber) et les développeurs peuvent implémenter les assertions correspondantes avec l'intégration dans Spock, pour des tests très lisibles Spring 6.2 https://spring.io/blog/2024/11/14/spring-framework-6-2-0-available-now beans @Fallback améliorations sur SpELet sur le support de tests support de l'echape des property placeholders une initioalisation des beans en tache de fond nouvelle et pleins d'autres choses encore Comment créer une application Java LLM tournant 100% en Java avec Jlama https://quarkus.io/blog/quarkus-jlama/ blog de Mario Fusco, Mr API et Java et Drools utilise jlama + quarkus + langchain Explique les avantage de l'approche pure Java comme le cycle de vie unique, tester les modeles rapidement, securite (tout est in process), monolithe ahahah, observabilité simplifiée, distribution simplifiée (genre appli embarquée) etc Vert.x 5 en seconde incubation https://vertx.io/blog/eclipse-vert-x-5-candidate-2-released/ Support des Java modules (mais beacoup des modules vert.x eux-même ne le supportent pas support io_uring dans vert.x core le load balancing côté client le modele des callbacks n'est plus supporté, vive les Futur beaucoup d'améliorations autour de gRPC et d'autres choses Un article sur Spring AI et la multi modalite audio https://spring.io/blog/2024/12/05/spring-ai-audio-modality permet de voir les evolutions des APIs de Spring AI s'appluie sur les derniers modeles d'open ai des examples comme par exemple un chatbot voix et donc comment enregistrer la voix et la passer a OpenAI Comment activer le support experimental HTTP/3 dans Spring Boot https://spring.io/blog/2024/11/26/http3-in-reactor-2024 c'ets Netty qui fait le boulot puis Spring Netty l'article décrit les etapes pour l'utiliser dans vos applis Spring Boot ou Spring Cloud Gateway l'article explique aussi le cote client (app cliente) ce qui est sympa Infrastructure Un survol des offres d'observabilité http://blog.ippon.fr/2024/11/18/observabilite-informatique-comprendre-les-bases-2eme-partie/ un survol des principales offres d'observabilité Open source ou SaaS et certains outsiders Pas mal pour commencer à défricher ce qui vous conviendrait blog de ippon Web Sortie de Angular 19 https://blog.ninja-squad.com/2024/11/19/what-is-new-angular-19.0/ stabilité des APIs Signal APIs migration automatique vers signals composants standalone par défaut nouvelles APIs linkedSignal et resource de grosses améliorations de SSR et HMR un article également de Sfeir sur Angular 19 https://www.sfeir.dev/front/angular-19-tout-ce-quil-faut-savoir-sur-les-innovations-majeures-du-framework/ Angluar 19 https://www.sfeir.dev/front/angular-19-tout-ce-quil-faut-savoir-sur-les-innovations-majeures-du-framework/ composant standalone par default (limiter les problemes de dependances), peut le mettre en strict pour le l'imposer (ou planter) signalement des imports inutilisés @let pour les variables locales dans les templates linkedSignal (experimental) pour lier des signaux entre eux (cascade de changement suite a un evenement hydratation incrementale (contenu progressivement interactif avec le chargement - sur les parties de la page visible ou necessaires et event replay, routing et modes de rendu en rendy hybride, Hot module replacement etc The State of Frontend — dernière compilation des préférences des développeurs en terme de front https://tsh.io/state-of-frontend/ React en tête, suivi de Vue et Svelte. Angular seulement 4ème Côté rendering framework, Next.js a la majorité absolue, ensuite viennent Nuxt et Astro Zod est la solution de validation préférée Pour la gestion de date, date-fns est en tête, suivi par moment.js Côté state management, React Context API en première place, mais les suivants sont tous aussi pour React ! Grosse utilisation de lodash pour plein d'utilités Pour fetcher des resources distantes, l'API native Fetch et Axios sont les 2 vaincoeurs Pour le déploiement, Vercel est premier Côté CI/CD, beaucoup de Github Actions, suivi par Gitlab CI Package management, malgré de bonnes alternatives, NPM se taille toujours la part du lion Ecrasante utilisation de Node.js comme runtime JavaScript pour faire du développement front Pour ce qui est du typing, beaucoup utilisent TypeScript, et un peu de JSdoc, et la majorité des répondants pensent que TypeScript a dépassé JavaScript en usage Dans les API natives du navigateur, Fetch, Storage et WebSockets sont les APIs les plus utilisées La popularité des PWA devrait suivre son petit bonhomme de chemin En terme de design system, shadcn.ui en tête, suivi par Material, puis Bootstram Pour la gestion des styles, un bon mix de plain old CSS, de Tailwind, et de Sass/CSS Jest est premier comme framework de tests Les 3/4 des développeurs front utilisent Visual Studio Code, quant au quart suivant, c'est JetBrains qui raffle les miettes Pour le build, Vite récolte les 4/5 des voix ESLint et Prettier sont les 2 favoris pour vérifier le code Parfois, on aimerait pouvoir tester une librairie ou un framework JavaScript, sans pour autant devoir mettre en place tout un projet, avec outil de build et autre. Julia Evans explore les différents cas de figure, suivant la façon dont ces librairies sont bundlées https://jvns.ca/blog/2024/11/18/how-to-import-a-javascript-library/ Certaines librairies permette de ne faire qu'un simple import dans une balise script Certaines frameworks sont distribués sous forme d'Universal Module Definition, sous CommonJS, d'ESmodule franchemet en tant que noob c'est compliqué quand même Data et Intelligence Artificielle L'impact de l'IA en entreprise et des accès aux documents un peu laxistes https://archive.ph/uPyhX l'indexing choppe tout ce qu'il peut et l'IA est tres puissante pour diriger des requetes et extraires les données qui auraient du etre plus restreintes Différentes manières de faire de l'extraction de données et de forcer la main à un LLM pour qu'il génère du JSON https://glaforge.dev/posts/2024/11/18/data-extraction-the-many-ways-to-get-llms-to-spit-json-content/ l'approche “je demande gentiment” au LLM, en faisant du prompt engineering en utilisant du function calling pour les modèles supportant la fonctionnalité, en particulier avant les approches de type “JSON mode” ou “JSON schema” ou effectivement si le modèle le supporte aussi, toujours avec un peu de prompting, mais en utilisant le “JSON mode” qui force le LLM a générer du JSON valide encore mieux avec la possibilité de spécifier un schema JSON (type OpenAPI) pour que le JSON en sortie soit “compliant” avec le schéma proposé Comment masquer les données confidentielles avec ses échanges avec les LLMs https://glaforge.dev/posts/2024/11/25/redacting-sensitive-information-when-using-generative-ai-models/ utilisation de l'API Data Loss Prevention de Google Cloud qui permet d'identifier puis de censurer / masquer (“redacted” en anglais) des informations personnelles identifiables (“PII”, comme un nom, un compte bancaire, un numéro de passeport, etc) pour des raison de sécurité, de privacy, pour éviter les brèche de données comme on en entend trop souvent parler dans les nouvelles On peut utiliser certains modèles d'embedding pour faire de la recherche de code https://glaforge.dev/posts/2024/12/02/semantic-code-search-for-programming-idioms-with-langchain4j-and-vertex-ai-embedding-models/ Guillaume recherche des bouts de code, en entrant une requête en langue naturel Certains embedding models supportent différents types de tâches, comme question/réponse, question en langue naturelle / retour sous forme de code, ou d'autres tâches comme le fact checking, etc Dans cet article, utilisation du modèle de Google Cloud Vertex AI, en Java, avec LangChain4j Google sort la version 2 de Gemini Flash https://blog.google/technology/google-deepmind/google-gemini-ai-update-december-2024/ La nouvelle version Gemini 2.0 Flash dépasse même Gemini 1.5 Pro dans les benchmarks Tout en étant 2 fois plus rapide que Gemini 1.5 Pro, et bien que le prix ne soit pas encore annoncé, on imagine également plus abordable Google présente Gemini 2 comme le LLM idéal pour les “agents” Gemini propose une vraie multimodalité en sortie (premier LLM sur le marché à le proposer) : Gemini 2 peut entrelacer du texte, des images, de l'audio Gemini 2 supporte plus de 100 langues 8 voix de haute qualité, assez naturelles, pour la partie audio Un nouveau mode speech-to-speech en live, où on peut même interrompre le LLM, c'est d'ailleurs ce qui est utilisé dans Project Astra, l'application mobile montrée à Google I/O qui devient un vrai assistant vocale en live sur votre téléphone Google annonce aussi une nouvelle expérimentation autour des assistants de programmation, avec Project Jules, avec lequel on peut discuter en live aussi, partager son code, comme un vrai pair programmeur Google a présenté Project Mariner qui est un agent qui est sous forme d'extension Chrome, qui va permettre de commander votre navigateur comme votre assistant de recherche personnel, qui va être capable de faire des recherches sur le web, de naviguer dans les sites web, pour trouver les infos que vous recherchez Cet autre article montre différentes vidéos de démos de ces fonctionnalités https://developers.googleblog.com/en/the-next-chapter-of-the-gemini-era-for-developers/ Un nouveau projet appelé Deep Research, qui permet de faire des rapports dans Gemini Advanced : on donne un sujet et l'agent va proposer un plan pour un rapport sur ce sujet (qu'on peut valider, retoucher) et ensuite, Deep Research va effectuer des recherches sur le web pour vous, et faire la synthèse de ses recherches dans un rapport final https://blog.google/products/gemini/google-gemini-deep-research/ Enfin, Google AI Studio, en plus de vous permettre d'expérimenter avec Gemini 2, vous pourrez aussi utiliser des “starter apps” qui montrent comment faire de la reconnaissance d'objet dans des images, comment faire des recherches avec un agent connecté à Google Maps, etc. Google AI Studio permet également de partager votre écran avec lui, en mobile ou en desktop, de façon à l'utiliser comme un assistant qui peut voir ce que vous faites, ce que vous coder et peut répondre à vos questions Méthodologies Un article de GitHub sur l'impact de la surutilisation des CPU sur la perf de l'appli https://github.blog/engineering/architecture-optimization/breaking-down-cpu-speed-how-utilization-impacts-performance/ c'est surprenant qu'ils ont des effets des 30% de perf c'est du a la non limit thermique, au boost de frequece qui en suit ils ont donc cherché le golden ratio pour eux autour de 60% ils prennent des morceaux de cluster kube poru faire tourner les workloads et ajoutent des wqorkload CPU artificiels (genre math) Sécurité Attaque de la chaîne d'approvisionnement via javac https://xdev.software/en/news/detail/discovering-the-perfect-java-supply-chain-attack-vector-and-how-it-got-fixed s'appuie sur l'annotation processeur l'annotation processors des dependances est chargé et executé au moment du build du projet et cherche les annotations processor dans le user classpath (via le pattern serviceloader) et donc si la dependance est attaquée et un annotation processor est ajouté ou modifié on a un vecteur d'attaque au moment de la compilation du projet ciblé des qu'on deparre l'IDE en gros workaround, activer -proc:none et activer les annotation processors explicitly dans votre outil de build certaines améliorations dans le JDK: le compilateur note qu'il execute un annotation processor dans java 23+ les annotation processors sont deactivés par defaut Conférences La liste des conférences provenant de Developers Conferences Agenda/List par Aurélie Vache et contributeurs : 19 décembre 2024 : Normandie.ai 2024 - Rouen (France) 20 janvier 2025 : Elastic{ON} - Paris (France) 22-25 janvier 2025 : SnowCamp 2025 - Grenoble (France) 24-25 janvier 2025 : Agile Games Île-de-France 2025 - Paris (France) 30 janvier 2025 : DevOps D-Day #9 - Marseille (France) 6-7 février 2025 : Touraine Tech - Tours (France) 21 février 2025 : LyonJS 100 - Lyon (France) 28 février 2025 : Paris TS La Conf - Paris (France) 20 mars 2025 : PGDay Paris - Paris (France) 20-21 mars 2025 : Agile Niort - Niort (France) 25 mars 2025 : ParisTestConf - Paris (France) 26-29 mars 2025 : JChateau Unconference 2025 - Cour-Cheverny (France) 28 mars 2025 : DataDays - Lille (France) 28-29 mars 2025 : Agile Games France 2025 - Lille (France) 3 avril 2025 : DotJS - Paris (France) 10-11 avril 2025 : Android Makers - Montrouge (France) 10-12 avril 2025 : Devoxx Greece - Athens (Greece) 16-18 avril 2025 : Devoxx France - Paris (France) 29-30 avril 2025 : MixIT - Lyon (France) 7-9 mai 2025 : Devoxx UK - London (UK) 16 mai 2025 : AFUP Day 2025 Lille - Lille (France) 16 mai 2025 : AFUP Day 2025 Lyon - Lyon (France) 16 mai 2025 : AFUP Day 2025 Poitiers - Poitiers (France) 24 mai 2025 : Polycloud - Montpellier (France) 5-6 juin 2025 : AlpesCraft - Grenoble (France) 11-13 juin 2025 : Devoxx Poland - Krakow (Poland) 12-13 juin 2025 : Agile Tour Toulouse - Toulouse (France) 12-13 juin 2025 : DevLille - Lille (France) 24 juin 2025 : WAX 2025 - Aix-en-Provence (France) 26-27 juin 2025 : Sunny Tech - Montpellier (France) 1-4 juillet 2025 : Open edX Conference - 2025 - Palaiseau (France) 18-19 septembre 2025 : API Platform Conference - Lille (France) & Online 2-3 octobre 2025 : Volcamp - Clermont-Ferrand (France) 6-10 octobre 2025 : Devoxx Belgium - Antwerp (Belgium) 16-17 octobre 2025 : DevFest Nantes - Nantes (France) 6 novembre 2025 : dotAI 2025 - Paris (France) 12-14 novembre 2025 : Devoxx Morocco - Marrakech (Morocco) 23-25 avril 2026 : Devoxx Greece - Athens (Greece) 17 juin 2026 : Devoxx Poland - Krakow (Poland) Nous contacter Pour réagir à cet épisode, venez discuter sur le groupe Google https://groups.google.com/group/lescastcodeurs Contactez-nous via twitter https://twitter.com/lescastcodeurs Faire un crowdcast ou une crowdquestion Soutenez Les Cast Codeurs sur Patreon https://www.patreon.com/LesCastCodeurs Tous les épisodes et toutes les infos sur https://lescastcodeurs.com/
An airhacks.fm conversation with Jonathan Schneider (@jon_k_schneider) about: Spinnaker's role in continuous delivery and multi-cloud deployments, multi-cloud architectures, Micrometer's origin and design as a vendor-neutral metrics abstraction library, comparison of micrometer to other metrics solutions like opentelemetry and MicroProfile Metrics, exploration of Micrometer's architecture including registries and meter types, debate on static vs dependency-injected registries, explanation of distribution summaries and their use cases, consideration of unit testing metrics, examination of Micrometer's support for multiple monitoring systems simultaneously, discussion of meter filters for customizing metric output, reflection on the trade-offs between language support and monitoring system support in metrics libraries, insights into the separation of application and runtime metrics, Jonathan's experience developing Micrometer at Netflix and Pivotal, current usage of Micrometer and prometheus in Modern's multi-tenant SaaS architecture, comparison of serverless and EC2-based deployments for different use cases, OpenRewrite's growing popularity in Europe Jonathan Schneider on twitter: @jon_k_schneider
Hi, Spring fans! In this installment we talk to observability legend Jonatan Ivanov about the latest and greatest in the wide and wonderful world of observability. (Turns out a library that's used by countless projects including and beyond the Spring ecosystem keeps quite busy!)
Diese Episode startet mit dem Thema das auch schon andere Technikpodcasts die letzten Tage beschäftigt hat: Apple vs. Digital Markets Act. Danach sprechen Tom und André über die neuesten Apple Developer Betas die für das iPhone und iPad veröffentlicht wurden. Bei den Dev Themen geht es dieses Mal um SSL Verschlüsselung im Zusammenhang mit dem MySQL JDBC Treiber, Domain-Oriented Observability und Cyberchef bzw. dem Testen von REST APIs.
An airhacks.fm conversation with Jonathan Schneider (@jon_k_schneider) about: OpenRewrite as an open-source tool for code transformation using lossless semantic trees (LSTs), recipes as programs that manipulate the LST, YAML configuration for defining recipes, dry run and in-place code modification options, separation of open-source and commercial aspects of the project, Moderne as a SaaS platform for large-scale code analysis and transformation, visualization features in Moderne including dependency usage violin charts, impact analysis capabilities, organizational structure in Moderne for managing large codebases, integration of OpenRewrite in various IDEs and tools including Amazon Q Code Transformer, IntelliJ IDEA, and Visual Studio Code, the business model of open-source and commercial offerings, the genesis of OpenRewrite from Gradle Lint in 2015-2016, recent momentum in adoption, Jonathan's background with micrometer project, discussion about IDEs including Visual Studio Code and IntelliJ IDEA, potential future topics including Micrometer and Spinnaker Jonathan Schneider on twitter: @jon_k_schneider
Join Dan Vega and DaShuan Carter for the latest updates from the Spring Ecosystem. In this episode, Dan is joined by special guests Tommy Ludwig and Jonatan Ivanov. They will discuss their upcoming talk at Spring I/O titled "Micrometer Mastery: Unleash advanced observability in your JVM apps". They will also discuss some of the new observability features in the upcoming Spring Boot 3.3. You can participate in our live stream to ask questions, or catch the replay on your preferred podcast platform.Show Noteshttps://calendar.spring.io/Micrometer 1.13.01.13 Migration GuideBoot 3.3 Release Notes
Micron ratings are a bit confusing, and they are used for everything from pool filtration to robotic pool cleaners to vacuum bags. What exactly is a micron, and which micron ratings are the best? Leslie's Pro: Pool Service Pro, open a Wholesale account today! Customer referrals, free cleaner repairs, free water testing, open 7-days a week. It is fast and easy to become a Leslie's Preferred Pool Care Provider. https://lesliespool.com/commercial-services.html/?utm_medium=referral&utm_source=spll&utm_campaign=spll Visit Leslie's Pro to learn more: https://lesliespool.com/lesliespro.html/?utm_medium=referral&utm_source=spll&utm_campaign=spll Get a 30-Day FREE trial of Skimmer Pool Service Software: https://www.getskimmer.com/poolguyThanks for listening and I hope you find the Podcast helpful! For other free resources to further help you:Visit my Website: https://www.swimmingpoollearning.comWatch on YouTube: https://www.youtube.com/@SPLPodcast Site: https://the-pool-guy-podcast-show.onpodium.com/
Moderne Infrastrukturen wie Dapr oder der Service Mesh Linkerd setzen technische Aspekte von Microservices-Umgebungen wie Tracing, Monitoring oder Resilience in der Infrastruktur um. Eine andere Möglichkeit ist es, diese Aspekte in der Anwendung selber mit Bibliotheken zu implementieren. In dieser Episode werfen wir ein Blick auf ein Beispiel mit Spring Boot, Micrometer und resilience4j, um der Frage nachzugehen, ob Libraries vielleicht die bessere Microservices-Infrastruktur sind. Links Episode zu Dapr Episode zum Service Mesh Linkerd mit Hana Prinz Beispielcode Playlist Adventskalender Architektur-Kickstart ab 19.2. FLEX Training Karlsruhe 13.–15.2.2024 60 Minuten Consulting
Hi, Spring fans! In this installment, Josh Long (https://youtube.com/@coffesoftware) talks to Micrometer (https://micrometer.io) lead Tommy Ludwig, recorded live from beautiful Barcelona, Spain at Spring IO!
Guillaume et Emmanuel discutent les nouvelles de novembre décembre: spring boot 3, AWS SnapStart, GitHub Copilot en procès… Et aussi des articles de fond: performance, SRE et l'auto résilience, comment utiliser Git, le Devops pour les décideurs, l'age et la tech et d'autres sujets encore. Résumé Enregistré le 9 décembre 2022 Téléchargement de l'épisode LesCastCodeurs-Episode–289.mp3 News Langages Comment choisir ses collections ? Entre les différentes listes, maps, queues, etc. https://www.baeldung.com/java-choose-list-set-queue-map un bon rappel des fonctionalités des différentes collections (discuter le diagramme de choix) et un bon rappel des ordres de grandeur d'insertion, de lecture etc Attention o(n) ne veut pas dire plus lent que o(1), ca veut dire que ca scale linéraiement Tester avec le volume attendu de données Un bon viel Object[] et le traverser à chqaue fois peut etre bien plus efficace (moins gourmand en structure memoire, moins de jump memoire, etc) Librairies Spring Boot 3 est sorti https://spring.io/blog/2022/11/24/spring-boot–3–0-goes-ga Java 17 de base Support de GraalVM Native Image (au lieu de l'ancienne expérimentation de Spring Native) Amélioration de la traçabilité avec Micrometer et Micrometer Tracing JakartaEE 9 minimum et support de JakartaEE 10 Quarkus est 600 fois plus lent qu'un compétiteur, ou pas https://t.co/1c2sFSY9sE discute le lien entre les résultats et l'environnement Une erreur de code initiale Puis une erreur de limite de système ou deux Pour arriver au résultat Bon retour sur l'approche méthodologique Spring vault 3 https://spring.io/blog/2022/11/28/spring-vault–3–0-goes-ga Java 17 Plus de clients supportés comme le client jtm réactif du jdk Support du versionage des mots de passe pour les vaults clé valeur Cloud Mais pourquoi Twitter tourne t'il toujours malgré toutes les personnes renvoyées ? https://matthewtejo.substack.com/p/why-twitter-didnt-go-down-from-a Grâce au long travail de SRE, de mise en place d'auto-réparation, de cache, de monitoring, de sur-provisioning. Donc beaucoup d'automatisation pour faire en sorte que le tout fonctionne “presque” tout seul sans trop d'intervention humaine. C'est un article écrit par un des SRE qui travaillait en particulier sur le cache de Twitter. GitHub passe à un versioning par date de son API REST https://github.blog/2022–11–28-to-infinity-and-beyond-enabling-the-future-of-githubs-rest-api-with-api-versioning/ au lieu de continuer avec une v4, v5, etc, utilisation de date comme 2022–12–25 chacune de ses versions seraient supportées a minima 2 ans on peut spécifier la version avec un header HTTP spécial pas de changement pour l'API GraphQL par contre Stripes va encore plus loin en se rappelant la version utilisée au premier appel et le fixe par defaut Les appels sans version explicite utilisent celle là, et on peut la faire evoluer Amazon SnapStart pour lambda https://aws.amazon.com/blogs/aws/new-accelerate-your-lambda-functions-with-lambda-snapstart/ démarrer plus rapidement les lambda A une phase Init exécutée pour préparer la lambda snapshot Firecracker VM pas juste CRaC Remplace les seed et le réseau et le disque réduit les temps de démarrage Testé avec Quarkus https://quarkus.io/blog/quarkus-support-for-aws-lambda-snapstart/ Testé avec Micronaut https://twitter.com/sdelamo/status/1597535515758452736?s=46&t=iQ7IEvuv4e4eD1oM-Hi1IA Et avec Spring Boot Outillage Petit tip Git de Minko Gechev (monsieur Angular) https://twitter.com/mgechev/status/1594758205237706752 On peut faire un git clone [repo] —depth 1 pour dire qu'on ne veut que la dernière révision, et non pas tout l'historique du repo C'est pratique en particulier en CI pour gagner du temps lorsqu'on a un gros repo avec beaucoup de révisions Si vous luttez toujours avec git ce guide très détaillé peut vous aider. https://github.com/k88hudson/git-flight-rules Il s'agit d'un énorme “comment faire?” qui est même traduit en plusieurs langues dont le français: https://github.com/k88hudson/git-flight-rules/blob/master/README_fr.md Faire tourner ses Github Actions en local avec le projet open source Act https://github.com/nektos/act Pratique de vérifier en local le fonctionnement de son pipeline avant de le pousser sur Github en prod Utilise Docker sous le capot pour faire tourner chaque étape peut marcher sur podman mais pas garanti pour l'instant Comment transformer n'importe quel site web ou webapp en application autonome https://glaforge.appspot.com/article/turning-a-website-into-a-desktop-application utilisation d'une fonctionnalité de Chrome : création de raccourci avec ouverture dans une fenêtre “sans chrome” fonctionne sur tous les OS utilise le favicon comme icône pour l'application le site web se retrouve dans votre barre des tâches comme une application normale, et on peut faire un ALT/CMD-Tab pour aller vers son application, etc. Architecture Six patterns pour les architectures event driven https://medium.com/wix-engineering/6-event-driven-architecture-patterns-part–1–93758b253f47 de Wix Trois patterns dans cet article Consume and project : vue dematerialisee copie des données chaudes consommées par beaucoup. Et ces vues sont focalisées sur un consommateur. Kafka et CDC au milieu pour découpler Event driven de bout en bout : websocket utilise pour envoyer les demandes. Le web stocket serveur copie dans Kafka. Ces consommateurs font le job et un message est envoyé via le web socket serveur. Résilience, découplage K/V store: et en m'articuler avec kafka qui permet d'être consommé en k/v basse latence et en consommation d'évènement Peut être intéressant mais pas si simple a comprendre les usage dans cet article Méthodologies Un article sur quoi et pourquoi le DevOps (en fait englobant les bonnes pratiques du moment) https://enix.io/fr/blog/devops-benefices-difficultes/ les tech ne vont pas apprendre grand chose mais c'est un article pour les managers ou plutot les execs pour les aider à voir la valeur souvent plus facile de montrer la valeur par du contenu exterieur a l'entreprise percu comme neutre autres articles sur Kubernetes pour les execs https://enix.io/fr/blog/kubernetes-benefices-difficultes/ Amazon et la methode “working backwards” pour un produit https://www.productplan.com/glossary/working-backward-amazon-method/ imagine le produit pret a etre releasé ecrire la press release evaluer l'opportunité (doit-on le construire) découvrir les solution pour le faire et avoir l'appriobation des décideurs construire la roadmap construire le backlog Sécurité 1.5 million de lignes de code dans Android sont maintenant en Rust https://security.googleblog.com/2022/12/memory-safe-languages-in-android–13.html?m=1 de plus en plus de code memory safe (Java, Kotlin, Rust) Mais la majorité de nouveau code reste quand meme Java et C++ Et une correlation de baisse de vulnerabilités liées a la sureté de mémoire (moins de code de programme memory unsafe) Ou maturation du code avec moins de vuln? Autres efforts: outils de securisation de la memoire en C/C++, fuzzing Zero vuln memoire dans le code rust en 2 ans et en moyenne 1 / kLOC dans le code historique) Java -> JNI, Rust - unsafe {} pour les accès resource Loi, société et organisation Les dinosaures de la tech commencent à 40 ans? https://www.linkedin.com/pulse/non-nous-ne-sommes-pas-des-dinosaures-de-la-tech-pass%C3%A9-ramade/ Commentaire intéressant de Benjamin Marron qui explique “s'être restreint aux technos de son coeur d'activité car trop de veille technologique hétérogène l'avait épuisé et avait renforcé son sentiment d'être complètement obsolète et dépassé” https://twitter.com/bmarron/status/1596136098828148736 âge median des devs entre 28 et 31 ans chez Google ms Facebook Mais 50 ans c'est 30% de la force de travail Avantages seniors Expérience Mentorat (comm, interaction interpersonnelle, (atlassian un 40 ans dans chaque équipe rétention Moins de changement de travail tous les 3 ans Flexibilité : les vieux ont leurs enfants partis Aide à faire des produites pour les personnes de même âge pas souvent dans les politiques de DE&I GitHub copilot menacé par un procès https://www.infoq.com/news/2022/11/lawsuit-github-copilot/?utm_source=twitter&utm_medium=link&utm_campaign=calendar aux États Unis Class action contre copilot GitHub, ms et OpenAI Violation de copyright et notamment des licenses open source Hypothèse est que humain ou AI, même responsabilité face à la license Discussion autour de fair use vs rupture de contrat DMCA etc Piratage de logiciel à une échelle sans précédant Pour avoir des conséquences fortes sur l'IA et son utilisation des sources ouvertes pour construire du contenu Et Antonio va devoir recorder à la main Rubrique débutant Différentes méthodes d'interpolation des chaines en Java https://www.baeldung.com/java-string-interpolation la concatenation avec + la methode format() souvent intimidante mais plus optimisée et sure StringBuilder le plus flexible notamment dans les cas de if et autre variations mais moins sur que format. et plus rapide MessageFormat pour les chaines de caractère utilisateur (multi langage) Apache Commons (pas sur qu'il y ait beaucoup d'usage dans les JDK modernes Conférences La liste des conférences provenant de Developers Conferences Agenda/List par Aurélie Vache et contributeurs : 1 décembre 2022 : Devops DDay #7 - Marseille (France) 2 décembre 2022 : BDX I/O - Bordeaux (France) 2 décembre 2022 : DevFest Dijon 2022 - Dijon (France) 14–16 décembre 2022 : API Days Paris - Paris (France) & Online 15–16 décembre 2022 : Agile Tour Rennes - Rennes (France) 19 janvier 2023 : Archilocus - Bordeaux (France) 19–20 janvier 2023 : Touraine Tech - Tours (France) 25–28 janvier 2023 : SnowCamp - Grenoble (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 - 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) 10–12 mai 2023 : Devoxx UK - London (UK) 12 mai 2023 : AFUP Day Lille & Lyon (France) 25–26 mai 2023 : Newcrafts Paris - Paris (France) 29–30 juin 2023 : Sunny Tech - Montpellier (France) 12–13 octobre 2023 : Volcamp 2023 - Clermont Ferrand (France) Nous contacter Pour réagir à cet épisode, venez discuter sur le groupe Google https://groups.google.com/group/lescastcodeurs Contactez-nous via twitter https://twitter.com/lescastcodeurs Faire un crowdcast ou une crowdquestion Soutenez Les Cast Codeurs sur Patreon https://www.patreon.com/LesCastCodeurs Tous les épisodes et toutes les infos sur https://lescastcodeurs.com/
Ada lagi fakta yang nak kami utarakan? boleh sahaja. DM! Instagram Thinker: https://www.instagram.com/thinker.studios/?hl=en Watch us on Youtube: https://youtu.be/3EDLBKZzTEo Hear us on Syok: https://bm.syok.my/podcast/show/14181
NASA says the James Web Space Telescope was hit be a micrometer and needed an adjustment. Join Host Dawn Meyer to learn more of strike and what it might mean for gathering data of our universe.
On this episode of the Humans of DevOps, Jason Baum is joined by Jonathan Schneider, co-founder, and CEO of Moderne. They discuss how remote teams can overcome challenges using VR, the benefits of VR for remote teams, and how VR impacts code quality and developer productivity. View a short clip of the VR experience. Jonathan Schneider previously led the engineering effort around large-scale automated code refactoring at Netflix, where he founded the open source OpenRewrite project. On the Spring Team at Pivotal, he led the site reliability engineering team and founded the popular Java metrics library Micrometer. He is the author of O'Reilly's "SRE with Java Microservices.” Thanks to our episode sponsor Kolide! Want access to more content like this? Gain the tools, resources and knowledge to help your organization adapt and respond to challenges by becoming a professional member of DevOps Institute. Engage in one of the fastest-growing DevOps communities today! Get started for free: https://www.devopsinstitute.com/membership/ Use promo code HODPOD21 at this link for 20% off your Premium Membership. Have questions, feedback or just want to chat? Send us an email at podcast@devopsinstitute.com Please visit https://www.devopsinstitute.com/humans-of-devops-podcast/ for a lightly edited transcript.
An airhacks.fm conversation with Emily Jiang (@emilyfhjiang) about: the Chinese JavaONE, the MicroProfile book, writing a book in a caravan, the MicroProfile 5 release, MicroProfile 5.0 ships with Jakarta namespace, OpenLiberty supports MicroProfile 5.0, OpenTracing and OpenCensus merged into opentelemetry, MicroProfile OpenTelemetry will deprecate MicroProfile OpenTracing, Traced annotation and Tracer interface are comprising the OpenTracing spec, MicroProfile Metrics and micrometer, a shim layer around Micrometer could become MicroProfile Metrics, Jakarta EE is a shim, the Quarkus with Micrometer screencast, MicroProfile Metrics "application" registry is useful for business metrics and KPIs, MicroProfile standalone vs. platform releases, Jakarta EE 10 Core Profile will be consumed by MicroProfile, Jakarta Concurrency and Core Profile, MicroProfile Context Propagation integration with CDI, the importance of Jakarta EE Concurrency, a MicroProfile logging facade discussion, OpenTelemetry's logging branch, the AWS Lambda logging interface, injecting java.util.logging loggers and Java interface-based log facades, MicroProfile metrics custom scopes, a service mesh does not have any application-level insights, a service mesh performs a fallback based on traffic patters and not application logic, fault tolerance testing with service mesh vs. MicroProfile Fault Tolerance, MicroProfile and data access specification evaluation, Quarkus with MicroProfile as AWS Lambda screencast, Quarkus with MicroProfile as AWS Lambda github project, AWS serverless containers Jersey implementation, explaining AWS Lambdas with EJB talk, Message Driven Beans as email listeners with JCA, serverless and the ROI point of view, the self-explanatory serverless billing, OSGi is great for building runtimes, integrating MicroProfile Config with Jakarta EE, the Practical Cloud-Native Java Development with MicroProfile: Develop and deploy scalable, resilient, and reactive cloud-native applications using MicroProfile 4.1 book Emily Jiang on twitter: @emilyfhjiang
Dans ce nouvel épisode news, Arnaud, Emmanuel et Audrey reviennent sur les annonces d'Oracle concernant le JDK, sur Spring One, mais aussi sur les petites fuites de données et autre panne généralisée qui ont fait l'actu récemment. Enregistré le 8 octobre 2021 Téléchargement de l'épisode LesCastCodeurs-Episode–265.mp3 News Langages Oracle annonce des LTS de deux ans Donc une LTS tous les 2 au lieu de 3 ans, ce qui fait que la prochaine sera la 21 et pas la 23. Une enquête récente auprès de développeurs montre qu'entre un quart et la moitié utilisent les release de six mois en dev, mais moins de la moitié d'entre eux en prod Mais pas de détail sur le temps de security patch support gratuit. Oracle en payant c'est 8 ans Oracle offre Oracle JDK gratuitement avec support pendant 1 LTS + 1 an (donc 3 ans) Java 17 et + Redistribution gratuite aussi. Pas de click through. Sous license NFTC (“Oracle No-Fee Terms and Conditions”). Ils en ont marre d'avoir de la compétition ? Dans JDK 18, avec le JEP 400, le charset par défaut va enfin passer à UTF–8 Autant ce n'était plus vraiment un problème pour les systèmes sour mac OS ou Linux, qui utilisent depuis assez longtemps UTF–8 par défaut, mais c'est surtout pour les systèmes Windows où c'est plus problématique Dans JDK 17, la propriété système System.getProperty("native.encoding") avait été introduite si on veut lire par exemple un fichier avec Deux approches de mitigation pour les problèmes de compatibilité, en recompilant et en utilisant cette propriété quand on ouvre un fichier en utilisant -Dfile.encoding=COMPAT sans recompilation, qui gardera le même comportement qu'en JDK 17 et avant L'équipe d'Oracle suggère de tester ses applications avec -Dfile.encoding=UTF–8 pour voir s'il n'y a pas de soucis Librairies JUnit 5.8 les classes de test peuvent être ordonnées avec la Class Order API (par nom de classe, nom d'affichage, avec @order ou random) les classes de test imbriquées peuvent l'être avec @TestClassOrder @ExtendWith peut maintenant être utilisé pour enregistrer des extensions via des champs ou des paramètres de méthode (constructeur, méthodes de test ou lifecycle) @RegisterExtension peut maintenant être utilisé sur des champs privés. assertThrowsExactly version plus stricte de assertThrows() assertDoesNotThrow() supporte les suspending functions Kotlin assertInstanceOf produit de meilleurs messages d'erreurs (remplacement pour assertTrue(obj instanceof X)) assertNull comporte maintenant le type de l'object si sa méthode toString retourne null pour éviter les messages de type expected but was @TempDir peut maintenant être utilisé pour créer plusieurs répertoires temporaires (le retour au mode par context peut être fait par configuration) fait un reset des permissions read and write du répetertoire root et de tout les répertoires contenus plutôt que d'échouer à les supprimer peut maintenant être utilisé sur des champs private Nouvel UniqueIdTrackingListener qui va générer un fichier contenant les identifiants des test executés et qui peut être utilisé pour re-executer ces tests dans une image GraalVM par exemple. Stephen Colebourne avertit les utilisateurs de Joda Time de ne pas mettre à jour la base de données des fuseaux horaires Les personnes qui sont responsables de cette base de données veulent fusionner certaines zones ensemble, par exemple, Oslo et Berlin. Alors que ces deux villes (et d'autres) n'ont pas forcément toujours eu la même heure La base est censée référencer tous les changements depuis 1970 mais en fusionnant plusieurs zones, le risque est de perdre l'historique pré–1970 Recap Spring.io : Récap Jour 1 Récap Jour 2 Récap en vidéo par Josh Long State of Spring 2021 les chiffres: 61% des sondés utilisent spring boot 94% d'entre eux pour faire des micro services 35% sur des architectures reactive 61% voudraient passer sur du natif d'ici 2 ans Nouvelle baseline pour Spring Framework 6.0 Java 17 et Jakarta EE 9 dès la 6.0 M1 de Spring Framework qui arrive Q4 2021 (GA en Q4 2022) Spring Native arrive dans Spring Framework Compilation AOT bénéficiera aux déploiements JVM aussi Spring Boot starter pour applications natives Spring Boot proposera des plugin de build et configuration native dès la 3.0 Support de RSocket and GraphQL Spring Observability passe dans Spring Framework API unifiée pour les metrics et le tracing, compatible Micrometer, Wavefront, Zipkin, Brave et OpenTelemetry intégration consistante dans tout le portfolio auto configuration dans Spring Boot 3.0 Core abstractions dans Spring Framework 6.0 Spring Native De Spring framework 5.3 à 6.0 Infrastructure (suite annonces Spring.io) Tanzu Application Platform : plateforme livrée avec toute la chaine d'outils mais configurable si les équipes préfèrent utiliser d'autres outils que ceux proposés compatible AKS, EKS, GKS et TKG. application accelerator (inspiré par spring initializer) pour générer les templates des applications qui seront ensuite déployées Spring Cloud Gateway for K8s and API Portal for VMware Tanzu Tanzu Community Edition : Version OSS de Tanzu Cloud Azure installe des agents dans son image linux et ils sont vulnérables aux auto update Lié à OMI (open management infrastructure, l'équivalent de Windows Management Infrastructure (WMI) pour les systèmes UNIX qui s'exécute en root avec tous les privilèges Dès qu'on utilise des services comme azure log, ils l'installent dans les VMs L'article dit que c'est la faute à l'open source et que seulement 20 contributeurs. C'est un peu BS. En fait si c'est installé via un service le service le mettra à jour Mais MS recommande de mettre à jour manuellement aussi Web Julia Evans nous explique CORS Julia explique comment se comporte le navigateur qui voit qu'on essaie d'accéder à une URL différente de celle du domaine de la page web chargée, et le navigateur se demande s'il a le droit de charger cette page Il va faire un “preflight” request (avec une méthode HTTP OPTIONS) pour savoir s'il a le droit ou non, puis si c'est le cas, pourra accéder à la resource Julia explique la same-origin policy (càd qu'on ne doit accéder que des resources du domaine qu'on est en train de visiter dans son navigateur) Data Kafka 3.0 Le support Java 8 et Scala 2.12 est déprécié et sera retiré en version 4 Nouvelles améliorations sur KRaft, le méchanisme de consensus qui remplacera à terme ZooKeeper Outillage TravisCI fait un petit partage de vos secrets dans toutes les PRs de vos repos par accident le problème a duré 8 jours rotation des secrets recommandé Travis a patché discretement sans disclosure initialement ce qui a fait un raffut Architecture Facebook est tombé pendant environ 6H Facebook prévoit de faire une maintenance sur son backbone (classique) Un ingénieur lance par erreur une commande qui declare l'ensemble du backbone inaccessible Oups, le système d'audit qui devrait empêcher de lancer une telle commande est buggé, la commande passe … Toute l'infra de Facebook est désormais déconnectée du net. Les avertissements BGP sont stoppées puisque l'infra FaceBook n'est plus dispo et les DNS déprovisionnent les entrées FaceBook, le monde ne peut plus accéder à FaceBook Les ingé comprennent vite le problème sauf que ils ont perdus les accès remotes aux services et la plupart de leurs systèmes internes sont KO à cause du retrait des DNS Ils envoient donc du personnel sur site dans les datacenters pour physiquement remettre en service l'infra mais l'accès physique aux machines est super protégé Ils finissent par y arriver SAUF que le fait de tout redémarrer pause un vrai challenge du fait de l'affluence du traffic qui reprend. Ils risquent de refaire tomber les datacenters du fait de la surcharge électrique. (sans parler de sproblèmes plus haut niveau comme le rechargement des caches etc) Heureusement ils ont un plan de reprise qu'ils testent régulièrement qui est plutôt prévu dans le cadre d'une tempête qui mettrait HS tout ou partie du réseau. Ce système marche bien et tout rentre dans l'ordre petit à petit, Facebook est sauvé, la planète a reperdu 5 points de QI Julia Evans explore BGP et son fonctionnement dans cet article Vu de dehors avec Cloudflare Impact non seulement du DNS mais des routes BGP elles même. Ces routes disent qu'une IP (our série d'IP) appartient à une personne donnee. Fondamentalement modèle de confiance. Intéressant de voir comment Facebook DNS down ajouté beaucoup de traffic aux serveurs de DNS principaux qui ne cachent pas le SERVFAIL Sécurité Fuite massive de données chez Twitch Quoi ? l'intégralité du code source Les revenus (sur 3 ans) de plus de 10 000 streamers Twitch ont été publiés sur le net. certains codes d'accès AWS attention c'est la partie 1, il pourrait y avoir d'autres données prochainement Comment ? Officiellement suite à une erreur dans un changement de config Officieusement c'est plus probablement un employé ou un ex employé Pourquoi ? le message sur 4chan dénonce un « un cloaque toxique dégoûtant », ce qui pourrait faire référence aux problèmes de harcèlements et de raids hostiles visant des streameurs et des streameuses en raison de leur origine ethnique, de leur orientation sexuelle ou genre. il est aussi question d'une revendication à une concurrence plus saine dans le secteur du streaming de jeu vidéo Conférences DevFest Nantes les 21 et 22 octobre 2021 DevFest Lille le 19 novembre 2021 SunnyTech les 30 juin et 1er juillet 2022 à Montpellier Nous contacter Soutenez Les Cast Codeurs sur Patreon https://www.patreon.com/LesCastCodeurs Faire un crowdcast ou une crowdquestion Contactez-nous via twitter https://twitter.com/lescastcodeurs sur le groupe Google https://groups.google.com/group/lescastcodeurs ou sur le site web https://lescastcodeurs.com/
Dans ce nouvel épisode news, Arnaud, Emmanuel et Audrey reviennent sur les annonces d'Oracle concernant le JDK, sur Spring One, mais aussi sur les petites fuites de données et autre panne généralisée qui ont fait l'actu récemment. Enregistré le 8 octobre 2021 Téléchargement de l'épisode [LesCastCodeurs-Episode-265.mp3](https://traffic.libsyn.com/lescastcodeurs/LesCastCodeurs-Episode-265.mp3) ## News ### Langages [Oracle annonce des LTS de deux ans](https://inside.java/2021/09/14/moving-the-jdk-to-a-2-year-lts-candence/) * Donc une LTS tous les 2 au lieu de 3 ans, ce qui fait que la prochaine sera la 21 et pas la 23. * Une enquête récente auprès de développeurs montre qu'entre un quart et la moitié utilisent les release de six mois en dev, mais moins de la moitié d'entre eux en prod * Mais pas de détail sur le temps de security patch support gratuit. Oracle en payant c'est 8 ans [Oracle offre Oracle JDK gratuitement avec support pendant 1 LTS + 1 an (donc 3 ans)](https://blogs.oracle.com/java/post/free-java-license) * Java 17 et + * Redistribution gratuite aussi. Pas de click through. * Sous license NFTC ("Oracle No-Fee Terms and Conditions"). * Ils en ont marre d'avoir de la compétition ? [Dans JDK 18, avec le JEP 400, le charset par défaut va enfin passer à UTF-8](https://inside.java/2021/10/04/the-default-charset-jep400/) * Autant ce n'était plus vraiment un problème pour les systèmes sour mac OS ou Linux, qui utilisent depuis assez longtemps UTF-8 par défaut, mais c'est surtout pour les systèmes Windows où c'est plus problématique * Dans JDK 17, la propriété système `System.getProperty("native.encoding")` avait été introduite si on veut lire par exemple un fichier avec * Deux approches de mitigation pour les problèmes de compatibilité, * en recompilant et en utilisant cette propriété quand on ouvre un fichier * en utilisant -Dfile.encoding=COMPAT sans recompilation, qui gardera le même comportement qu'en JDK 17 et avant * L'équipe d'Oracle suggère de tester ses applications avec -Dfile.encoding=UTF-8 pour voir s'il n'y a pas de soucis ### Librairies [JUnit 5.8](https://junit.org/junit5/docs/current/release-notes/index.html#release-notes-5.8.0) * les classes de test peuvent être ordonnées avec la Class Order API (par nom de classe, nom d'affichage, avec @order ou random) * les classes de test imbriquées peuvent l'être avec @TestClassOrder * @ExtendWith peut maintenant être utilisé pour enregistrer des extensions via des champs ou des paramètres de méthode (constructeur, méthodes de test ou lifecycle) * @RegisterExtension peut maintenant être utilisé sur des champs privés. * `assertThrowsExactly` version plus stricte de assertThrows() * `assertDoesNotThrow()` supporte les suspending functions Kotlin * `assertInstanceOf` produit de meilleurs messages d'erreurs (remplacement pour `assertTrue(obj instanceof X)`) * `assertNull` comporte maintenant le type de l'object si sa méthode `toString` retourne null pour éviter les messages de type `expected but was ` * @TempDir * peut maintenant être utilisé pour créer plusieurs répertoires temporaires (le retour au mode par context peut être fait par configuration) * fait un reset des permissions read and write du répetertoire root et de tout les répertoires contenus plutôt que d'échouer à les supprimer * peut maintenant être utilisé sur des champs private * Nouvel UniqueIdTrackingListener qui va générer un fichier contenant les identifiants des test executés et qui peut être utilisé pour re-executer ces tests dans une image GraalVM par exemple. [Stephen Colebourne avertit les utilisateurs de Joda Time de ne pas mettre à jour la base de données des fuseaux horaires](https://blog.joda.org/2021/09/big-problems-at-timezone-database.html) * Les personnes qui sont responsables de cette base de données veulent fusionner certaines zones ensemble, par exemple, Oslo et Berlin. Alors que ces deux villes (et d'autres) n'ont pas forcément toujours eu la même heure * La base est censée référencer tous les changements depuis 1970 * mais en fusionnant plusieurs zones, le risque est de perdre l'historique pré-1970 Recap Spring.io : * [Récap Jour 1](https://tanzu.vmware.com/content/blog/springone-2021-day-1-recap-and-highlights) * [Récap Jour 2](https://tanzu.vmware.com/content/blog/springone-2021-day-2-recap-and-highlights) * [Récap en vidéo par Josh Long](https://www.youtube.com/watch?v=VMtUzytjo6Y) * [State of Spring 2021](https://www.youtube.com/watch?v=O0-IhAKnkWM) * les chiffres: * 61% des sondés utilisent spring boot * 94% d'entre eux pour faire des micro services * 35% sur des architectures reactive * 61% voudraient passer sur du natif d'ici 2 ans * Nouvelle baseline pour Spring Framework 6.0 * Java 17 et Jakarta EE 9 dès la 6.0 M1 de Spring Framework qui arrive Q4 2021 (GA en Q4 2022) * Spring Native arrive dans Spring Framework * Compilation AOT bénéficiera aux déploiements JVM aussi * Spring Boot starter pour applications natives * Spring Boot proposera des plugin de build et configuration native dès la 3.0 * Support de RSocket and GraphQL * Spring Observability passe dans Spring Framework * API unifiée pour les metrics et le tracing, compatible Micrometer, Wavefront, Zipkin, Brave et OpenTelemetry * intégration consistante dans tout le portfolio * auto configuration dans Spring Boot 3.0 * Core abstractions dans Spring Framework 6.0 * [Spring Native](https://springone.io/2021/sessions/spring-native) * [De Spring framework 5.3 à 6.0](https://springone.io/2021/sessions/from-spring-framework-5-3-to-6-0) ### Infrastructure (suite annonces Spring.io) [Tanzu Application Platform](https://tanzu.vmware.com/content/blog/announcing-vmware-tanzu-application-platform) : * plateforme livrée avec toute la chaine d'outils mais configurable si les équipes préfèrent utiliser d'autres outils que ceux proposés * compatible AKS, EKS, GKS et TKG. * application accelerator (inspiré par spring initializer) pour générer les templates des applications qui seront ensuite déployées * Spring Cloud Gateway for K8s and API Portal for VMware Tanzu [Tanzu Community Edition](https://tanzu.vmware.com/content/blog/vmware-tanzu-community-edition-announcement) : * Version OSS de Tanzu ### Cloud [Azure installe des agents dans son image linux et ils sont vulnérables aux auto update](https://www.wiz.io/blog/secret-agent-exposes-azure-customers-to-unauthorized-code-execution) * Lié à OMI (open management infrastructure, l'équivalent de Windows Management Infrastructure (WMI) pour les systèmes UNIX qui s'exécute en root avec tous les privilèges * Dès qu'on utilise des services comme azure log, ils l'installent dans les VMs * L'article dit que c'est la faute à l'open source et que seulement 20 contributeurs. C'est un peu BS. * En fait si c'est installé via un service le service le mettra à jour * Mais MS recommande de mettre à jour manuellement aussi ### Web [Julia Evans nous explique CORS](https://twitter.com/b0rk/status/1445039796804542473) * Julia explique comment se comporte le navigateur qui voit qu'on essaie d'accéder à une URL différente de celle du domaine de la page web chargée, et le navigateur se demande s'il a le droit de charger cette page * Il va faire un “preflight” request (avec une méthode HTTP OPTIONS) pour savoir s'il a le droit ou non, puis si c'est le cas, pourra accéder à la resource * Julia explique la same-origin policy (càd qu'on ne doit accéder que des resources du domaine qu'on est en train de visiter dans son navigateur) ### Data [Kafka 3.0](https://blogs.apache.org/kafka/) * Le support Java 8 et Scala 2.12 est déprécié et sera retiré en version 4 * Nouvelles améliorations sur KRaft, le méchanisme de consensus qui remplacera à terme ZooKeeper ### Outillage [TravisCI fait un petit partage de vos secrets dans toutes les PRs de vos repos par accident](https://arstechnica.com/information-technology/2021/09/travis-ci-flaw-exposed-secrets-for-thousands-of-open-source-projects/) * le problème a duré 8 jours * rotation des secrets recommandé * Travis a patché discretement sans disclosure initialement ce qui a fait un raffut ### Architecture [Facebook est tombé pendant environ 6H ](https://engineering.fb.com/2021/10/05/networking-traffic/outage-details/) * Facebook prévoit de faire une maintenance sur son backbone (classique) * Un ingénieur lance par erreur une commande qui declare l'ensemble du backbone inaccessible * Oups, le système d'audit qui devrait empêcher de lancer une telle commande est buggé, la commande passe ... * Toute l'infra de Facebook est désormais déconnectée du net. Les avertissements BGP sont stoppées puisque l'infra FaceBook n'est plus dispo et les DNS déprovisionnent les entrées FaceBook, le monde ne peut plus accéder à FaceBook * Les ingé comprennent vite le problème sauf que ils ont perdus les accès remotes aux services et la plupart de leurs systèmes internes sont KO à cause du retrait des DNS * Ils envoient donc du personnel sur site dans les datacenters pour physiquement remettre en service l'infra mais l'accès physique aux machines est super protégé * Ils finissent par y arriver SAUF que le fait de tout redémarrer pause un vrai challenge du fait de l'affluence du traffic qui reprend. Ils risquent de refaire tomber les datacenters du fait de la surcharge électrique. (sans parler de sproblèmes plus haut niveau comme le rechargement des caches etc) * Heureusement ils ont un plan de reprise qu'ils testent régulièrement qui est plutôt prévu dans le cadre d'une tempête qui mettrait HS tout ou partie du réseau. Ce système marche bien et tout rentre dans l'ordre petit à petit, Facebook est sauvé, la planète a reperdu 5 points de QI * [Julia Evans explore BGP et son fonctionnement dans cet article](https://jvns.ca/blog/2021/10/05/tools-to-look-at-bgp-routes/) * [Vu de dehors avec Cloudflare](https://blog.cloudflare.com/october-2021-facebook-outage/) * Impact non seulement du DNS mais des routes BGP elles même. Ces routes disent qu'une IP (our série d'IP) appartient à une personne donnee. * Fondamentalement modèle de confiance. * Intéressant de voir comment Facebook DNS down ajouté beaucoup de traffic aux serveurs de DNS principaux qui ne cachent pas le SERVFAIL ### Sécurité [Fuite massive de données chez Twitch](https://cyberguerre.numerama.com/13464-fuite-sur-twitch-revenus-de-streameurs-4-questions-sur-le-leak-colossal-qui-frapperait-la-plateforme.html) * Quoi ? * l'intégralité du code source * Les revenus (sur 3 ans) de plus de 10 000 streamers Twitch ont été publiés sur le net. * certains codes d'accès AWS * attention c'est la partie 1, il pourrait y avoir d'autres données prochainement * Comment ? * Officiellement suite à une erreur dans un changement de config * Officieusement c'est plus probablement un employé ou un ex employé * Pourquoi ? * le message sur 4chan dénonce un « un cloaque toxique dégoûtant », ce qui pourrait faire référence aux problèmes de harcèlements et de raids hostiles visant des streameurs et des streameuses en raison de leur origine ethnique, de leur orientation sexuelle ou genre. * il est aussi question d'une revendication à une concurrence plus saine dans le secteur du streaming de jeu vidéo ## Conférences [DevFest Nantes les 21 et 22 octobre 2021](https://devfest.gdgnantes.com/) [DevFest Lille le 19 novembre 2021](https://devfest.gdglille.org/) [SunnyTech les 30 juin et 1er juillet 2022 à Montpellier](https://sunny-tech.io/) ## Nous contacter Soutenez Les Cast Codeurs sur Patreon [Faire un crowdcast ou une crowdquestion](https://lescastcodeurs.com/crowdcasting/) Contactez-nous via twitter sur le groupe Google ou sur le site web
Hi, Spring fans! In this episode, [Josh Long (@starbuxman)](https://twitter.com/starbuxman) talks to Micrometer-lead and observability guru [Tommy Ludwig (@tommyludwig)](https://twitter.com/tommyludwig) about Tokyo, Japan; metrics; tracing; and so much more. * [the Micrometer project](https://micrometer.io)
An airhacks.fm conversation with Erin Schnabel (@ebullientworks) about: switching from IBM to Red Hat, the great ThinkPad 31p, gentoo linux on Dell laptop, Dell vs. Alienware, working on quarkus, the Q quarkus issue, Quarkus, Health, Metrics,OpenAPI: Moved Permanently (301), OpenLiberty, Quarkus and the non-application namespace, Thinkpad with Windows Vista and an Apple sticker, Erin Schnabel-Metrics for the win! j4k.io conference, micrometer comes with support for Datadog metrics and other non-prometheus, prometheus as integration point, the relation between Microprofile Metrics and micrometer, OpenTracing, OpenCensus and OpenTelemetry, Quarkus and MicroProfile Erin Schnabel on twitter: @ebullientworks
You'll run it everywhere there's a production system. Some kind of Metrics collector like Statsd or InfluxDB. They work like magic, reporting on the health of your application. but how does it really happen? We dive in on how these Application Performance Management tools work and how do they really "see into" your application. We demistify all this magic, and actually describe how to add "new" metrics and how to publish it! If you ever worked in a production application, and were wondering how do these metrics get graphed and collected, well, wonder-no-more! We go deep into Micrometer (the SLF4J of Metrics) and how it all works! http://www.javaoffheap.com/datadog We thank DataDogHQ for sponsoring this podcast episode Don't forget to SUBSCRIBE to our cool NewsCast OffHeap! http://www.javaoffheap.com/ Micrometer https://micrometer.io/ Creating Meters https://micrometer.io/docs/concepts#_meters Spring Boot and Micrometer https://spring.io/blog/2018/03/16/micrometer-spring-boot-2-s-new-application-metrics-collector Statsd https://github.com/statsd/statsd Do you like the episodes? Want more? Help us out! Buy us a beer! https://www.javapubhouse.com/beer And Follow us! https://www.twitter.com/javapubhouse
Link to bioRxiv paper: http://biorxiv.org/cgi/content/short/2020.10.22.350488v1?rss=1 Authors: Schakowski, K. M., Elm, C., Linders, J., Kirsch, M. Abstract: In this work we present a method for the encapsulation of intracellular enzymes into a shell of albumin, using the example of catalase. We take advantage of organic, inorganic and physical chemistry for the preparation of biochemically active micrometer particles to prevent oxygen toxicity induced by artificial oxygen carriers of any type. In cell culture experiments, catalase capsules presented to be non-noxious in absence of peroxides. However, application of low and medium dosed capsules below 0.05 vol% (final concentration 0.001 vol%) increased the process of cell damaging induced by hydrogen peroxide and its decomposition products, while high dosed capsules > 0.05 vol% nullified all cell damage up to 5 mM hydrogen peroxide and reduced up to 90% of cellular damage for higher peroxide concentrations. The over-all activity of prepared catalase capsules was determined to be > 1000 U * mL-1 * vol%-1. Copy rights belong to original authors. Visit the link for more info
Cet épisode consacre Java le langage et sa version 15 en particulier. On discute aussi l'impact des mémoires fautives sur la JVM, le réactif, les frameworks backends et bien d'autres choses. Et nous avons deux crowdcasts! ???? Enregistré le 13 octobre 2020 Téléchargement de l'épisode [LesCastCodeurs-Episode-240.mp3](https://traffic.libsyn.com/lescastcodeurs/LesCastCodeurs-Episode-240.mp3) ## News ### Langages [Java 15](https://twitter.com/java/status/1305874025231650817) (plus de détails par [Remi Forax](https://groups.google.com/d/msgid/lescastcodeurs/63086933.1723204.1600182952350.JavaMail.zimbra%40u-pem.fr) ). * unicode 13, * hidden classes (non-discoverable implementation details of the framework eg classes générées au runtime, déchargement aggressif), * TreeMap amelioration de perf, * check de revocation pour le jar signer, * sha-3 support, * nashorn enlevé, * les lock biaisés sont désactivés/dépréciés, * ZGC prêt pour la prod, * amélioration d’ergo de G1 (on en avait parlé), [Azul couvre JDK 15](https://www.azul.com/jdk-15-release-64-new-features-and-apis/), avec un focus sur les Sealed classes, les Records, les Hidden classes. [Des bugs de timezone qui vous pouvez rencontrer dans vos applications](https://blog.davidojeda.dev/4-time-zone-bugs-i-ran-into). * Faire tourner son code sous une vieille version de JRE/JDK qui n’est pas à jour au niveau des données de TimeZone. * Le serveur est peut-être dans votre TimeZone à vous, ou bien sur UTC, alors attention ! * En stockant des dates en bases de données, il faut aussi prendre en compte la TimeZone configurée dans la DB ! * Parfois aussi côté affichage, on peut oublier de parser les dates avec les infos de TimeZone, ou côté client la TimeZone ou l’heure d’été peut être mal configurée... Enregistrements d’Oracle Developer Live Java * * [Les crashs de JVM sont souvent des erreurs mémoire.](https://shipilev.net/jvm/test-your-memory/) Pourquoi ? * La JVM on lui donne souvent beaucoup de mémoire. * Les métadonnées utilisées par le GC sont importantes. * Ces métadonnées sont accédées entièrement lors d’un full GC. Romain Manni-Bucau explique [comment configurer Java Util Logging avec un formateur sur une ligne](https://rmannibucau.metawerx.net/post/jul-production-ready-pattern-with-simpleformatter), pour que ce soit plus sympa dans un contexte prod Docker [Un rapport sur l’écosystème Groovy](https://e.printstacktrace.blog/groovy-ecosystem-usage-report-2020/) : * l’outil le plus utilisé : Gradle (pour le build). * librairie la plus populaire : Spock (pour les tests). * framework le plus populaire : Grails. * beaucoup d’utilisation de Groovy comme langage de script, d’automatisation, mais aussi comme langage général principal et comme Domain-Specific Language. ### Librairies [Sortie de JUnit 5.7](https://twitter.com/junitteam/status/1305140909223411712) * Isolated tests. * New Enabled/DisabledIf execution conditions. * Custom disabled reasons. * New MethodOrderer.DisplayName. * New DisplayNameGenerator.Simple. * Java Flight Recorder support. * Improved EngineTestKit. [Quarkus vs Spring Boot dans des environnements de plus en plus contraints mais quel est le choix d’équipe au final ?](https://medium.com/swlh/hail-to-the-new-king-or-not-295090a96bbf). [Sortie de Micronaut 2.1](https://micronaut.io/blog/2020-10-05-micronaut-21-released.html). * nouveau plugin Gradle qui facilite le build d’image natives Graal et de containers Docker en couches. * support des fonctions Oracle Cloud. * support amélioré de Google Cloud Platform, avec le logging structuré de Stackdriver, * et le support natif du messaging avec Google Cloud Pub/Sub. * Plus d’infos dans la doc dans la section des nouveautés : https://docs.micronaut.io/2.1.0/guide/index.html#whatsNew Sortie de [Quarkus 1.8](https://quarkus.io/blog/quarkus-1-8-0-final-released/) (et on n'avait pas annoncé 1.7) * multiple persistence unit * Micrometer * intégration avec jbang * GraalVM 20.2 * MongoDB pour Kotlin * Elasticsearch REST client (1.7) * Client vert.x Redis (1.7) * Hibernate Envers (1.7) * DB2 (1.7) ### Infrastructure [NVidia rachète ARM à SoftBank pou 40Md$](https://www.engadget.com/nvidia-arm-acquisition-softbank-000846113.html), ça va faire un sacré concurrent à Intel et AMD. () [Retour d’experience sur l’utilisation de Kubernetes.](https://medium.com/better-programming/3-years-of-kubernetes-in-production-heres-what-we-learned-44e77e1749c8) Java et ses problèmes (spécialement 8, toujours grosse conso mémoire), mettre à jour Kubernetes (ils créent des nouveaux clusters), corriger un index au démarrage vs liveness probe, exposer des IPs externes et la limite de connections parallèles. [Project Natick: Datacenter mis sous l’eau en 2018 par Microsoft](https://www.theverge.com/2020/9/14/21436746/microsoft-project-natick-data-center-server-underwater-cooling-reliability). * 864 servers, 27.6 petabytes de stockage, 117 pieds au fond de l’ocean (Ecosse). * Aux dires de Microsoft, c’est un succès. [Google est neutre en carbone, et a même racheté sa dette carbone depuis sa création](https://blog.google/outreach-initiatives/sustainability/our-third-decade-climate-action-realizing-carbon-free-future/). * (1) We were the first major company to become carbon neutral in 2007. → Google a été “neutre” par compensation, chaque année depuis 2007, notamment en achetant autant d’énergie renouvelable que d’énergie carbonée. * (2) We were the first major company to match our energy use with 100 percent renewable energy in 2017... We’re eliminating our entire carbon legacy, effective today. → Depuis 2017, Google a en plus acheté autant d’énergie renouvelable l’année N que d’énergie carbonée consommée l’année N+1. En Septembre 2020, Google a fini fini par être totalement “neutre” en ayant consommé autant d’énergie renouvelable que d’énergie carbonée depuis la création de Google. * (3) We are the first major company to make a commitment to operate on 24/7 carbon-free energy in all our data centers and campuses worldwide... by 2030. → Dans 10 ans, Google espère ne plus consommer d’énergie carbonée du tout. ### Data [CrunchyDB offre un PostgresSQL as a service qui est cross clouds](https://info.crunchydata.com/blog/announcing-crunchy-bridge-a-modern-postgres-as-a-service). ### Outillage [Github sort la version 1.0 de son outil en ligne de commande pour gérer ses projets Github](https://github.blog/2020-09-17-github-cli-1-0-is-now-available/). ### Architecture Un vieux truc, [le memo de Bezos sur la service oriented company](https://gist.github.com/chitchcock/1281611). [Jonas Boner annonce les 8 principes réactifs](https://principles.reactive.foundation/). * I. Stay Responsive : Always respond in a timely manner. * II. Accept Uncertainty : Build reliability despite unreliable foundations. * III. Embrace Failure : Expect things to go wrong and design for resilience. * IV. Assert Autonomy : Design components that act independently and interact collaboratively. * V. Tailor Consistency : Individualize consistency per component to balance availability and performance. * VI. Decouple Time : Process asynchronously to avoid coordination and waiting. * VII. Decouple Space : Create flexibility by embracing the network. * VIII. Handle Dynamics : Continuously adapt to varying demand and resources. ### Méthodologies [Les recommendations de Red Hat aux Red Hatters sur la contribution à l'Open Source](https://www.redhat.com/en/about/open-source/participation-guidelines) ### Sécurité [Jenkins vient avec pleins de fix de sécurité](https://groups.google.com/g/jenkinsci-advisories) comme tous les mois (voire 2 fois par mois). ### Loi, société et organisation [Est-ce que le Hacktoberfest de Digital Ocean fait mal à l’Open Source ?](https://blog.domenic.me/hacktoberfest/) * plein de gens contribuent des commits à deux balles, juste pour gagner un t-shirt, et c’est les mainteneurs de projets open source qui sont obligés de se taper tous les pull requests comme des messages de spam * [Update de DigitalOcean to reduce spam](https://hacktoberfest.digitalocean.com/hacktoberfest-update) * [Comment une personne (un YouTuber avec 600K followers a pourri le système)](https://joel.net/how-one-guy-ruined-hacktoberfest2020-drama) [Bye bye Stop Covid qui va devenir Alerte Covid.](https://www.europe1.fr/societe/information-europe-1-la-nouvelle-appli-stop-covid-sappellera-alerte-covid-3997914) L’application ne règle en rien les problèmes en terme d’efficacité et de vie privée déjà décriés dans le passé mais veut rajouter des usages en ciblant notamment l’utilisation dans les bars et restaurants et en y diminuant la durée d’exposition utilisée comme indicateur de contact. Elle devrait aussi pouvoir vous notifier d’alerte locale (le gouvernement dans votre poche). ## Outils de l'épisode Un écran 49" 32:9 ## Rubrique débutant Si vous débutez en Docker, il est important de [comprendre les différences entre les instructions RUN, CMD, et ENTRYPOINT de vos Dockerfiles](https://www.baeldung.com/devops/dockerfile-run-cmd-entrypoint). * RUN est exécuté quand on build l’image. * CMD est l’instruction par défaut lancée au démarrage de votre image. * ENTRYPOINT permet plus de flexibilité que CMD en supportant les paramètres en entrée. ## Conférences [Codeurs En Seine 2020 - Edition en ligne](https://twitter.com/codeursenseine/status/1301064575786405888?s=21) * En novembre, les mardis à 19h et les jeudis à 21h * 45 minutes de conférences + environ 15 minutes de questions * En ligne sur Twitch + rediffusion Youtube Crowdcast de Emmanuel Demey sur les conférences à venir dans le Nord. * Cloud Nord le 19/10 en remote : * Web Stories le 5/2 en présentiel (pour le moment) * Le Devfest Lille le 11/6 en présentiel ## Nous contacter Soutenez Les Cast Codeurs sur Patreon [Faire un crowdcast ou une crowdquestion](https://lescastcodeurs.com/crowdcasting/) Contactez-nous via twitter sur le groupe Google ou sur le site web
Ken and Erin drops in to discuss updates to metrics in Quarkus 1.8 and how it relates to MicroProfile Metrics and Micrometer
Diese Episode kann getrost als Follow-Up Episode zu den beiden letzten DTR Folgen bezeichnet werden. Tom erzählt von seinem Umstieg auf Traefik 2 und den Herausforderungen mit Let's Encrypt Wildcard Zertifikaten. Danach geht es weiter mit dem Dauerbrenner-Thema Grafana und Prometheus. André erzählt von Micrometer und der Integration Erfassung von (fachbezogenen) Metriken in Java Webapplikationen. Danach gibt es noch einen kleinen Ausflug in die Welt der Datenbanken und zum Ausklang etwas Lesen aus der Glaskugel bezüglich der WWDC 2020 die um 22. Juni Remote starten wird.
Dans cet épisode, Audrey et Emmanuel se retrouvent en tête à tête pour discuter du nouveau drama à venir dans l'écosystème Java (Leyden), de l'actualité des librairies, des annonces de GitHub, de bonnes pratiques en matière d'outils et d'architecture et bien évidemment de la prochaine appli tendance : Stop Covid. Enregistré le 7 mai 2020 Téléchargement de l'épisode [LesCastCodeurs-Episode-232.mp3](https://traffic.libsyn.com/lescastcodeurs/LesCastCodeurs-Episode-232.mp3) ## News ### Langages [Projet Leyden: images statiques pour Java mais pas GraalVM native image](https://twitter.com/mreinhold/status/1254812999145017351) [Améliorer les performance de G1 "out of the box"](https://kstefanj.github.io/2020/04/16/g1-ootb-performance.html) ### Librairies [Lucene a 20 ans](https://www.elastic.co/fr/celebrating-lucene) [Quarkus 1.4 est sorti](https://quarkus.io/blog/quarkus-1-4-final-released/) [Comment utiliser Mockito avec Quarkus](https://quarkus.io/blog/mocking/) [Micrometer sort la 1.5 une LTS](https://github.com/micrometer-metrics/micrometer/releases/tag/v1.5.0) [Spring rattrape son retard sur OpenJDK dans le schéma de version](https://spring.io/blog/2020/04/30/updates-to-spring-versions) [Micronaut 2.0 M3](https://objectcomputing.com/news/2020/04/30/micronaut-20-m3-big-boost-serverless-and-micronaut-launch) ### Infrastructure [Les bonnes pratiques pour écrire un fichier Dockerfile pour les développeurs](https://www.docker.com/blog/speed-up-your-development-flow-with-these-dockerfile-best-practices/) [ICANN rejette la vente de .org a une boite privée](https://twitter.com/eff/status/1256053946289774594?s=21) ### Cloud [Les release notes de Google Cloud sur une seule page](https://cloud.google.com/release-notes) ### Web [Cloudflare implement le draft d'HTTP/3 et compare](https://blog.cloudflare.com/http-3-vs-http-2/) [Node.js v14](https://medium.com/@nodejs/node-js-version-14-available-now-8170d384567e) ### Data [Les choses que j'aurai aimé que plus de développeurs connaissent sur les bases de données](https://medium.com/@rakyll/things-i-wished-more-developers-knew-about-databases-2d0178464f78) [Redis 6 est sorti](https://redislabs.com/press/redis-6-0-released-and-now-available-in-redis-enterprise-cloud/) ### Outillage [Test Containers 1.14](https://github.com/testcontainers/testcontainers-java/releases/tag/1.14.0) [GitHub est gratuit pour les équipes](https://github.blog/2020-04-14-github-is-now-free-for-teams/) * si on downgrade sur le gratuit, on perd quoi https://help.github.com/en/github/getting-started-with-github/faq-about-changes-to-githubs-plans#if-i-downgrade-from-github-team-or-a-legacy-plan-to-github-free-what-features-will-i-lose [Récap des annonces GitHub Satellite 2020](https://github.blog/2020-05-06-new-from-satellite-2020-github-codespaces-github-discussions-securing-code-in-private-repositories-and-more/?utm_campaign=1588779509&utm_medium=social&utm_source=facebook,linkedin,twitter&utm_content=1588779509) [Spock 2.0 vs JUnit 5.0](https://blog.solidsoft.pl/2020/04/15/spock-vs-junit-5-the-ultimate-feature-comparison/) [Controler Kubernetes de Google Spreadsheet](https://github.com/learnk8s/xlskubectl) [Gradle 6.4](https://docs.gradle.org/6.4/release-notes.html) ### Architecture [Les microservices, trop fort pour toi - opinion](https://blog.octo.com/les-architectures-microservices-cest-un-peu-trop-fort-pour-toi-mon-ptit-gars/) ### Méthodologies [COVID vs l'open space](https://www.inc.com/geoffrey-james/the-open-plan-office-is-dead.html) ### Sécurité ### Loi, société et organisation [Apple et Google offrent un framework de notification d'exposition (au COVID-19)](https://blog.google/inside-google/company-announcements/apple-and-google-partner-covid-19-contact-tracing-technology) Stop-Covid * [La France se met dans une impasse face à Apple avec StopCovid](https://www.numerama.com/tech/619446-stopcovid-vs-apple-pourquoi-la-france-sest-mise-dans-une-impasse.html) * [StopCovid ou encore ?](https://medium.com/@cedric.o/stopcovid-ou-encore-b5794d99bb12) * [StopCovid : anonymat et autorités](https://quentin.dufour.io/blog/2020-04-20/stopcovid/) ## Conférences [Devoxx UK du 24 au 26 Août 2020](https://www.devoxx.co.uk/) [AlpesCraft reportée à l'automne](https://www.alpescraft.fr/) [DevOps D-Day le 9 octobre 2020](http://2019.devops-dday.com/) - [Le CfP est ouvert jusqu'au 15 juin](https://conference-hall.io/public/event/SoOGmgWEUqrFysQUbM8g) [DevFest Nantes les 15 et 16 octobre 2020](https://devfest.gdgnantes.com/) - [Le CfP est ouvert jusqu'au 31 mai](https://conference-hall.io/public/event/tcsfaCc4Gg0sSSxdJZKO) [FrontSide le 15 octobre 2020](https://frontsideconf.fr/) [Volcamp.io les 15 et 16 octobre 2020](https://www.volcamp.io/) [DevFest Toulouse les 5 et 6 novembre 2020](https://devfesttoulouse.fr/) [FlowCon les 9 et 10 novembre 2020](https://www.weezevent.com/flowcon-2020) ## Nous contacter Soutenez Les Cast Codeurs sur Patreon [Faire un crowdcast ou une crowdquestion](https://lescastcodeurs.com/crowdcasting/) Contactez-nous via twitter sur le groupe Google ou sur le site web
Diese Episode ist wieder einmal höchst technisch (so wie es sein soll ;-)). Tom und André starten mit einem Follow-Up zu Micrometer.io, danach geht es weiter mit einem großen Teil zum Thema Docker, Layers und Multi-Stage Builds. Zu guter Letzt gibt es noch einen kleinen Ausflug ins Apple Universum mit dem neuen MacBook Pro 13".
In this installment we talk to Jon Schneider, lead of the Micrometer project that supports dimensional metrics instrumentation. It aims to be "SLF4J, but for metrics," and it has already seen uptake in a number of JVM community projects including the RabbitMQ JVM driver and Spring Boot. Twitter: https://twitter.com/jon_k_schneider Twitter: https://twitter.com/MicrometerIO Recorded: May 25, 2018 Notes: - Check out the Micrometer project http://Micrometer.io
Mark Heckler talks with Erin Schnabel about her SpringOnePlatform talk, "Metrics for the Win: Using Micrometer to Understand Application Behavior." SpringOne Platform is Oct 7th and 10th in Austin, Texas. Register before August 20th to get a comfy, $200 discount by using discount code S1P200_MHeckler.
Mark Heckler talks with Erin Schnabel about her SpringOnePlatform talk, "Metrics for the Win: Using Micrometer to Understand Application Behavior." SpringOne Platform is Oct 7th and 10th in Austin, Texas. Register before August 20th to get a comfy, $200 discount by using discount code S1P200_MHeckler.
Mark Heckler talks with Erin Schnabel about her SpringOnePlatform talk, "Metrics for the Win: Using Micrometer to Understand Application Behavior." SpringOne Platform is Oct 7th and 10th in Austin, Texas. Register before August 20th to get a comfy, $200 discount by using discount code S1P200_MHeckler.
Mark Heckler talks with Erin Schnabel about her SpringOnePlatform talk, "Metrics for the Win: Using Micrometer to Understand Application Behavior." SpringOne Platform is Oct 7th and 10th in Austin, Texas. Register before August 20th to get a comfy, $200 discount by using discount code S1P200_MHeckler.
Mark Heckler talks with Erin Schnabel about her SpringOnePlatform talk, "Metrics for the Win: Using Micrometer to Understand Application Behavior." SpringOne Platform is Oct 7th and 10th in Austin, Texas. Register before August 20th to get a comfy, $200 discount by using discount code S1P200_MHeckler.
It's one of those Sundays again. Listen to us talk about Newton. Designed by Simone Luciani and Nestore Mangone and published by CMON.- Matt gets mad at torques- Listen to us name NASCAR drivers- Raccoons are like us and they have tailsFind us at https://www.g33kanddestroy.com/ and https://chiblisplayground.com/.Follow us @ChiblisPodcast on Twitter: https://twitter.com/ChiblisPodcast and Instagram: https://www.instagram.com/chiblispodcast/.Find more info on Newton at https://boardgamegeek.com/boardgame/244711/newton
It's one of those Sundays again. Listen to us talk about Newton. Designed by Simone Luciani and Nestore Mangone and published by CMON.- Matt gets mad at torques- Listen to us name NASCAR drivers- Raccoons are like us and they have tailsFind us at https://www.g33kanddestroy.com/ and https://chiblisplayground.com/.Follow us @ChiblisPodcast on Twitter: https://twitter.com/ChiblisPodcast and Instagram: https://www.instagram.com/chiblispodcast/.Find more info on Newton at https://boardgamegeek.com/boardgame/244711/newton
We talk to Jon and Clint about Micrometer, a new Pivotal project that helps in application monitoring, whether you're deploying hundreds of microservices or just a couple of small apps. For links to show notes, please visit talkingkotlin.com or download the App from the Android Store.
Josh Long ( https://twitter.com/starbuxman ), Developer Advocate at Pivotal, Java Champion and author of 5 books, gives us a great tour through the latest that is happening in the Spring Universe. If you are new to Spring check out http://start.spring.io/ and create your first project within minutes. When it comes to Reactive make sure to check out https://projectreactor.io/ and dive into https://micrometer.io/ to learn more about how to extract metrics from Spring applications. As Josh is constantly traveling the world chances are high you can meet him at a local conference.
Josh Long ( https://twitter.com/starbuxman ), Developer Advocate at Pivotal, Java Champion and author of 5 books, gives us a great tour through the latest that is happening in the Spring Universe. If you are new to Spring check out http://start.spring.io/ and create your first project within minutes. When it comes to Reactive make sure to check out https://projectreactor.io/ and dive into https://micrometer.io/ to learn more about how to extract metrics from Spring applications. As Josh is constantly traveling the world chances are high you can meet him at a local conference.
Episode 0003: Amateur Engine Tear Down Woodchuck tears down the Ford FE 390 engine for his mustang like an amateur. The B Squad flag is waved high as he mixes up the cam Shaft and the rocker arm shaft....for the whole episode. He even gets Lefty to call the crank shaft the cam shaft. Harbor Freight Dead Blow - http://www.harborfreight.com/3-lb-neon-orange-dead-blow-hammer-41799.html Links 9:30 Mouse Milk - http://www.mousemilk.com/ 10:13 Kroil - http://www.kanolabs.com 10:41 Sea Foam penetrating oil - https://www.seafoamsales.com/deep-creep/ 13:50 Bronze putty knife - http://www.eastmachinery.com/product/tuokaex-tk203-non-sparking-aluminum-bronze-putty-knife-50200mm_9522.html 16:20 Brass drift - https://www.jbtoolsales.com/mayhew-tools-25078-drift-punch-brass-3-4-x-12/ 19:41 Micrometer and dial bore gauge https://en.wikipedia.org/wiki/Micrometer http://www.eastwood.com/dial-type-cylinder-bore-gauge-kit-2-6in-range.html?fee=7&fep=1417&SRCCODE=PLA00020&product_id=46281&adpos=1o1&creative=83580268860&device=c&matchtype=&network=g&gclid=CjwKEAjw7svABRCi_KPzoPr53QoSJAABSvxfYlk6ZJ4vAjCCDlzhqobixGDBeKjvxkwaPziMqG5JuxoCByjw_wcB 27:32 Gear puller - https://www.amazon.com/TEKTON-5696-Gear-Puller-3-Piece/dp/B000NPT698 30:38 ACF-50 https://www.amazon.com/Lear-Chemical-ACF50-Anti-Corrosion-Lubricant/dp/B000P1C8UO Thanks for listening, downloading and subscribing. For questions, comments or complaints please e-mail us at: Hosts@BsquadHotrod.com Twitter and Facebook - @Bsquadhotrod And if you really want to help us out give us a review in your podcast app of choice.
Scripture: Galatians 5:1-12 Preacher: Rev. David Inks Sermon Outline Introduction, I. Righteousness by Law 1-4 II. Righteousness by Faith 5-6 III. Righteousness by Micrometer 7-9 IV. Righteousness Resolve 10-12 Conclusion Sermon Video https://youtu.be/Z_R-9-BXC2c Scripture Reading: Galatians 5:1-12 King James Version (KJV) 1 Stand fast therefore in the liberty wherewith Christ hath made us free, and […] The post A Little Law, Leavens All (Galatians 5:1-12) appeared first on Covenant United Reformed Church.
Lasers have been proven to be precise tools for bone ablation. Applying no mechanical stress to the patient, they are potentially very suitable for microsurgery on fragile structures such as the inner ear. However, it remains challenging to control the laser-bone ablation without injuring embedded soft tissue. In this work, we demonstrate a closed-loop control of a short-pulsed CO2 laser to perform laser cochleostomy under the monitoring of an optical coherence tomography (OCT) system. A foresighted detection of the bone-endosteum-perilymph boundary several hundred micrometers before its exposure has been realized. Position and duration of the laser pulses are planned based on the residual bone thickness distribution. OCT itself is also used as a highly accurate tracking system for motion compensation between the target area and the optics. During ex vivo experimental evaluation on fresh porcine cochleae, the ablation process terminated automatically when the thickness of the residual tissue layer uniformly reached a predefined value. The shape of the resulting channel bottom converged to the natural curvature of the endosteal layer without injuring the critical structure. Preliminary measurements in OCT scans indicated that the mean absolute accuracy of the shape approximation was only around 20 mu m.