Podcasts about pycon

  • 88PODCASTS
  • 213EPISODES
  • 46mAVG DURATION
  • 1MONTHLY NEW EPISODE
  • Mar 8, 2025LATEST
pycon

POPULARITY

20172018201920202021202220232024


Best podcasts about pycon

Latest podcast episodes about pycon

core.py
Episode 19: Async hacks, unicorns and velociraptors

core.py

Play Episode Listen Later Mar 8, 2025 127:21


In this asynchronous episode we're interviewing a fellow core developer Yury Selivanov to talk about asyncio's past and future, composable design, immutability, and databases you'd actually like using. We also broke the 2-hour episode barrier!## Timestamps(00:00:00) INTRO(00:01:33) PART 1: INTERVIEW(00:02:27) What drives you?(00:04:47) How do you choose what to work on?(00:08:10) Hyperfocus(00:09:28) Things from Rust that Python could use(00:14:50) Nothing is sacred when you depend on glibc(00:18:47) TypeScript typing is god-tier(00:22:04) Adding async and await to Python(00:34:11) Adding new keywords to the language(00:41:17) Jumping into a new codebase(00:49:22) Any design regrets?(00:58:46) Contextvars(01:10:40) Is the frozenmap PEP happening?(01:19:21) uvloop(01:23:25) What makes Gel lovable?(01:39:57) PART 2: PR OF THE WEEK(01:47:08) Saturday talks at PyCon should be fun(01:50:35) PART 3: WHAT'S GOING ON IN CPYTHON(01:50:47) Ken Jin's tail-call interpreter(01:55:05) Barney Gale's glob.glob() optimization(01:55:43) Brandt's boolean guards to narrow types to values in the JIT(01:56:33) Mark Shannon's stack limits implemented with addresses, not counters(01:58:34) Brandt's removal of _DYNAMIC_EXIT(01:58:53) Mark Shannon's async for branches instrumented(01:59:36) Free-threading changes(01:59:58) Sam Gross' regression tests can now run in --parallel-threads(02:00:34) Tomasz Pytel's thread safety crusade(02:01:01) Xuanteng Huang's __annotations__ race fix(02:01:11) Kumar's per-thread linked lists for tasks(02:02:54) Serhiy's crashes related to PySys_GetObject() fixed(02:03:22) Sam's usage of stack pointers in thread stack traversal(02:03:38) Dino Viehland's lock avoidance during object cleanup(02:04:23) OUTRO

Python Bytes
#418 I'm a tea pot

Python Bytes

Play Episode Listen Later Jan 27, 2025 20:22 Transcription Available


Topics covered in this episode: In memoriam: Michael Foord 1974-2025 Valkey (Redis Replacement) 30 best practices for software development and testing mimetype.io Extras Joke Watch on YouTube About the show Sponsored by us! Support our work through: Our courses at Talk Python Training The Complete pytest Course Patreon Supporters Connect with the hosts Michael: @mkennedy@fosstodon.org / @mkennedy.codes (bsky) Brian: @brianokken@fosstodon.org / @brianokken.bsky.social Show: @pythonbytes@fosstodon.org / @pythonbytes.fm (bsky) Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Monday at 10am PT. Older video versions available there too. Finally, if you want an artisanal, hand-crafted digest of every week of the show notes in email form? Add your name and email to our friends of the show list, we'll never share it. Brian #1: In memoriam: Michael Foord 1974-2025 Guido van Rossum and others We've just lost Michael Foord this last weekend. From Guido: “Michael, an original thinker if there ever was one, started the tradition of having Language Summit events at PyCon, IIRC together with Barry Warsaw. He also wrote and contributed the influential mock library. … “ “PS. Feel free to post your own (positive) memories of meeting Michael – perhaps his children (10 and 13) will read them when they're older and this thread might help them remember their father.” I've added my memories. I think this is a great (and small) way to honor him. My friend Michael - Nicholas Tolervey After 5 years of trying, I did get an interview with Michael. I wish I'd have gotten that followup. Test & Code episode with Michael, ep 145, “For those about to mock” Michael #2: Valkey (Redis Replacement) Thanks Calvin HP An open source (BSD) high-performance key/value datastore that supports a variety of workloads such as caching, message queues. Can act as a primary database. Valkey can run as either a standalone daemon or in a cluster, with options for replication and high availability. Valkey natively supports a rich collection of datatypes, including strings, numbers, hashes, lists, sets, sorted sets, bitmaps, hyperloglogs and more. You can operate on data structures in-place with an expressive collection of commands. Brian #3: 30 best practices for software development and testing Michael Foord (from 2017) Some gems 1 - YAGNI 6 - Unit tests test to the unit of behavior, not the unit of implementation. 8 - Code is the enemy: It can go wrong, and it needs maintenance. Write less code. Delete code. Don't write code you don't need. 15 - The more you have to mock out to test your code, the worse your code is. and so many more … Michael #4: mimetype.io I'm always forgetting content types! Also, shout out to httpstatuses.io Extras Brian: Python 1.0.0 released 31 years ago Michael: Python 3.14.0 alpha 4 is out Joke: Tea Time

Code for Thought
[EN] ByteSized RSE: Fun with Containers - Simon Li

Code for Thought

Play Episode Listen Later Nov 29, 2024 26:11


Send us a textEnglish edition [EN]: We're kickstarting a round of new ByteSized RSE online classes and podcast episodes with an episode on containers. Focusing on Podman (used in the online class) and Docker. My guest for this episode is Simon Li from the Uni. Dundee. Many thanks to Universe HPC for supporting this podcast. Containers:https://docs.docker.com Dockerhttps://www.docker.com/pricing/faq/ Info regarding the Docker licenseshttps://docs.docker.com/get-started/docker-overview/ An overview of how Docker workshttps://podman.io Podman homepagehttps://podman-desktop.io/docs/migrating-from-docker migrating from Docker to Podmanhttps://www.redhat.com/en/blog/run-containers-mac-podman running Podman on a Machttps://www.redhat.com/en/blog/run-podman-windows running Podman on Windowshttps://github.com/containers/podman/blob/main/docs/tutorials/podman-for-windows.md more on Podman for Windowshttps://containerd.io another container toolhttps://repo2docker.readthedocs.io/en/latest/index.html repro2docker, the tool Simon mentionedhttps://kubernetes.io Kuberneteshttps://apptainer.org Apptainer (formerly Singularity)Container history:https://www.aquasec.com/blog/a-brief-history-of-containers-from-1970s-chroot-to-docker-2016/ brief overviewhttps://www.youtube.com/watch?v=wW9CAH9nSLs the presentation from 2013 when Docker was introduced at PyCon that yearhttps://utcc.utoronto.ca/~cks/space/blog/unix/ChrootHistory a brief history of the chroot(2) command of Unixhttps://freSupport the showThank you for listening! Merci de votre écoute! Vielen Dank für´s Zuhören! Contact Details/ Coordonnées / Kontakt: Email mailto:code4thought@proton.me UK RSE Slack (ukrse.slack.com): @code4thought or @piddie US RSE Slack (usrse.slack.com): @Peter Schmidt Mastodon: https://fosstodon.org/@code4thought or @code4thought@fosstodon.org Bluesky: https://bsky.app/profile/code4thought.bsky.social LinkedIn: https://www.linkedin.com/in/pweschmidt/ (personal Profile)LinkedIn: https://www.linkedin.com/company/codeforthought/ (Code for Thought Profile) This podcast is licensed under the Creative Commons Licence: https://creativecommons.org/licenses/by-sa/4.0/

Les Cast Codeurs Podcast
LCC 317 - les nouvelles paramétriques

Les Cast Codeurs Podcast

Play Episode Listen Later Oct 21, 2024 81:56


De Java 23 à WebAssembly, en passant par l'IA et les design patterns, on a tout passé au crible #java #swift #webassembly #wordpress #webcomponents #llm #mongodb #keycloak #fairsource Enregistré le 18 octobre 2024 Téléchargement de l'épisode LesCastCodeurs-Episode–317.mp3 News Langages Java 23 est sorti ! InfoQ liste toutes les JEPs intégrées à la nouvelle version https://www.infoq.com/news/2024/09/java23-released/ Et FooJay plonge dans le détail https://foojay.io/today/java–23-has-arrived-and-it-brings-a-truckload-of-changes/ JEP 455: Primitive Types in Patterns, instanceof, and switch (Preview) JEP 466: Class-File API (Second Preview) JEP 467: Markdown Documentation Comments JEP 469: Vector API (Eighth Incubator) JEP 471: Deprecate the Memory-Access Methods in sun.misc.Unsafe for Removal JEP 473: Stream Gatherers (Second Preview) JEP 474: ZGC: Generational Mode by Default JEP 476: Module Import Declarations (Preview) JEP 477: Implicitly Declared Classes and Instance Main Methods (Third Preview) JEP 480: Structured Concurrency (Third Preview) JEP 481: Scoped Values (Third Preview) JEP 482: Flexible Constructor Bodies (Second Preview) StringTemplate s'en va Un article sur l'API ClassFile qui sera un standard dans le JDK pour manipuler des classes (ala ASM) https://www.unlogged.io/post/class-file-api-not-your-everyday-java-api article long mais qui revient sur les raisons notamment parce que ASM est dans le JDK et qu'ils sont un problème de poule et d'oeuf et sur la forme de l'API a des exemples d'usage tout cela reste en preview dans le JDK des optimisation comme le lazy parsing et le constant pool sharing (en gros faire de la reference sur ce qui n'a pas changé Tip and Tail is back: cette fois une JEP https://openjdk.org/jeps/14 plus qu'une keynote provocative au language summit maintenant une JEP dite informative le language est un pu flou sur l'objectif entre regarder tip and tail pour vos librairies c'est bien et adoptons tous le meme tip du JDK jusqu'aux stack applicatives Apple annonce la sortie de son language Swift en version 6 https://www.swift.org/blog/announcing-swift–6/ Nouvelles plateformes : Swift 6 s'étend à de nouvelles plateformes (tous les grands OS déjà supportés), y compris les systèmes embarqués (sous ARM et Risc V). Swift Testing : Swift 6 introduit Swift Testing, une nouvelle bibliothèque de tests conçue pour Swift. Concurrence : Détection de data race en tant qu'erreur de compilation. Apple annonce travailler sur l'interopérabilité Swift / Java https://github.com/swiftlang/swift-java comme jextract mais dans l'autre sens The news Java https://www.infoq.com/news/2024/10/java-news-roundup-oct07–2024/ JDK 24 : Un calendrier pour la sortie de JDK 24 a été proposé. La première phase de réduction des fonctionnalités commencera le 5 décembre 2024. La version finale sera disponible le 18 mars 2025. JDK 24 introduira des mises à jour avec deux nouvelles API. La Vector API (JEP 489) facilitera les opérations sur des vecteurs, tandis que la Class-File API (JEP 484) permettra une manipulation plus efficace des fichiers de classes Java. Un changement de sécurité important est proposé avec JEP 486. Il prévoit de désactiver définitivement le Security Manager, qui a été déprécié. Cette décision signifie que cette fonctionnalité ne sera plus disponible dans les futures versions, car elle est considérée comme obsolète. Apache Tomcat et Cassandra : Les nouvelles versions de Tomcat (11.0.0) et de Cassandra (5.0.0) sont sorties. Elles incluent des améliorations et des corrections de bogues. Spring Framework : Des mises à jour pour Spring Framework (versions 3.4.0-M2, 3.3.3 et 3.2.8) ont été publiées. Elles intègrent le support d'une nouvelle API qui aide à la gestion de la mémoire. Quarkus : Red Hat a sorti la version 3.15 de Quarkus, qui apporte des corrections et des améliorations. Une nouvelle version, la 3.16, est prévue pour la fin octobre. Commonhaus Foundation : Une nouvelle organisation, la Commonhaus Foundation, a été créée pour aider les projets open source à être durables. Quarkus a rejoint cette fondation. Cassandra, Camel, Lamgchain, Micronaut, OpenLibery, JHipster, Ktor etc. Design patterns revisited: https://www.youtube.com/watch?v=kE5M6bwruhw Design and design patterns. Optional: patterns and anti-patterns. Iterator pattern. Lightweight Strategy. Factory Method using default methods. Laziness using Lambda Expressions. Decorator using Lambda Expressions. Creating Fluent interfaces. Execute Around Method Pattern. Creating a Closed Hierarchy with sealed classes. Popularité des langages de programmation https://www.techspot.com/news/105157-python-most-popular-coding-language-but-challengers-gaining.html Python reste le langage de programmation le plus populaire, surtout dans des domaines comme la science des données et le développement web. Il est apprécié pour sa simplicité et le grand nombre de bibliothèques disponibles, ce qui le rend facile à apprendre et à utiliser. De nombreuses entreprises, y compris des startups, utilisent Python pour diverses applications. Malgré sa dominance, d'autres langages comme JavaScript, Java et Go gagnent en popularité et pourraient défier la position de leader de Python. (Java est monté du poste 4 au 3, en 1 an) Les développeurs qui codent occasionnellement préfèrent Python, montrant ainsi son attrait au-delà des programmeurs professionnels. L'émergence d'outils comme ChatGPT facilite l'accès à la programmation, ce qui pourrait influencer les tendances futures en matière de langages de programmation. Librairies Paramétrer ses tests JUnit 5 avec @CsvSource https://mikemybytes.com/2021/10/19/parameterize-like-a-pro-with-junit–5-csvsource/ l'annotation permet d'avoir ses données de test au plus près de la méthode on écrit les données de test sous forme de CSV (éventuellement avec des délimiteurs de son choix pour plus de lisibilité, pour bien séparer les valeurs) par exemple -> ou maps to les valeurs peut être les paramètres de la method mai aussi les valeur de description du test Infrastructure Turbocharged Development: The Speed and Efficiency of WebAssembly par Danielle Lancashire https://devsummit.infoq.com/presentation/munich2024/turbocharged-development-speed-and-efficiency-webassembly L'utilisation de WebAssembly avec Serverless. Faire tourner des applications plus facilement dans le cloud.WebAssembly est rapide et sûr pour exécuter du code. Cela aide à déployer les applications plus rapidement et à utiliser moins de ressources. De nombreuses entreprises utilisent WebAssembly pour des tâches comme le traitement d'images et de données. Des plateformes comme Cloudflare Workers et AWS Lambda. La communauté autour de WebAssembly granèit. De nouveaux outils et bibliothèques sont créés. Cependant, il y a encore des défis à relever, comme la compatibilité et les performances. Malgré cela, l'avenir de WebAssembly est prometteur. Web C'est la guerre chez Wordpress https://techcrunch.com/2024/09/26/wordpress-vs-wp-engine-drama-explained/ une boite nommée WP Engine fait du hosting de WordPress mais ne contribue pas Automatic, les gens derrière WordPress leur onbt demandé de résoudre ce probleme, soit en payant des droits de trademark soit en contribuant de l'engineering upstream à auteur de 8% de leurs revenus WP Engine dit non Automatic coupe l'accès aux mises a jours de thèmes et de plugins à WP Engine mettant des sites à risque (securité) WP Engine dit que c'est un abus de position du CEO d'Automatic sur les accès WordPress.org Bref c'est le drame le CEO d'automatic propose à ses employés 6 mois de salaire si ils ne sont pas d'accord avec la stratégie https://www.cio.com/article/3550331/one-twelfth-of-automattic-staff-leave-over-wordpress-wp-engine-spat.html 8% ont pris l'offre Les WebComposants ne sont pas le fuitur https://dev.to/ryansolid/web-components-are-not-the-future–48bh un article d'un auteur proéminent de framework JavaScript Discute les avantages et les inconvenients de la standardisation qui permet d'élever le débat mais aussi bloque des avenues d'optimisations beaucoup d'exemples d'inovations en frameworks JS qui auraient été bloqués Les commentaires apres l'article sont interessants aussi (en contre perspective) mais tout le monde n'est pas d'accord avec cet article https://www.abeautifulsite.net/posts/web-components-are-not-the-future-they-re-the-present/ Data et Intelligence Artificielle Conseils et bonnes pratiques lors de l'intégration de LLM dans une application https://glaforge.dev/posts/2024/09/23/some-good-practices-when-integrating-an-llm-in-your-application/ management de prompt effectif versionnage et externalisation des prompts fixer la version des modèles optimisation et caching mettre en place des rails de sécurité évaluer et monitorer le comportement et la performance prioriser la sécurité des données privées Encore une nouvelle version de LangChain4j, avec la version 0.35 ! Guillaume couvre les nouveautés côté Gemini et Google Cloud https://glaforge.dev/posts/2024/09/29/lots-of-new-cool-gemini-stuff-in-langchain4j/ Support des toutes nouvelles versions de Gemini 1.5 (version 002) Un “document loader” pour charger des documents à partir de Google Cloud Storage Un “scoring model” qui permet de faire du “reranking” de résultat, pour trouver les résultats les plus pertinents pour une requête donnée Support de nouveaux paramètres des embedding models (choix de la dimensionalité des vecteurs, du troncage des textes en entrée) Ajout d'un “embedding model” pour le module Google AI Gemini Un estimateur de token pour Google AI Gemini Support des chat listeners Support des enums pour la sortie structurée JSON Et plein de mise à jour de la documentation pour refleter tous ces changements et aditions Self Correction Algo LLM https://www.infoq.com/news/2024/10/google-deepmind-score/ Google DeepMind a récemment publié SCoRe, une nouvelle méthode d'auto-correction pour les modèles de langage (LLM). Elle améliore la capacité des LLM à corriger leurs erreurs lorsqu'ils résolvent des problèmes de mathématiques ou de programmation. Contrairement aux méthodes antérieures, SCoRe utilise des données générées par le modèle lui-même pour créer des dialogues d'auto-correction. Cela permet au modèle de s'améliorer via un processus d'apprentissage par renforcement (RL) en deux étapes. Les modèles ajustés avec cette technique ont montré des améliorations significatives, surpassant les performances des modèles de base. Cette méthode pourrait ouvrir de nouvelles pistes pour rendre les LLM plus précis et robustes dans leurs réponses. MongoDB 8 est sorti https://www.mongodb.com/products/updates/version-release La version 8.0 est plus rapide, avec des lectures plus rapides, une meilleure gestion des mises à jour et des agrégations de séries temporelles jusqu'à 60 % plus rapides. De nouvelles fonctionnalités incluent le support des Query pour les données chiffrées, rendant le traitement des données sensibles plus facile. Beaucoup d'ameliorations pour la performance et scalabilité Guillaume explore les techniques avancées de Retrieval Augmented Generation pour améliorer la qualité des résultats de recherche dans ses propres documents, avec les LLMs https://glaforge.dev/talks/2024/10/14/advanced-rag-techniques/ Présentations et vidéos données lors de la conférence Devoxx Belgique Code des exemples disponibles sur Github Techniques de chunking : sliding window, hypothetical questions, semantic chunking, context retrieval chunking Techniques de retrieval : hypothetical document embedding, query compression, metadata filtering Outillage Article sur les cache alias en Infinispan https://infinispan.org/blog/2024/10/07/cache-aliases-redis-databases Explique comment on peut utiliser Infinispan pour remplacer Redis Explique la différence entre les database de Redis et les caches d'Infinispan Explique l'utilité des alias en général Explique comment on peut avoir un mapping des databases de Redis vers des caches d'Infinispan Sécurité Keycloak 26 est sorti: https://www.keycloak.org/2024/10/keycloak–2600-released Organizations feature: permet aux administrateurs de créer et gérer des structures organisationnelles, facilitant la gestion des rôles et des permissions. Persistent user sessions: Les sessions des utilisateurs sont maintenant stockées par default dans la base de donnée ce qui améliore la cohérence, surtout avec plusieurs instances. Login Theme: Offre un design plus propre et une option de mode sombre qui s'adapte aux préférences des utilisateurs. L'amélioration du déploiement multi-sites renforce la fiabilité et réduit le temps d'arrêt lors des demandes des utilisateurs. Admin recovery: une méthode simple pour récupérer l'accès administrateur si tous les comptes sont bloqués, en créant un compte temporaire via des variables d'environnement. Pour les utilisateurs qui migrent vers cette version, il est important de prêter attention aux changements liés à la gestion des caches et aux sessions persistantes. Loi, société et organisation Introduction des licences fair source https://techcrunch.com/2024/09/22/some-startups-are-going-fair-source-to-avoid-the-pitfalls-of-open-source-licensing/ Certaines startups utilisent des licences “fair source” pour partager leur code tout en protégeant leurs intérêts commerciaux. Les licences FSL (Functional Source License) et BUSL (Business Source License) permettent d'ouvrir le code après 2 ou 4 ans. Ces licences empêchent les concurrents de vendre des produits similaires tout de suite, offrant une protection temporaire. Certains critiques pensent que ces licences sont compliquées et pourraient limiter l'innovation, car elles ne sont pas totalement ouvertes. Le “fair source” est encore un concept nouveau, mais il pourrait devenir un bon compromis entre open source et logiciel privé. definition de fair source: code lisible publique, peut etre utilise et modifié avec des “restrictions minimales” pour proteger le business modele du producteur ; et devient open source de maniere deferée “any purpose other than a Competing Use. A Competing Use means use of the Software in or for a commercial product or service that competes with the Software or any other product or service we offer using the Software as of the date we make the Software available” Outils de l'épisode Un petit outil sympa pour les utilisateurs de Macs avec un écran “wide”, pour partager un écran virtuel : https://github.com/Stengo/DeskPad les écrans larges sont partagés entierement et ceui fait un rendu 16:9 pour les gens qui le voient cet écran acte comme un écran mais il est virtuel et on peut mettre les applications que l'on veut dedans on ne l'a pas testé Conférences La liste des conférences provenant de Developers Conferences Agenda/List par Aurélie Vache et contributeurs : 17–18 octobre 2024 : DevFest Nantes - Nantes (France) 17–18 octobre 2024 : DotAI - Paris (France) 30–31 octobre 2024 : Agile Tour Nantais 2024 - Nantes (France) 30–31 octobre 2024 : Agile Tour Bordeaux 2024 - Bordeaux (France) 31 octobre 2024–3 novembre 2024 : PyCon.FR - Strasbourg (France) 6 novembre 2024 : Master Dev De France - Paris (France) 7 novembre 2024 : DevFest Toulouse - Toulouse (France) 8 novembre 2024 : BDX I/O - Bordeaux (France) 13–14 novembre 2024 : Agile Tour Rennes 2024 - Rennes (France) 16–17 novembre 2024 : Capitole Du Libre - Toulouse (France) 20–22 novembre 2024 : Agile Grenoble 2024 - Grenoble (France) 21 novembre 2024 : DevFest Strasbourg - Strasbourg (France) 21 novembre 2024 : Codeurs en Seine - Rouen (France) 27–28 novembre 2024 : Cloud Expo Europe - Paris (France) 28 novembre 2024 : Who Run The Tech ? - Rennes (France) 2–3 décembre 2024 : Tech Rocks Summit - Paris (France) 3 décembre 2024 : Generation AI - Paris (France) 3–5 décembre 2024 : APIdays Paris - Paris (France) 4–5 décembre 2024 : DevOpsRex - Paris (France) 4–5 décembre 2024 : Open Source Experience - Paris (France) 5 décembre 2024 : GraphQL Day Europe - Paris (France) 6 décembre 2024 : DevFest Dijon - Dijon (France) 22–25 janvier 2025 : SnowCamp 2025 - Grenoble (France) 30 janvier 2025 : DevOps D-Day #9 - Marseille (France) 6–7 février 2025 : Touraine Tech - Tours (France) 25 mars 2025 : ParisTestConf - Paris (France) 3 avril 2025 : DotJS - Paris (France) 10–12 avril 2025 : Devoxx Greece - Athens (Greece) 16–18 avril 2025 : Devoxx France - Paris (France) 7–9 mai 2025 : Devoxx UK - London (UK) 12–13 juin 2025 : DevLille - Lille (France) 24 juin 2025 : WAX 2025 - Aix-en-Provence (France) 18–19 septembre 2025 : API Platform Conference - Lille (France) & Online 9–10 octobre 2025 : Volcamp - 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/

Python Bytes
#403 A machine learning algorithm walks into a bar…

Python Bytes

Play Episode Listen Later Sep 30, 2024 25:26


Topics covered in this episode: uv under discussion on Mastodon erdantic: Entity Relationship Diagrams Extra, Extra, Extra Django Extra, Extra, Extra Extras Joke Watch on YouTube About the show Sponsored by us! Support our work through: Our courses at Talk Python Training The Complete pytest Course Patreon Supporters Connect with the hosts Michael: @mkennedy@fosstodon.org Brian: @brianokken@fosstodon.org Show: @pythonbytes@fosstodon.org Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Monday at 10am PT. Older video versions available there too. Finally, if you want an artisanal, hand-crafted digest of every week of the show notes in email form? Add your name and email to our friends of the show list, we'll never share it. Michael #1: uv under discussion on Mastodon It's interesting that uv is slightly controversial Russell: As enthusiastic as I am about the direction uv is going, I haven't adopted them anywhere - because I want very much to understand Astral's intended business model before I hook my wagon to their tools. Hynek: As much as I hate VC, [...] FOSS projects flame out all the time too. … To me uv looks like a genius sting to trick VCs into paying to fix packaging. We'll be better off either way. Glyph: Rust is more expensive and difficult to maintain, not to mention "non-native" to the average customer here. … it can burn out all the other projects in the ecosystem simultaneously, creating a risk of monoculture Hynek on Rust: I don't think y'all quite grok what uv makes so special due to your seniority. The speed is really cool, but the reason Rust is elemental is that it's one compiled blob that can be used to bootstrap and maintain a Python development. Christopher Neugebauer: Just dropping in here to say that corporate capture of the Python ecosystem is the #1 keeps-me-up-at-night subject in my community work, so I watch Astral with interest, even if I'm not yet too worried. Armin Ronacher What uv is doing, even in the worst possible future this is a very forkable and maintainable thing. Finally, see the comment at the end by Charlie Marsh Brian #2: erdantic: Entity Relationship Diagrams “erdantic is a simple tool for drawing entity relationship diagrams (ERDs) for Python data model classes. Diagrams are rendered using the venerable Graphviz library.” Supported data modeling frameworks are: Pydantic V2 Pydantic V1 legacy attrs dataclasses Michael #3: Extra, Extra, Extra Added Python Bytes Search as a custom search engine. Along came passkeys. A cool idea that quickly turned evil. Follow up from post and my conversation last week: vaultwarden (via Pablo) uv publish Trying the tabs on bottom lifestyle inspired by Arc Adding Python Bytes (and Talk Python) as custom search engines. PyCon 2025 dates: From 14 May through 22 May, 2025 Brian #4: Django Extra, Extra, Extra Django Project Ideas Evgenia Verbina Project ideas with list of tech stack stuff you'll learn and/or work on with the project Ex: Recipe organizer tech stack: Django templates, Django ORM, Optional JavaScript “Familiarize yourself with Django's ORM (object-relational mapper) and database support by building an app to keep track of your favorite recipes. Add a web-based frontend with options to filter recipes by category, ingredients, and user ratings so you can easily browse for inspiration.” DjangoTV Jeff Triplett Django conference videos and tutorials. Django Commons Heard about from Lacey Henschel “Django Commons is an organization dedicated to supporting the community's efforts to maintain packages. It seeks to improve the maintenance experience for all contributors; reducing the barrier to entry for new contributors and reducing overhead for existing maintainers.” Django 5 has simplified templates for better form field rendering But if you want a completely different take on forms, maybe try iommi forms They wrote about it on Why we wrote a new form library for Django Djade: a Django template formatter Adam Johnson Like black or ruff, but for Django templates. Extras Brian: The Open Source Project Maintainer's Guide Suggested by Rafael Weingartner Joke: A Machine Learning algorithm walks into a bar…

Les Cast Codeurs Podcast
LCC 315 - les températures ne sont pas déterministes

Les Cast Codeurs Podcast

Play Episode Listen Later Sep 17, 2024 110:08


JVM summit, virtual threads, stacks applicatives, licences, déterminisme et LLMs, quantification, deux outils de l'épisode et bien plus encore. Enregistré le 13 septembre 2024 Téléchargement de l'épisode LesCastCodeurs-Episode–315.mp3 News Langages Netflix utilise énormément Java et a rencontré un problème avec les Virtual Thread dans Java 21. Les ingénieurs de Netflix analysent ce problème dans cet article : https://netflixtechblog.com/java–21-virtual-threads-dude-wheres-my-lock–3052540e231d Les threads virtuels peuvent améliorer les performances mais posent des défis. Un problème de locking a été identifié : les threads virtuels se bloquent mutuellement. Cela entraîne des performances dégradées et des instabilités. Netflix travaille à résoudre ces problèmes et à tirer pleinement parti des threads virtuels. Une syntax pour indiquer qu'un type est nullable ou null-restricted arriverait dans Java https://bugs.openjdk.org/browse/JDK–8303099 Foo! interdirait null Foo? indiquerait que null est accepté Foo?[]! serait un tableau non-null de valeur nullable Il y a aussi des idées de syntaxe pour initialiser les tableaux null-restricted JEP: https://openjdk.org/jeps/8303099 Les vidéos du JVM Language Summit 2024 sont en ligne https://www.youtube.com/watch?v=OOPSU4LnKg0&list=PLX8CzqL3ArzUEYnTa6KYORRbP3nhsK0L1 Project Leyden Update Project Babylon - Code Reflection Valhalla - Where Are We? An Opinionated Overview on Static Analysis for Java Rethinking Java String Concatenation Code Reflection in Action - Translating Java to SPIR-V Java in 2024 Type Specialization of Java Generics - What If Casts Have Teeth ? (avec notre Rémi Forax national !) aussi tip or tail pour tout l'ecosysteme quelques liens sur Babylon: Code reflection pour exprimer des langages etranger (SQL) dans Java: https://openjdk.org/projects/babylon/ et sont example en emulation de LINQ https://openjdk.org/projects/babylon/articles/linq Librairies Micronaut sort sa version 4.6 https://micronaut.io/2024/08/26/micronaut-framework–4–6–0-released/ essentiellement une grosse mise à jour de tonnes de modules avec les dernières versions des dépendances Microprofile 7 faire quelques changements et evolution incompatibles https://microprofile.io/2024/08/22/microprofile–7–0-release/#general enleve Metrics et remplace avec Telemetry (metrics, log et tracing) Metrics reste une spec mais standalone Microprofile 7 depende de Jakarta Core profile et ne le package plus Microprofile OpenAPI 4 et Telemetry 2 amenent des changements incompatibles Quarkus 3.14 avec LetsEncrypt et des serialiseurs JAckson sans reflection https://quarkus.io/blog/quarkus–3–14–1-released/ Hibernate ORM 6.6 Serialisateurs JAckson sans reflection installer des certificats letsencrypt simplement (notamment avec la ligne de commande qui aide sympa notamment avec ngrok pour faire un tunnel vers son localhost retropedalage sur @QuarkusTestResource vs @WithTestResource suite aux retour de OOME et lenteur des tests mieux isolés Les logs structurées dans Spring Boot 3.4 https://spring.io/blog/2024/08/23/structured-logging-in-spring-boot–3–4 Les logs structurées (souvent en JSON) vous permettent de les envoyer facilement vers des backends comme Elastic, AWS CloudWatch… Vous pouvez les lier à du reporting et de l'alerting. Spring Boot 3.4 prend en charge la journalisation structurée par défaut. Il prend en charge les formats Elastic Common Schema (ECS) et Logstash, mais il est également possible de l'étendre avec vos propres formats. Vous pouvez également activer la journalisation structurée dans un fichier. Cela peut être utilisé, par exemple, pour imprimer des journaux lisibles par l'homme sur la console et écrire des journaux structurés dans un fichier pour l'ingestion par machine. Infrastructure CockroachDB qui avait une approche Business Software License (source available puis ALS 3 ans apres), passe maintenant en license proprietaire avec source available https://www.cockroachlabs.com/blog/enterprise-license-announcement/ Polyform project offre des licences standardisees selon les besoins de gratuit vs payant https://polyformproject.org/ Cloud Azure fonctions, comment le demarrage a froid est optimisé https://www.infoq.com/articles/azure-functions-cold-starts/?utm_campaign=infoq_content&utm_source=twitter&utm_medium=feed&utm_term=Cloud fonctions ont une latence naturelle forte toutes les lantences longues ne sont aps impactantes pour le business les demarrages a froid peuvent etre mesures avec les outils du cloud provider donc faites en usage faites des decentilers de latences experience 381 ms cold et 10ms apres tracing pour end to end latence les strategies keep alive pings: reveiller la fonctione a intervalles reguliers pour rester “warm” dans le code de la fonction: initialiser les connections et le chargement des assemblies dans l'initialization configurer dans host.json le batching, desactiver file system logging etc deployer les fonctions as zips reduire al taille du code et des fichiers (qui sont copies sur le serveur froid) sur .net activer ready to run qui aide le JIT compiler instances azure avec plus de CPU et memoire sont plus cher amis baissent le cold start dedicated azure instances pour vos fonctions (pas aprtage avec les autres tenants) ensuite montre des exemples concrets Web Sortie de Vue.js 3.5 https://blog.vuejs.org/posts/vue–3–5 Vue.JS 3.5: Nouveautés clés Optimisations de performance et de mémoire: Réduction significative de la consommation de mémoire (–56%). Amélioration des performances pour les tableaux réactifs de grande taille. Résolution des problèmes de valeurs calculées obsolètes et de fuites de mémoire. Nouvelles fonctionnalités: Reactive Props Destructure: Simplification de la déclaration des props avec des valeurs par défaut. Lazy Hydration: Contrôle de l'hydratation des composants asynchrones. useId(): Génération d'ID uniques stables pour les applications SSR. data-allow-mismatch: Suppression des avertissements de désynchronisation d'hydratation. Améliorations des éléments personnalisés: Prise en charge de configurations d'application, d'API pour accéder à l'hôte et au shadow root, de montage sans Shadow DOM, et de nonce pour les balises. useTemplateRef(): Obtention de références de modèle via l'API useTemplateRef(). Teleport différé: Téléportation de contenu vers des éléments rendus après le montage du composant. onWatcherCleanup(): Enregistrement de callbacks de nettoyage dans les watchers. Data et Intelligence Artificielle On entend souvent parler de Large Language Model quantisés, c'est à dire qu'on utilise par exemple des entiers sur 8 bits plutôt que des floatants sur 32 bits, pour réduire les besoins mémoire des GPU tout en gardant une précision proche de l'original. Cet article explique très visuellement et intuitivement ce processus de quantisation : https://newsletter.maartengrootendorst.com/p/a-visual-guide-to-quantization Guillaume continue de partager ses aventures avec le framework LangChain4j. Comment effectuer de la classification de texte : https://glaforge.dev/posts/2024/07/11/text-classification-with-gemini-and-langchain4j/ en utilisant la classe TextClassification de LangChain4j, qui utilise une approche basée sur les vector embeddings pour comparer des textes similaires en utilisant du few-shot prompting, sous différentes variantes, dans cet autre article : https://glaforge.dev/posts/2024/07/30/sentiment-analysis-with-few-shots-prompting/ et aussi comment faire du multimodal avec LangChain4j (avec le modèle Gemini) pour analyser des textes, des images, mais également des vidéos, du contenu audio, ou bien des fichiers PDFs : https://glaforge.dev/posts/2024/07/25/analyzing-videos-audios-and-pdfs-with-gemini-in-langchain4j/ Pour faire varier la prédictibilité ou la créativité des LLMs, certains hyperparamètres peuvent être ajustés, comme la température, le top-k et le top-p. Mais est-ce que vous savez vraiment comment fonctionnent ces paramètres ? Deux articles très clairs et intuitifs expliquent leur fonctionnement : https://medium.com/google-cloud/is-a-zero-temperature-deterministic-c4a7faef4d20 https://medium.com/google-cloud/beyond-temperature-tuning-llm-output-with-top-k-and-top-p–24c2de5c3b16 la tempoerature va ecraser la probabilite du prochain token mais il reste des variables: approximnation des calculs flottants, stacks differentes effectuants ces choix differemment, que faire en cas d'egalité de probabilité entre deux tokens mais il y a d'atures apporoches de configuiration des reaction du LLM: top-k (qui evite les tokens peu frequents), top-p pour avoir les n des tokens qui totalient p% des probabilités temperature d'abord puis top-k puis top-p explique quoi utiliser quand OSI propose une definition de l'IA open source https://www.technologyreview.com/2024/08/22/1097224/we-finally-have-a-definition-for-open-source-ai/ gros debats ces derniers mois utilisable pour tous usages sans besoin de permission chercheurs peuvent inspecter les components et etudier comment le system fonctionne systeme modifiable pour tout objectif y compris chager son comportement et paratger avec d'autres avec ou sans modification quelque soit l'usage Definit des niveaux de transparence (donnees d'entranement, code source, poids) Une longue rétrospective de PostgreSQL a des volumes de malades et les problèmes de lock https://ardentperf.com/2024/03/03/postgres-indexes-partitioning-and-lwlocklockmanager-scalability/ un article pour vous rassurer que vous n'aurez probablement jamais le problème histoire sous forme de post mortem des conseils pour éviter ces falaises Outillage Un premier coup d'oeil à la future notation déclarative de Gradle https://blog.gradle.org/declarative-gradle-first-eap un article qui explique à quoi ressemble cette nouvelle syntaxe déclarative de Gradle (en plus de Groovy et Kotlin) Quelques vidéos montrent le support dans Android Studio, pour le moment, ainsi que dans un outil expérimental, en attendant le support dans tous les IDEs L'idée est d'éviter le scripting et d'avoir vraiment qu'une description de son build Cela devrait améliorer la prise en charge de Gradle dans les IDEs et permettre d'avoir de la complétion rapide, etc c'est moi on on a Maven là? Support de Firefox dans Puppeteer https://hacks.mozilla.org/2024/08/puppeteer-support-for-firefox/ Puppeteer, la bibliothèque d'automatisation de navigateur, supporte désormais officiellement Firefox dès la version 23. Cette avancée permet aux développeurs d'écrire des scripts d'automatisation et d'effectuer des tests de bout en bout sur Chrome et Firefox de manière interchangeable. L'intégration de Firefox dans Puppeteer repose sur WebDriver BiDi, un protocole inter-navigateurs en cours de standardisation au W3C. WebDriver BiDi facilite la prise en charge de plusieurs navigateurs et ouvre la voie à une automatisation plus simple et plus efficace. Les principales fonctionnalités de Puppeteer, telles que la capture de journaux, l'émulation de périphériques, l'interception réseau et le préchargement de scripts, sont désormais disponibles pour Firefox. Mozilla considère WebDriver BiDi comme une étape importante vers une meilleure expérience de test inter-navigateurs. La prise en charge expérimentale de CDP (Chrome DevTools Protocol) dans Firefox sera supprimée fin 2024 au profit de WebDriver BiDi. Bien que Firefox soit officiellement pris en charge, certaines API restent non prises en charge et feront l'objet de travaux futurs. Guillaume a créé une annotation @Retry pour JUnit 5, pour retenter l'exécution d'un test qui est “flaky” https://glaforge.dev/posts/2024/09/01/a-retryable-junit–5-extension/ Guillaume n'avait pas trouvé d'extension par défaut dans JUnit 5 pour remplacer les Retry rules de JUnit 4 Mais sur les réseaux sociaux, une discussion intéressante s'ensuit avec des liens sur des extensions qui implémentent cette approche Comme JUnit Pioneer qui propose plein d'extensions utiles https://junit-pioneer.org/docs/retrying-test/ Ou l'extension rerunner https://github.com/artsok/rerunner-jupiter Arnaud a aussi suggéré la configuration de Maven Surefire pour relancer automatiquement les tests qui ont échoué https://maven.apache.org/surefire/maven-surefire-plugin/examples/rerun-failing-tests.html la question philosophique est: est-ce que c'est tolerable les tests qui ecouent de façon intermitente Architecture Un ancien fan de GraphQL en a fini avec la technologie GraphQL et réfléchit aux alternatives https://bessey.dev/blog/2024/05/24/why-im-over-graphql/ Problèmes de GraphQL: Sécurité: Attaques d'autorisation Difficulté de limitation de débit Analyse de requêtes malveillantes Performance: Problème N+1 (récupération de données et autorisation) Impact sur la mémoire lors de l'analyse de requêtes invalides Complexité accrue: Couplage entre logique métier et couche de transport Difficulté de maintenance et de tests Solutions envisagées: Adoption d'API REST conformes à OpenAPI 3.0+ Meilleure documentation et sécurité des types Outils pour générer du code client/serveur typé Deux approches de mise en œuvre d'OpenAPI: “Implementation first” (génération de la spécification à partir du code) “Specification first” (génération du code à partir de la spécification) retour interessant de quelqu'un qui n'utilise pas GraphQL au quotidien. C'était des problemes qui devaient etre corrigés avec la maturité de l'ecosysteme et des outils mais ca a montré ces limites pour cette personne. Prensentation de Grace Hoper en 1980 sur le future des ordinateurs. https://youtu.be/AW7ZHpKuqZg?si=w_o5_DtqllVTYZwt c'est fou la modernité de ce qu'elle décrit Des problèmes qu'on a encore aujourd'hui positive leadership Elle décrit l'avantage de systèmes fait de plusieurs ordinateurs récemment declassifié Leader election avec les conditional writes sur les buckets S3/GCS/Azure https://www.morling.dev/blog/leader-election-with-s3-conditional-writes/ L'élection de leader est le processus de choisir un nœud parmi plusieurs pour effectuer une tâche. Traditionnellement, l'élection de leader se fait avec un service de verrouillage distribué comme ZooKeeper. Amazon S3 a récemment ajouté le support des écritures conditionnelles, ce qui permet l'élection de leader sans service séparé. L'algorithme d'élection de leader fonctionne en faisant concourir les nœuds pour créer un fichier de verrouillage dans S3. Le fichier de verrouillage inclut un numéro d'époque, qui est incrémenté à chaque fois qu'un nouveau leader est élu. Les nœuds peuvent déterminer s'ils sont le leader en listant les fichiers de verrouillage et en vérifiant le numéro d'époque. attention il peut y avoir plusieurs leaders élus (horloges qui ont dérivé) donc c'est à gérer aussi Méthodologies Guillaume Laforge interviewé par Sfeir, où il parle de l'importance de la curiosité, du partage, de l'importance de la qualité du code, et parsemé de quelques photos des Cast Codeurs ! https://www.sfeir.dev/success-story/guillaume-laforge-maestro-de-java-et-esthete-du-code-propre/ Sécurité Comment crowdstrike met a genoux windows et de nombreuses entreprises https://next.ink/144464/crowdstrike-donne-des-details-techniques-sur-son-fiasco/ l'incident vient de la mise à jour de la configuration de Falcon l'EDR de crowdstrike https://www.crowdstrike.com/blog/falcon-update-for-windows-hosts-technical-details/ qu'est ce qu'un EDR? Un système Endpoint Detection and Response a pour but de surveiller votre machine ( access réseaux, logs, …) pour detecter des usages non habituels. Cet espion doit interagir avec les couches basses du système (réseau, sockets, logs systems) et se greffe donc au niveau du noyau du système d'exploitation. Il remonte les informations en live à une plateforme qui peut ensuite adapter les réponse en live si l'incident a duré moins de 1h30 coté crowdstrike plus de 8 millions de machines se sont retrouvées hors service bloquées sur le Blue Screen Of Death selon Microsoft https://blogs.microsoft.com/blog/2024/07/20/helping-our-customers-through-the-crowdstrike-outage/ cela n'est pas la première fois et était déjà arrivé il y a quelques mois sur Linux. Comme il s'agissait d'une incompatibilité de kernel il avait été moins important car les services ITs gèrent mieux ces problèmes sous Linux https://stackdiary.com/crowdstrike-took-down-debian-and-rocky-linux-a-few-months-ago-and-no-one-noticed/ Les benchmarks CIS, un pilier pour la sécurité de nos environnements cloud, et pas que ! (Katia HIMEUR TALHI) https://blog.cockpitio.com/security/cis-benchmarks/ Le CIS est un organisme à but non lucratif qui élabore des normes pour améliorer la cybersécurité. Les référentiels CIS sont un ensemble de recommandations et de bonnes pratiques pour sécuriser les systèmes informatiques. Ils peuvent être utilisés pour renforcer la sécurité, se conformer aux réglementations et normaliser les pratiques. Loi, société et organisation Microsoft signe un accord avec OVHCloud pour qu'il arretent leur plaine d'antitrust https://www.politico.eu/article/microsoft-signs-antitrust-truce-with-ovhcloud/ la plainte était en Europe mermet a des clients de plus facilement deployer les solutions Microsoft dans le fournisseur de cloud de leur choix la plainte avait ete posé à l'été 2021 ca rendait faire tourner les solutions MS plus cheres et non competitives vs MS ElasticSearch et Kibana sont de nouveau Open Source, en ajoutant la license AGPL à ses autres licences existantes https://www.elastic.co/fr/blog/elasticsearch-is-open-source-again le marché d'il y a trois ans et maintenant a changé AWS est une bon partenaire le flou Elasticsearch vs le produit d'AWS s'est clarifié donc retour a l'open source via AGPL Affero GPL Elastic n'a jamais cessé de croire en l'open source d'après Shay Banon son fondateur Le changement vers l'AGPL est une option supplémentaire, pas un remplacement d'une des autres licences existantes et juste apres, Elastic annonce des resultants decevants faisant plonger l'action de 25% https://siliconangle.com/2024/08/29/elastic-shares-plunge–25-lower-revenue-projections-amid-slower-customer-commitments/ https://unrollnow.com/status/1832187019235397785 et https://www.elastic.co/pricing/faq/licensing pour un résumé des licenses chez elastic Outils de l'épisode MailMate un client email Markdown et qui gere beaucoup d'emails https://medium.com/@nicfab/mailmate-a-powerful-client-email-for-macos-markdown-integrated-email-composition-e218fe2accf3 Emmanuel l'utilise sur les boites email secondaires un peu lent a demarrer (synchro) et le reste est rapide boites virtuelles (par requete) SpamSieve Que macOS je crois Trippy, un analyseur de réseau https://github.com/fujiapple852/trippy Il regroupe dans une CLI traceroute et ping Conférences La liste des conférences provenant de Developers Conferences Agenda/List par Aurélie Vache et contributeurs : 17 septembre 2024 : We Love Speed - Nantes (France) 17–18 septembre 2024 : Agile en Seine 2024 - Issy-les-Moulineaux (France) 19–20 septembre 2024 : API Platform Conference - Lille (France) & Online 20–21 septembre 2024 : Toulouse Game Dev - Toulouse (France) 25–26 septembre 2024 : PyData Paris - Paris (France) 26 septembre 2024 : Agile Tour Sophia-Antipolis 2024 - Biot (France) 2–4 octobre 2024 : Devoxx Morocco - Marrakech (Morocco) 3 octobre 2024 : VMUG Montpellier - Montpellier (France) 7–11 octobre 2024 : Devoxx Belgium - Antwerp (Belgium) 8 octobre 2024 : Red Hat Summit: Connect 2024 - Paris (France) 10 octobre 2024 : Cloud Nord - Lille (France) 10–11 octobre 2024 : Volcamp - Clermont-Ferrand (France) 10–11 octobre 2024 : Forum PHP - Marne-la-Vallée (France) 11–12 octobre 2024 : SecSea2k24 - La Ciotat (France) 15–16 octobre 2024 : Malt Tech Days 2024 - Paris (France) 16 octobre 2024 : DotPy - Paris (France) 16–17 octobre 2024 : NoCode Summit 2024 - Paris (France) 17–18 octobre 2024 : DevFest Nantes - Nantes (France) 17–18 octobre 2024 : DotAI - Paris (France) 30–31 octobre 2024 : Agile Tour Nantais 2024 - Nantes (France) 30–31 octobre 2024 : Agile Tour Bordeaux 2024 - Bordeaux (France) 31 octobre 2024–3 novembre 2024 : PyCon.FR - Strasbourg (France) 6 novembre 2024 : Master Dev De France - Paris (France) 7 novembre 2024 : DevFest Toulouse - Toulouse (France) 8 novembre 2024 : BDX I/O - Bordeaux (France) 13–14 novembre 2024 : Agile Tour Rennes 2024 - Rennes (France) 16–17 novembre 2024 : Capitole Du Libre - Toulouse (France) 20–22 novembre 2024 : Agile Grenoble 2024 - Grenoble (France) 21 novembre 2024 : DevFest Strasbourg - Strasbourg (France) 21 novembre 2024 : Codeurs en Seine - Rouen (France) 27–28 novembre 2024 : Cloud Expo Europe - Paris (France) 28 novembre 2024 : Who Run The Tech ? - Rennes (France) 2–3 décembre 2024 : Tech Rocks Summit - Paris (France) 3 décembre 2024 : Generation AI - Paris (France) 3–5 décembre 2024 : APIdays Paris - Paris (France) 4–5 décembre 2024 : DevOpsRex - Paris (France) 4–5 décembre 2024 : Open Source Experience - Paris (France) 5 décembre 2024 : GraphQL Day Europe - Paris (France) 6 décembre 2024 : DevFest Dijon - Dijon (France) 22–25 janvier 2025 : SnowCamp 2025 - Grenoble (France) 30 janvier 2025 : DevOps D-Day #9 - Marseille (France) 6–7 février 2025 : Touraine Tech - Tours (France) 3 avril 2025 : DotJS - Paris (France) 16–18 avril 2025 : Devoxx France - Paris (France) Nous contacter Pour réagir à cet épisode, venez discuter sur le groupe Google https://groups.google.com/group/lescastcodeurs Contactez-nous via twitter https://twitter.com/lescastcodeurs Faire un crowdcast ou une crowdquestion Soutenez Les Cast Codeurs sur Patreon https://www.patreon.com/LesCastCodeurs Tous les épisodes et toutes les infos sur https://lescastcodeurs.com/

The Real Python Podcast
Astrophysics and Astronomy With Python & PyCon Africa 2024

The Real Python Podcast

Play Episode Listen Later Sep 6, 2024 66:27


Are you interested in practicing your Python skills while learning how to solve astrophysics and astronomy problems? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder's Weekly articles and projects.

Talk Python To Me - Python conversations for passionate developers

Every year the core developers meet to discuss and propose the major changes and trends in Python itself. This invite-only conference of about 50 people happens inside PyCon in the US. Because it's private, we rarely get detailed looks inside this event. On this episode, we have Seth Michael Larson here to give us his account of the sessions and proposals. It's a unique look into the zeitgeist of CPython. Episode sponsors Posit Talk Python Courses Links from the show Seth on Mastodon: @sethmlarson@fosstodon.org Seth on Twitter: @sethmlarson Seth on Github: github.com The Python Language Summit 2024: blogspot.com PEP 2026: Calendar versioning for Python: github.com PSF authorized as a CVE Numbering Authority: python.org Recommends Memory-Safe Programming Languages: blogspot.com Watch this episode on YouTube: youtube.com Episode transcripts: talkpython.fm --- Stay in touch with us --- Subscribe to us on YouTube: youtube.com Follow Talk Python on Mastodon: talkpython Follow Michael on Mastodon: mkennedy

Python Bytes
#397 So many PyCon videos

Python Bytes

Play Episode Listen Later Aug 20, 2024 22:21


Topics covered in this episode: pyawaitable Annotated area charts with plotnine DeltaDB PyCon US 2024 Recap + Videos are up Extras Joke Watch on YouTube About the show Sponsored by us! Support our work through: Our courses at Talk Python Training The Complete pytest Course Patreon Supporters Connect with the hosts Michael: @mkennedy@fosstodon.org Brian: @brianokken@fosstodon.org Show: @pythonbytes@fosstodon.org Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Tuesdays at 10am PT. Older video versions available there too. Finally, if you want an artisanal, hand-crafted digest of every week of the show notes in email form? Add your name and email to our friends of the show list, we'll never share it. Michael #1: pyawaitable CPython API for asynchronous functions. by Peter Bierma It was originally designed to be directly part of CPython - you can read the scrapped PEP about it. Since this library only uses the public ABI, it's better fit outside of CPython, as a library. Brian #2: Annotated area charts with plotnine Nicola Rennie This is a marvelous, very professional looking plot, and a tutorial for how to achieve it. Uses plotline, which is “.. an implementation of a grammar of graphics in Python based on ggplot2” I actually didn't know the gg in ggplot came from “grammar of graphics”. TIL Michael #3: DeltaDB A lightweight, comprehensive solution for managing delta tables built on polars and deltalake. Deltalake: Delta Lake is an open-source storage format that runs on top of existing data lakes. Polars: Dataframes powered by a multithreaded, vectorized query engine, written in Rust (aka fluent, rust-based pandas) See the docs. Brian #4: PyCon US 2024 Recap + Videos are up 95 countries attended total attendance of 2,991 2,551 in person 440 remote Videos available PyConUS I recommend Playlist → 2024 → view full playlist, as it's easier to see the talk titles. I've got Paul Gannsle's pytest for unittesters and Amitosh Swain's Testing Data Pipelines queued up Extras Brian: Hello, pytest! course available as of last Friday. Now the fastest way to get started using pytest. 16 lessons (really 12 + intro, outro, code download, pytest flag cheat sheet) The whole shebang is about 90 min. (faster if you bump up the video speed. :) Michael: Cutting back on digital distractions, trying Dumb Phone for iPhone. See screenshot Code in a Castle Event Joke: The Tao of Programming: 4.3 A master was explaining the nature of Tao of to one of his novices, "The Tao is embodied in all software -- regardless of how insignificant," said the master. "Is the Tao in a hand-held calculator?" asked the novice. "It is," came the reply. "Is the Tao in a video game?" continued the novice. "It is even in a video game," said the master. "And is the Tao in the DOS for a personal computer?" The master coughed and shifted his position slightly. "The lesson is over for today," he said.

Talk Python To Me - Python conversations for passionate developers
#474: Python Performance for Data Science

Talk Python To Me - Python conversations for passionate developers

Play Episode Listen Later Aug 19, 2024 68:23


Python performance has come a long way in recent times. And it's often the data scientists, with their computational algorithms and large quantities of data, who care the most about this form of performance. It's great to have Stan Seibert back on the show to talk about Python's performance for data scientists. We cover a wide range of tools and techniques that will be valuable for many Python developers and data scientists. Episode sponsors Posit Talk Python Courses Links from the show Stan on Twitter: @seibert Anaconda: anaconda.com High Performance Python with Numba training: learning.anaconda.cloud PEP 0703: peps.python.org Python 3.13 gets a JIT: tonybaloney.github.io Numba: numba.pydata.org LanceDB: lancedb.com Profiling tips: docs.python.org Memray: github.com Fil: a Python memory profiler for data scientists and scientists: pythonspeed.com Rust: rust-lang.org Granian Server: github.com PIXIE at SciPy 2024: github.com Free threading Progress: py-free-threading.github.io Free Threading Compatibility: py-free-threading.github.io caniuse.com: caniuse.com SPy, presented at PyCon 2024: us.pycon.org Watch this episode on YouTube: youtube.com Episode transcripts: talkpython.fm --- Stay in touch with us --- Subscribe to us on YouTube: youtube.com Follow Talk Python on Mastodon: talkpython Follow Michael on Mastodon: mkennedy

Les Cast Codeurs Podcast
LCC 314 - 1000 fois 1000 dépendances

Les Cast Codeurs Podcast

Play Episode Listen Later Jul 16, 2024 83:11


Emmanuel, Guillaume et Arnaud discutent des nouvelles de l'été. JEPs, transactional outbox pattern avec Spring, LLM dans Chrome, faille polyfill.io, TOTP, congés illimités et IDE payant ou pas payant ? Enregistré le 12 juillet 2024 Téléchargement de l'épisode LesCastCodeurs-Episode-314.mp3 News Langages Les fonctionnalités de JDK 23 ont été figées début Juin (release prévue en septembre) https://openjdk.org/projects/jdk/23/ https://www.youtube.com/watch?v=kzjGp7LmW0I JEPs finales: 467: Markdown Documentation Comments 471: Deprecate the Memory-Access Methods in sun.misc.Unsafe for Removal 474: ZGC: Generational Mode by Default JEPs en incubation / preview 455: Primitive Types in Patterns, instanceof, and switch (Preview) 466: Class-File API (Second Preview) 469: Vector API (Eighth Incubator) 473: Stream Gatherers (Second Preview) 476: Module Import Declarations (Preview) 477: Implicitly Declared Classes and Instance Main Methods (Third Preview) 480: Structured Concurrency (Third Preview) 481: Scoped Values (Third Preview) 482: Flexible Constructor Bodies (Second Preview) Librairies Le transactional outbox pattern avec Spring Boot https://www.wimdeblauwe.com/blog/2024/06/25/transactional-outbox-pattern-with-spring-boot/ transactional outbox permet d'éviter des 2PC ou des désynchronisations de resources: typiquement un commit dans une base et un envoie de message dans un bus on ecrit le message dans une table de la base de données, et un process séparé récupère les messages et les envoient dans le bus implémentation utilise Spring Integration dans l'article, la seconde resource est l'envoie d'email montre une approche de tests le flow descrit pas psring integration est pas super trivial a lire quand on est pas familier mais cela poll la table toutes les secondes et envoie email et si succes de l'appel de service, vide le message de la table Deuxieme exemple avec Spring modulith qui a un event bus interne qui peut être persisté décrit les differences avec spring integration et les limites de l'approche modulith (message order, retry etc) Comment tester des valeurs de propriétés différentes dans un test Quarkus https://quarkus.io/blog/overriding-configuration-from-test-code/ on a tendance a ne pas tester les propriétés de config ce blog montre 5 (enfin 4 utiles) façons de le faire avec Quarkus. les profils de test, mocker l'objet de config, les test components (experimental), l'injection dans les constructeurs Quarkus 3.12 https://quarkus.io/blog/quarkus-3-12-0-released/ centralisation des configs TLS support pour le load shedding (reject requests on service overload) événements JFR specific a Quarkus native image agent support Spring Boot 3 (compat layer) Support Kotlin 2 etc Cloud On vous parlait dans un épisode précédent de ce problème de coûts S3 sur des requêtes non autorisées. C'est Graphana Loki qui a mis ce problème sous les projecteurs https://grafana.com/blog/2024/06/27/grafana-security-update-grafana-loki-and-unintended-data-write-attempts-to-amazon-s3-buckets/ le problème venait des valeurs par défaut des buckets déclarés dans le chart helm de Loki, en particulier celui nommé ‘chunks' Data et Intelligence Artificielle Guillaume avait partagé l'information sur la disponibilité prochaine d'un mini modele LLM dans chrome. C'est maintenant une réalité et vous pouvez le tester. https://ai-sdk-chrome-ai.vercel.app/ Nécessite Chrome 127 (version stable à partir de mi-juillet) Utilise le SDK Vercel AI Guillaume nous parle de toutes les nouveautés liées au modèle Gemini de Google dans la dernière release de LangChain4j https://glaforge.dev/posts/2024/07/05/latest-gemini-features-support-in-langchain4j/ Outillage 1% des utilisateurs de Maven Central utilisent 83% de sa bande passante. Installez un repository manager qui fait proxy (et cela pour tous les types de dépendances)!!! https://www.sonatype.com/blog/maven-central-and-the-tragedy-of-the-commons rien n'est réellement gratuit et l'abus d'une minorité peut nuire à l'ensemble. Cela fait maintenant plus de 20 ans que les communautés le répète: installer un gestionnaire de dépendances dans votre infrastructure (nexus, artifactory, CodeArtifact, …). En plus de protéger le bien commun cela vous permet de raffiner le filtrage des dépendances, d'assurer la reproductibilité de vos builds, d'optimiser les performances (et réduire les coûts) en ne téléchargeant que depuis votre propre infrastructure, etc … Maven Central est un commun qui ne coute rien à l'utilisteur mais qui est indispensable à tous 1000 milliards de téléchargements l'année dernière 83% de la bande passante consommé par 1% des IPs Beaucoup des ces IP viennent des companies les plus larges proxy pour réduire charge sur central, réduire couts ingress/egress ils vont implementer un mécanisme de throttling question est-ce que la concentration des IPs veut juste dire que c'est le dernier noeud mais que cacher n'est pas effectif pour eux et qu'il y a des milliers de clients derrière une IP? le trotting ferait mal et le proxy ne marche plus dans un monde ou le dev est dans le cloud et distribue géographiquement Comment mettre en place backstage, ici avec un projet Spring Boot utilisant CircleCi, Renovate, SonarCloud… https://piotrminkowski.com/2024/06/13/getting-started-with-backstage/ Cet article explique comment utiliser backstage pour fournir à vos équipes un template d'une application spring-boot. Elle est automatiquement crée sous forme d'un repository git(hub) avec les integrations classiques pour gérer la CI (via CircleCI), la qualité (via SonarCloud), la mise à jour de dépendances (via Renovate) et bien sur son référencement sur le portail backstage. tutoriel tres complet tres facilement remplacable pour un project avec votre technologie preferee (pas specifique a Spring Boot, ou Java) Architecture Que se passe t'il quand vous faites un push sur GitHub? https://github.blog/2024-06-11-how-we-improved-push-processing-on-github/ GitHub explique comment ils ont amélioré leur architecture, notamment en mettant en place Kafka pour distribuer les actions qui découlent d'un push sur GitHub. paralelisation des taches (avant sequentiel) limitation des dependances entre etapes effectuées lors d'un push plus de taches peuvent faire un retry un classique de decoupling via un EDA Sécurité Attaque du CDN polyfill.io https://sansec.io/research/polyfill-supply-chain-attack polyfill c'est un support de nouvelles fonctionalites dans les ancien navigateurs servi par cdn notamment une societe chinoise a achete le domaine et le github et injecte du malware qui pointe sur des serveurs qui servent le malware selectivement (device, admin ou pas, heure de la journée) Fastly et Cloudflare on des deploiements alternatiuve Une faille de sécurité, de type Remote Code Execution, vieille de 10ans, dans CocoaPods, un gestionnaire de dépendances très utilisé dans le monde Apple (macOS et iOS) https://securityboulevard.com/2024/07/cocoapods-apple-vulns-richixbw/ https://cocoapods.org/ / https://cocoapods.org/ est un gestionnaire de dépendances pour les projets Xcode. Les dependances (Pods) sont publiées sous forme de Specs qui sont référencées dans un Specs Repo (une sorte de Maven central mais seulement avec des metadonnées) CVE-2024-38366 est une vulnérabilité de type remote code execution avec un score CVSS de 10 La faille existait depuis 10 ans et a été corrigée en Sept 2023. Elle permettait d'avoir un accès root sur trunk.cocoapods.org qui stock les Specs. Elles auraient donc pu être modifiées sans que les auteurs ne s'en apperçoivent. Pas de preuve pour l'instant que la faille ait été exploitée Mieux comprendre la double authentification avec TOTP https://hendrik-erz.de/post/understanding-totp-two-factor-authentication-eli5 Cet article revient sur le fonctionnement de TOTP et comment l'implementer avec des exemples en python the QR code est une URL qui contient: le secret en base 32. le nom du totp, qui a fournit le TOTP, combien de chiffres et la durée de vie du TOTP pour generer les chiffres, prends le secret, le temps et hash le tout, prendre 4 bytes et les convertir le chiffres typiquement le serveur genere les deux d'avant, les deux d'apres et le courant pour comparer Loi, société et organisation L'équipe Apache Maven gagne le troisième prix BlueHats https://nlnet.nl/bluehatsprize/2024/3.html le projet remporte un gain de 10000€. Ce prix est organisé par le gouvernement français afin de récompenser les projets open sources les plus impactants. La clause de congés illimités en Europe https://www.osborneclarke.com/insights/why-your-unlimited-vacation-policy-may-be-of-limited-use-in-europe Les politiques de congés illimités, populaires aux États-Unis, ne sont pas aussi avantageuses en Europe. En Europe, les employeurs doivent suivre les congés pris pour respecter les minima légaux de quatre semaines par an donc ils ne peuvent pas economiser sur le faire de ne plus les gérer. Les congés illimités permettent aux US de ne plus à devoir les payer au départ de l'employé. En Europe les employeurs doivent payer les congés non utilisés lors de la fin du contrat. Les employés européens pourraient prendre davantage de congés, car ils sont mieux protégés contre le licenciement. Les jours de maladie sont plus cadrés en europe. Un employé qui souffre d'une maladie longue pourrait utiliser les congés illimités mais ce ne sont pas les même règles qui s'appliquent OpenDNS n'est plus disponible en France et au Portugal https://support.opendns.com/hc/en-us/articles/27951404269204-OpenDNS-Service-Not-Available-To-Users-In-France-and-Portugal A priori Cisco qui opère openDNS en a marre des demandes de restrictions spécifiques à nos pays et préfère donc retirer entièrement l'accès au service plutôt que de se conformer à la nième demande de restrictions qui faisait suite à la plainte du groupe Canal+ portant sur l'accès à des sites illicites de streaming pour du sport Ask Me Anything Salut ! Êtes-vous plutôt IDE payants (ex : IJ Ultimate, ou des plugins payants), ou ne jurez-vous que par des outils gratuits ? Un peu des deux ? Si adaptes du payant, ça ne vous déprime pas qu'un nombre considérable d'employeurs rechignent à nous payer nos outils ? Que “de toute façon VSCode c'est gratuit” (à prononcer avec une voix méprisante) ? Quid du confort, ou de la productivité et/ou qualité accrue quand on maîtrise de tels outils ? Merci ! Conférences La liste des conférences provenant de Developers Conferences Agenda/List par Aurélie Vache et contributeurs : 6 septembre 2024 : JUG Summer Camp - La Rochelle (France) 6-7 septembre 2024 : Agile Pays Basque - Bidart (France) 17 septembre 2024 : We Love Speed - Nantes (France) 17-18 septembre 2024 : Agile en Seine 2024 - Issy-les-Moulineaux (France) 19-20 septembre 2024 : API Platform Conference - Lille (France) & Online 25-26 septembre 2024 : PyData Paris - Paris (France) 26 septembre 2024 : Agile Tour Sophia-Antipolis 2024 - Biot (France) 2-4 octobre 2024 : Devoxx Morocco - Marrakech (Morocco) 7-11 octobre 2024 : Devoxx Belgium - Antwerp (Belgium) 8 octobre 2024 : Red Hat Summit: Connect 2024 - Paris (France) 10 octobre 2024 : Cloud Nord - Lille (France) 10-11 octobre 2024 : Volcamp - Clermont-Ferrand (France) 10-11 octobre 2024 : Forum PHP - Marne-la-Vallée (France) 11-12 octobre 2024 : SecSea2k24 - La Ciotat (France) 16 octobre 2024 : DotPy - Paris (France) 16-17 octobre 2024 : NoCode Summit 2024 - Paris (France) 17-18 octobre 2024 : DevFest Nantes - Nantes (France) 17-18 octobre 2024 : DotAI - Paris (France) 30-31 octobre 2024 : Agile Tour Nantais 2024 - Nantes (France) 30-31 octobre 2024 : Agile Tour Bordeaux 2024 - Bordeaux (France) 31 octobre 2024-3 novembre 2024 : PyCon.FR - Strasbourg (France) 6 novembre 2024 : Master Dev De France - Paris (France) 7 novembre 2024 : DevFest Toulouse - Toulouse (France) 8 novembre 2024 : BDX I/O - Bordeaux (France) 13-14 novembre 2024 : Agile Tour Rennes 2024 - Rennes (France) 20-22 novembre 2024 : Agile Grenoble 2024 - Grenoble (France) 21 novembre 2024 : DevFest Strasbourg - Strasbourg (France) 21 novembre 2024 : Codeurs en Seine - Rouen (France) 27-28 novembre 2024 : Cloud Expo Europe - Paris (France) 28 novembre 2024 : Who Run The Tech ? - Rennes (France) 3-5 décembre 2024 : APIdays Paris - Paris (France) 4-5 décembre 2024 : DevOpsRex - Paris (France) 4-5 décembre 2024 : Open Source Experience - Paris (France) 6 décembre 2024 : DevFest Dijon - Dijon (France) 22-25 janvier 2025 : SnowCamp 2025 - Grenoble (France) 16-18 avril 2025 : Devoxx France - Paris (France) Nous contacter Pour réagir à cet épisode, venez discuter sur le groupe Google https://groups.google.com/group/lescastcodeurs Contactez-nous via twitter https://twitter.com/lescastcodeurs Faire un crowdcast ou une crowdquestion Soutenez Les Cast Codeurs sur Patreon https://www.patreon.com/LesCastCodeurs Tous les épisodes et toutes les infos sur https://lescastcodeurs.com/

PyBites Podcast
#165 - Kelly Schuster-Paredes: Integrating Python + AI in Education and Other Areas

PyBites Podcast

Play Episode Listen Later Jun 24, 2024 35:15 Transcription Available


Welcome back to our Pybites podcast. In this exciting episode we talk again with Kelly Schuster-Paredes about teaching Python, Pycon's education summit, how we are all learners and teachers, AI in education and for learning, how coding / programming skills evolve your brain far beyond their initial aim, exciting tech trends, mindset, wins and books. Phew that is a whole lot so make sure you tune in and get inspired!Welcome back to the Pybites podcast. In this exciting episode, we reconnect with Kelly Schuster-Paredes to discuss the dynamic world of teaching Python. We delve into PyCon's education summit, the dual roles of learners and teachers, and the transformative power of AI in education. Discover how coding skills can evolve your brain, explore the latest tech trends, and gain insights into the right mindset for developers. Plus, Kelly shares her recent wins and book recommendations. There's a lot to unpack in this episode, so tune in and get inspired!---Teaching Python podcastBook tip: Artificial ArtifactsReach out to Kelly:- X- LinkedIn

Talk Python To Me - Python conversations for passionate developers

I have a special episode for you this time around. We're coming to you live from PyCon 2024. I had the chance to sit down with some amazing people from the data science side of things: Jodie Burchell, Maria Jose Molina-Contreras, and Jessica Greene. We cover a whole set of recent topics from a data science perspective. Though we did have to cut the conversation a bit short as they were coming from and go to talks they were all giving but it was still a pretty deep conversation. Episode sponsors Sentry Error Monitoring, Code TALKPYTHON Code Comments Talk Python Courses Links from the show Jodie Burchell: @t_redactyl Jessica Greene: linkedin.com Maria Jose Molina-Contreras: linkedin.com Talk Python's free Shiny course: talkpython.fm/shiny Watch this episode on YouTube: youtube.com Episode transcripts: talkpython.fm --- Stay in touch with us --- Subscribe to us on YouTube: youtube.com Follow Talk Python on Mastodon: talkpython Follow Michael on Mastodon: mkennedy

Les Cast Codeurs Podcast
LCC 313 - 313 CCL

Les Cast Codeurs Podcast

Play Episode Listen Later Jun 15, 2024 79:45


Katia, Guillaume, Emmanuel et Antonio discutent Kotlin, Micronaut, Spring Boot, Quarkus, Langchain4j, LLMs en Java, builds reproductible et la question AMA du jour, comment fait-on carrière de dev à 40 ans ? Enregistré le 14 juin 2024 Téléchargement de l'épisode LesCastCodeurs-Episode-313.mp3 News Langages Android avec Kotlin Multiplatform our Flutter avec Dart ? https://developers.googleblog.com/en/making-development-across-platforms-easier-for-developers/ Des licenciements ont continué chez Google et l'équipe Flutter/Dart comme plein d'autres ont été touchées, mais sur les réseaux sociaux les gens ont pensé que Google désinvestissait dans Flutter et Dart. Par ailleurs, côté Android, ils poussent plutôt du côté de Kotlin et KMP, mais naturellement aussi les gens se sont demandé si Google avait pris parti pour pousser plus Kotlin/KMP plutôt que Flutter/Dart. Pour essayer de mieux faire comprendre aux développeurs l'intérêt des deux plateformes, et leurs avantages et inconvénients, les directeurs des deux plateformes ont rédigé un article commun. Si l'on souhaite une expérience plus proche du hardware et des dernières nouveautés d'Android, et d'avoir aussi une UI/UX vraiment native Android, mieux vaut aller du côté de Kotlin/KMP. Si l'on souhaite par contre une expérience multiplateforme Web, mobile, desktop avec une UX commune cross-plateforme, avec également le partage de business logic à partir d'une même base de code, Flutter et Dart sont plus adaptés. Recap de KotlinConf https://x.com/gz_k/status/1793887581433971083?s=46&t=C18cckWlfukmsB_Fx0FfxQ RPC multiplatform la pres Grow with the flow montrant la reecriture en kotlin plus simple que des solutions complexes ailleurs power-assert pour ecrire des tests Kotlin 2.0 et les evolutions majeures Kotlin multiplatforme mainteant stable Kotlin Compose Multiplatform continue a amturer Retour d'experience de la migration d'android jetpack vers Kotlin Multiplatform use cases de coroutines et scope Librairies Quarkus veut aller dans une fondation https://quarkus.io/blog/quarkus-in-a-foundation/ ameliorer l'adoption (encore plus), ameliorer la transparence, et la collaboration, encourager la participatiopn multi vendeur Premiere etape : une gouvernance plus overte Deuxieme etape: bouger dans uen foundation Echange avec la communaute sur la proposition et les fondations cibles Des criteres pour al foudnation (notamment la rapidite de delivery Quarkus 3.11 https://quarkus.io/blog/quarkus-3-11-0-released/ Websocket.next en cours Dev services pour observabilite (grafana, jaegel, open telemetry extension infinispan cache #38448 - Observability extensions - Dev Services, Dev Resources, LGTM #39836 - Infinispan Cache Extension #40309 - WebSockets Next: client endpoints #40534 - WebSockets Next: initial version of security integration #40273 - Allow quarkus:run to launch Dev Services #40539 - Support for OIDC session expired page #40600 - Introduce OidcRedirectFilter LangChain4j 0.31 est sorti https://github.com/langchain4j/langchain4j/releases/tag/0.31.0 Recherche Web pour le RAG avec Google et Tavily RAG avec les bases de données SQL (expérimental) Récupération des resources remontées par le RAG lorsque AiServices retourne un Result Observabilité LLM pour OpenAI pour être notifié des requêtes, réponses et erreurs Intégration de Cohere (embedding), Jina (embedding et re-ranking scoring), Azuere CosmosDB comme embedding store Mise à jour de Gemini avec le parallel function calling et les instructions système Spring Boot 3.3.0 est sorti https://spring.io/blog/2024/05/23/spring-boot-3-3-0-available-now support Class Data Sharing Micrometer sipport de spantag etc Amelioration Spring Security comme JwtAuthenticationCovnerter support docker compose pour les images container bitnami Virtual thread pour les websockets Support sBOM via an actuator SNI for embedded web servers une nouvelle doc via antora Micronaut 4.5 est sortie https://github.com/micronaut-projects/micronaut-platform/releases/tag/v4.5.0 Le serveur basé sur Netty inclus la détection d'opération bloquante et les modules l'utilisant indiqueront à l'utilisateur quand certaines opérations peuvent être redirigée plutôt sur un virtual thread ou dans le thread pool IO Micronaut Data inclus le support de la multitenance avec partitionnement par discriminateur pour JDBC et R2DBC Micronaut Data rajoute le pagination par curseur pour JDBC et R2DBC (important aussi pour Jakarta Data) Support des annotations Jakarta Servlet pour configurer par exemple les servelet filters Support virtual thread et HTTP/2 Un nouveau module JSON Schema pour générer des JSON Schemas pour les records Java Un nouveau module Source Gen pour faire de la génération de source pour Java et Kotlin cross-language Un nouveau module Guice pour importer des modules Guice existants Web Angular 18 est sorti https://blog.angular.dev/angular-v18-is-now-available-e79d5ac0affe Support expérimental pour la détection de changement sans zone Angular.dev est désormais le nouveau site pour les développeurs Angular Material 3, les “deferrable views”, le “built-in control flow” sont maintenant stables et intègrent une série d'améliorations Améliorations du rendu côté serveur telles que le support de l'hydratation i18n, un meilleur débogage, le support de l'hydratation dans Angular Material, et la event replay qui utilise la même bibliothèque que Google Search. Data et Intelligence Artificielle Une version pure Java du LLM Llama3 de Meta https://github.com/mukel/llama3.java/tree/main utilise la future API Vector de Java JLama, un moteur d‘exécution de LLM en Java avec l'api vector https://www.infoq.com/news/2024/05/jlama-llm-inference-java/ basé sur llama.c qui est un moteur d'inference de LLM (l'execution des requetes) jlama implementé avec vector APIs et PamanaTensorOperations plusisures alternatives (native binding, iml0ementation pure en java, scala, kotlin) Target Speech Hearing https://www.infoq.com/news/2024/05/target-speech-hearing/ Nouveau algo Deep Learning de l'Université de Washington permet d'écouter une seule personne de ton choix et effacer tout le bruit autour le système nécessite que la personne portant les écouteurs appuie sur un bouton tout en regardant quelqu'un parler ou simplement en le fixant pendant trois à cinq secondes Permet à un modèle d'apprendre les schémas vocaux du locuteur et de s'y attacher pour pouvoir les restituer à l'auditeur, même s'il se déplace et cesse de regarder cette personne. Selon les chercheurs, cela constitue une avancée significative par rapport aux écouteurs à réduction de bruit existants, qui peuvent annuler efficacement tous les sons, mais ne peuvent pas sélectionner les locuteurs en fonction de leurs caractéristiques vocales. Actuellement, le système ne peut enregistrer qu'un seul locuteur à la fois. Une autre limitation est que l'enregistrement ne réussira que si aucune autre voix forte ne provient de la même direction. L'équipe a mis en open source leur code et leur jeu de données afin de faciliter les travaux de recherche futurs pour améliorer l'audition de la parole cible. Outillage Utiliser LLM pour migrer du framework de testing https://www.infoq.com/news/2024/06/slack-automatic-test-conversion/ Slack a migré 15.000 tests de Enzyme à React Testing Library avec un succès de 80% Migration nécessaire pour le manque de support de Enzyme pour React 18 L'équipe a essayé d'automatiser la conversion avec des transformations AST, mais n'a atteint que 45 % de succès à cause de la complexité des méthodes d'Enzyme et du manque d'accès aux informations contextuelles du DOM. L'équipe a utilisé Claude 2.1 pour la conversion, avec des taux de réussite variant de 40 % à 60 %, les résultats dépendant largement de la complexité des tâches. Suite aux résultats insatisfaisants, l'équipe a décidé d'observer comment les développeurs humains abordaient la conversion des tests unitaires. Les développeurs humains utilisaient leurs connaissances sur React, Enzyme et RTL, ainsi que le contexte du rendu et les conversions AST de l'outil initial pour mieux convertir les tests unitaires. Finalement les ingénieurs de Slack ont combiné transformations AST et LLM en intégrant des composants React rendus et des conversions AST dans les invites, atteignant un taux de réussite de 80 % démontrant ainsi la complémentarité de ces technologies. Claude 2.1 est un modèle de langage de grande taille (LLM) annoncé en novembre 2023 par Anthropic. Il inclut une fenêtre contextuelle de 200 000 tokens, des réductions significatives des taux d'hallucination du modèle, des invites système et permet l'utilisation d'outils. Depuis, Anthropic a introduit la famille de modèles Claude 3, composée de trois modèles distincts, avec des capacités multimodales et une compréhension contextuelle améliorée. Un arbre de syntaxe abstraite (AST) est une représentation arborescente de la structure syntaxique abstraite du code source écrit dans un langage de programmation. Chaque nœud de l'arbre représente une construction du code source. Un arbre de syntaxe se concentre sur la structure et le contenu nécessaires pour comprendre la fonctionnalité du code. Les AST sont couramment utilisés dans les compilateurs et les interpreters pour analyser et examiner le code, permettant diverses transformations, optimisations et traductions lors de la compilation. IDE de test de JetBrains https://blog.jetbrains.com/qa/2024/05/aqua-general-availability/ Aqua, le premier IDE conçu pour l'automatisation des tests, supporte plusieurs langages (Java, Python, JavaScript, TypeScript, Kotlin, SQL) et frameworks de tests (Selenium, Playwright, Cypress). Pourquoi ? Les tests d'applications nécessitent des compétences spécifiques. Aqua, un IDE adapté, est recommandé par les ingénieurs en automatisation des tests. Aqua propose deux plans de licence : un gratuit pour les usages non commerciaux et un payant pour les usages commerciaux. cam me parait un peu contre intuitif a l'heure du devops et du TDD de faire des outils dédiés et donc des equipes ou personnes dédiées Méthodologies Les 10 principes à suivre, selon le créateur de cURL, pour être un bon BDFL (Benevolent Dictator For Life) https://daniel.haxx.se/blog/2024/05/27/my-bdfl-guiding-principles/ Être ouvert et amical Livrer des produits solides comme le roc Être un leader de l'Open Source Privilégier la sécurité Fournir une documentation de premier ordre Rester indépendant Répondre rapidement Suivre l'actualité Rester à la pointe de la technologie Respecter les retours d'information Dans un vieil article de Artima, Guido Van Rossum, le créateur de Python et premier BDFL d'un projet, se remémore un échange de 1995 qui est à l'origine de ce concept https://www.artima.com/weblogs/viewpost.jsp?thread=235725 Guido Van Rossum a été le premier à endosser ce “rôle” Un site compréhensif sur les build reproductibles https://reproducible-builds.org longue doc de la definition aux méthodes pour resoudre des problèmes spécifiques Masterclass de Fabien Olicard: Le Palais Mental https://www.youtube.com/watch?v=u6wu_iY4xd8 Technique pour retenir de l'information plus longtemps que dans sa mémoire courte Les APIs web ne devraient pas rediriger HTTP vers HTTPS https://jviide.iki.fi/http-redirects grosso modo le risque majeur est d'envoyer des données confidentielles en clair sur le réseau le mieux serait de ne pas rediriger vers HTTPS, mais par contre de retourner une vraie erreur explicite notamment les clés d'API et c'est facile de ne pas le,voir vu les redirects. Sécurité Blog de GitHub sur la provenance et l'attestation https://github.blog/2024-04-30-where-does-your-software-really-come-from/ Discute les concepts de securisation de chainne d'approvisionnement de sogiciel et comment elles s'articulent entre elle. A haut niveau discute les hash pour garantir le meme fichier La signature asymetrique pour prouver que j'ai signé (e.g. le hash) et donc que je garantis. L'attenstation qui declare des faits sur un artifact attestation de provenance: source code et instructions de build (SLSA provenance) mais il faut garantir les signature avec une autorite de certification et avec des certificats a courte vide idealement, c'est sigstore MEtionne aussi The Update Framework pour s'appuyer sur cela et garantir des undates non compromis Keycloak 25 est sorti https://www.keycloak.org/2024/06/keycloak-2500-released.html Argon2 pour le hashing de mots de passe Depreciation des adaptateurs (Tomcat, servlet etc) Java 21 et depreciation de Java 17 session utilisatur persistente meme pour les instances online (pour survivre a une rotation de keycloak ameliorations autour des passkeys management et health endpoint sur un port different Et plus Demande aux cast codeurs A 40 ans, tu peux encore être codeur reconnu ? Conférences La liste des conférences provenant de Developers Conferences Agenda/List par Aurélie Vache et contributeurs : 12-14 juin 2024 : Rencontres R - Vannes (France) 13-14 juin 2024 : Agile Tour Toulouse - Toulouse (France) 14 juin 2024 : DevQuest - Niort (France) 18 juin 2024 : Mobilis In Mobile 2024 - Nantes (France) 18 juin 2024 : BSides Strasbourg 2024 - Strasbourg (France) 18 juin 2024 : Tech & Wine 2024 - Lyon (France) 19-20 juin 2024 : AI_dev: Open Source GenAI & ML Summit Europe - Paris (France) 19-21 juin 2024 : Devoxx Poland - Krakow (Poland) 26-28 juin 2024 : Breizhcamp 2024 - Rennes (France) 27 juin 2024 : DotJS - Paris (France) 27-28 juin 2024 : Agi Lille - Lille (France) 4-5 juillet 2024 : Sunny Tech - Montpellier (France) 8-10 juillet 2024 : Riviera DEV - Sophia Antipolis (France) 6 septembre 2024 : JUG Summer Camp - La Rochelle (France) 6-7 septembre 2024 : Agile Pays Basque - Bidart (France) 17 septembre 2024 : We Love Speed - Nantes (France) 17-18 septembre 2024 : Agile en Seine 2024 - Issy-les-Moulineaux (France) 19-20 septembre 2024 : API Platform Conference - Lille (France) & Online 25-26 septembre 2024 : PyData Paris - Paris (France) 26 septembre 2024 : Agile Tour Sophia-Antipolis 2024 - Biot (France) 2-4 octobre 2024 : Devoxx Morocco - Marrakech (Morocco) 7-11 octobre 2024 : Devoxx Belgium - Antwerp (Belgium) 8 octobre 2024 : Red Hat Summit: Connect 2024 - Paris (France) 10 octobre 2024 : Cloud Nord - Lille (France) 10-11 octobre 2024 : Volcamp - Clermont-Ferrand (France) 10-11 octobre 2024 : Forum PHP - Marne-la-Vallée (France) 11-12 octobre 2024 : SecSea2k24 - La Ciotat (France) 16 octobre 2024 : DotPy - Paris (France) 17-18 octobre 2024 : DevFest Nantes - Nantes (France) 17-18 octobre 2024 : DotAI - Paris (France) 30-31 octobre 2024 : Agile Tour Nantais 2024 - Nantes (France) 30-31 octobre 2024 : Agile Tour Bordeaux 2024 - Bordeaux (France) 31 octobre 2024-3 novembre 2024 : PyCon.FR - Strasbourg (France) 6 novembre 2024 : Master Dev De France - Paris (France) 7 novembre 2024 : DevFest Toulouse - Toulouse (France) 8 novembre 2024 : BDX I/O - Bordeaux (France) 13-14 novembre 2024 : Agile Tour Rennes 2024 - Rennes (France) 20-22 novembre 2024 : Agile Grenoble 2024 - Grenoble (France) 21 novembre 2024 : DevFest Strasbourg - Strasbourg (France) 27-28 novembre 2024 : Cloud Expo Europe - Paris (France) 28 novembre 2024 : Who Run The Tech ? - Rennes (France) 3-5 décembre 2024 : APIdays Paris - Paris (France) 4-5 décembre 2024 : DevOpsDays Paris - Paris (France) 4-5 décembre 2024 : Open Source Experience - Paris (France) 6 décembre 2024 : DevFest Dijon - Dijon (France) 22-25 janvier 2025 : SnowCamp 2025 - Grenoble (France) 16-18 avril 2025 : Devoxx France - Paris (France) Nous contacter Pour réagir à cet épisode, venez discuter sur le groupe Google https://groups.google.com/group/lescastcodeurs Contactez-nous via twitter https://twitter.com/lescastcodeurs Faire un crowdcast ou une crowdquestion Soutenez Les Cast Codeurs sur Patreon https://www.patreon.com/LesCastCodeurs Tous les épisodes et toutes les infos sur https://lescastcodeurs.com/

The New Stack Podcast
How to Start Building in Python with Amazon Q Developer

The New Stack Podcast

Play Episode Listen Later Jun 13, 2024 9:42


Nathan Peck, a senior developer advocate for generative AI at Amazon Web Services (AWS), shares his experiences working with Python in a recent episode of The New Stack Makers, recorded at PyCon US. Although not a Python expert, Peck frequently deals with Python scripts in his role, often assisting colleagues in running scripts as cron jobs. He highlights the challenge of being a T-shaped developer, possessing broad knowledge across multiple languages and frameworks but deep expertise in only a few.Peck introduces Amazon Q, a generative AI coding assistant launched by AWS in November, and demonstrates its capabilities. The assistant can be integrated into an integrated development environment (IDE) like VS Code. It assists in explaining, refactoring, fixing, and even developing new features for Python codebases. Peck emphasizes Amazon Q's ability to surface best practices from extensive AWS documentation, making it easier for developers to navigate and apply.Amazon Q Developer is available for free to users with an AWS Builder ID, without requiring an AWS cloud account. Peck's demo showcases how this tool can simplify and enhance the coding experience, especially for those handling complex or unfamiliar codebases.Learn more from The New Stack about Amazon Q and Amazon's Generative AI strategy:Amazon Q, a GenAI to Understand AWS (and Your Business Docs)Decoding Amazon's Generative AI StrategyResponsible AI at Amazon Web Services: Q&A with Diya WynnJoin our community of newsletter subscribers to stay on top of the news and at the top of your game. 

Teaching Python
Episode 133: Live from PyCon 2024

Teaching Python

Play Episode Listen Later Jun 12, 2024 32:34


In this special episode of Teaching Python, hosts Sean Tibor and Kelly Schuster-Paredes broadcast live from PyCon US 2024, exploring the significant role educators play within the Python community. The hosts discuss the importance of engaging more educators at PyCon and other Python conferences, addressing the challenges and barriers educators face such as financial constraints, time commitments, and overcoming imposter syndrome. With contributions from a live audience, the episode delves into personal experiences of attendees, highlighting the immense value these conferences provide for professional development and networking. Discussion points include the benefits of the Education Summit, opportunities for cross-disciplinary learning, and the sense of community that PyCon fosters. The hosts also propose solutions to increase educator participation, including the potential for travel grants and better informational outreach. Together, they emphasize the collective goal of enriching the teaching and learning experience within the Python community by encouraging wider educator involvement.

core.py
Episode 11: Live from PyCon 2024

core.py

Play Episode Listen Later May 28, 2024 30:30


Who says we can't do short episodes? Well, it was a challenge! But with the help of some gentle conference schedule pressure, here's our first sub-hour episode. We're discussing the language summit, answering audience questions, and behaving like serious professionals, as usual. ## Outline (00:00:00) INTRO (00:02:01) PEP 602 tweaks: 2 years of bug fix releases (00:02:45) CalVer for Python versions? (00:04:51) In Python there's this thing called the C API (00:08:51) More about PyREPL (00:12:17) Evolving pdb (00:14:49) Memhive (00:16:18) The boring 3.13 (00:18:16) Q&A (00:18:43) Fashion + favorite bug (00:22:12) What happens in 2100 with CalVer? (00:23:02) Subinterpreters or free-threading? (00:23:41) Where else to find information on current development? (00:25:40) Will distros provide free-threading builds? (00:26:23) Will the podcast run out of content? (00:28:37) OUTRO

Python Bytes
#385 RESTing on Postgres

Python Bytes

Play Episode Listen Later May 27, 2024 24:04


Topics covered in this episode: PostgresREST How Python Asyncio Works: Recreating it from Scratch Bend The Smartest Way to Learn Python Regular Expressions Extras Joke Watch on YouTube About the show Sponsored by Mailtrap: pythonbytes.fm/mailtrap Connect with the hosts Michael: @mkennedy@fosstodon.org Brian: @brianokken@fosstodon.org Show: @pythonbytes@fosstodon.org Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Tuesdays at 10am PT. Older video versions available there too. Finally, if you want an artisanal, hand-crafted digest of every week of the show notes in email form? Add your name and email to our friends of the show list, we'll never share it. Michael #1: PostgresREST PostgREST serves a fully RESTful API from any existing PostgreSQL database. It provides a cleaner, more standards-compliant, faster API than you are likely to write from scratch. Speedy First the server is written in Haskell using the Warp HTTP server (aka a compiled language with lightweight threads). Next it delegates as much calculation as possible to the database. Finally it uses the database efficiently with the Hasql library PostgREST handles authentication (via JSON Web Tokens) and delegates authorization to the role information defined in the database. This ensures there is a single declarative source of truth for security. Brian #2: How Python Asyncio Works: Recreating it from Scratch Jacob Padilla Cool tutorial walking through how async works, including Generators Review The Event Loop Sleeping Yield to Await Await with AsyncIO Another great async resource is: Build your Own Async David Beasley talk from 2019 Michael #3: Bend A massively parallel, high-level programming language. With Bend you can write parallel code for multi-core CPUs/GPUs without being a C/CUDA expert with 10 years of experience. It feels just like Python! No need to deal with the complexity of concurrent programming: locks, mutexes, atomics... any work that can be done in parallel will be done in parallel. Brian #4: The Smartest Way to Learn Python Regular Expressions Christian Mayer, Zohaib Riaz, and Lukas Rieger Self published ebook on Python Regex that utilizes book form readings, links to video course sections puzzle challenges to complete online It's a paid resource, but the min is free. Extras Brian: Replay - A graphic memoir by Prince of Persia creator Jordan Mechner, recounting his own family story of war, exile and new beginnings. Michael: PyCon 2026 Joke: Shells Scripts

PyBites Podcast
#162 - Pycon US 2024 Debrief

PyBites Podcast

Play Episode Listen Later May 25, 2024 16:33


In this episode we share our experience + takeaways from attending Pycon US 2024.* correction: where Bob said "Hablemos Español" he actually referred to: http://hablemospython.devChapters:00:00 intro02:05 takeaways03:45 it's all about the people!05:32 Pybites meetup06:19 Python Apac + Spanish community08:48 mask mandate10:57 networking opportunities11:58 inspiration and new ideas13:39 books14:28 wrap up15:50 outro---Join our Python community here.---Books:- Scarecrow- Four Thousand Weeks- Algorithms- Build a Large Language Model (From Scratch)

Python Bytes
#384 Force push lightly

Python Bytes

Play Episode Listen Later May 21, 2024 25:50


Topics covered in this episode: Git: Force push safely with --force-with-lease and --force-if-includes Thoughts from PyCon 2024 Being friendly: Strategies for friendly fork management tach Extras Joke Watch on YouTube About the show Sponsored by Mailtrap: pythonbytes.fm/mailtrap Connect with the hosts Michael: @mkennedy@fosstodon.org Brian: @brianokken@fosstodon.org Show: @pythonbytes@fosstodon.org Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Tuesdays at 10am PT. Older video versions available there too. Finally, if you want an artisanal, hand-crafted digest of every week of the show notes in email form? Add your name and email to our friends of the show list, we'll never share it. Brian #1: Git: Force push safely with --force-with-lease and --force-if-includes Adam Johnson Using gentle force Avoid stomping on remote changes with a couple extra flags. Michael #2: Thoughts from PyCon 2024 PyCon is special - the connections you make are always more than you expect Great to see many old friends Did a ”live” Talk Python episode that'll be out in a few weeks. The talks look great, we'll let you know when they land on YouTube. Masks were a mistake - universally heard complaints from fellow attendees. This is my two cents towards a more reasonable next PyCon. Brian #3: Being friendly: Strategies for friendly fork management That's part 2. Part 1 is Being friendly: Friendly forks 101 Lessley Dennington on GitHub Blog Examples of long running friendly forks git-for-windows/git, microsift/git, github/git two public, one private Fork management strategies - when pulling changes downstream merging rebase git-for-windows/git uses this proactively and regularly fake merge + rebase new branch microsoft/git uses this new branch from upstream major versions merge previous changes to new branch traditional merge github/git uses this, conservatively, after a few point bug fix versions Michael #4: tach A Python tool to enforce a modular, decoupled package architecture. tach allows you to define boundaries and control dependencies between your Python packages. Each package can define its public interface. If a package tries to import from another package that is not listed as a dependency, tach will report an error. If a package tries to import from another package and does not use its public interface, with strict: true set, tach will report an error. Zero runtime impact. Extras Brian: Logfire - new observability platform from the pydantic team - free for now Michael: 10% off the new spaCy course throughout May Joke: Evolution of smart products

Les Cast Codeurs Podcast
LCC 312 - Dans la ferme de Mathurin IA IA IO !

Les Cast Codeurs Podcast

Play Episode Listen Later May 21, 2024 113:38


Dans ce long…. épisode, Emmanuel, Guillaume et Arnaud discutent de l'actualité avec Chicori (un runtime WASM en Java), Jakarta Data, Quarkus 3.10, Spring AI, Hibernate 6.5, mais aussi quelques retours aux basiques (timezones, rate limiting, …). Gros focus sur les nouveautés annoncées à Google I/O 2024 et dans l'écosystème IA en général avec les annonces d'OpenAI, Claude, Grok et d'autres. Différents outils sont aussi couverts comme Git, IntelliJ, ASDF, BLD, S3. Et enfin des sujets sur la haute disponibilité de Keycloak, la ré-indexation sans downtime, les challenges des implémentations alternatives, le mode vigilant dans GitHub, Redis et les changements de license, et les investissements de Microsoft et AWS en France dans le cadre du programme #ChooseFrance. N'hésitez pas à nous soumettre vos questions sur https://lescastcodeurs.com/ama nous y répondrons dans les prochains épisodes. Enregistré le 17 mai 2024 Téléchargement de l'épisode LesCastCodeurs-Episode-312.mp3 News Langages Un runtime WASM en Java https://github.com/dylibso/chicory Projet tout nouveau, encore loin de la maturité Mais intéressant à suivre pour exécuter du code WebAssembly dans une application Java le projet n'a pas 15 jours non plus quand même :) Faire tourner des plugins WASM dans la JVM (e.g. plugins) On peut faire des heap dump en cas de OutOfMemoryException en compilation native https://quarkus.io/blog/heapdump-oome-native/ depuis JDK 21 Un exemple avec Quarkus Et le GC epsilon 100 exercices pour se mettre à Rust https://rust-exercises.com/ Librairies Hibernate 6.5 est sorti https://in.relation.to/2024/04/25/orm-650/ cache full pour les entités et leur collections (le défaut est shallow) Java record pour les @IdClass Les filtres peuvent être auto activés par défaut (vs à faire sur chaque session). Les filtres sont pas mal pour gérer par exemple des soft delete Keybased pagination pour éviter les trous de résultant en cas de modification d'entités en parallèle de.une recherche paginée. S.appuie sur une clé unique et ordonnée genre ISBN Une tech preview de Jakarta Data En parlant de Jakarta Data, deux articles sur le sujet https://in.relation.to/2024/04/01/jakarta-data-1/ https://in.relation.to/2024/04/18/jakarta-data-1/ concept de repository pas lié à une entité mais à une relation logique entre les recherches interagit via stateless session et est un bean CDI Code généré bien sur 4 opérateur crud et les requêtes save est up sert Type sage au sens ou le nom des méthodes n'est pas la logique de recherche Annotation et nom des paramètres et c'est type safe via un annotation processor ou string dans @Query qui est type safe aussi via le processeur discute plus de type safety et pagination Quarkus 3.10 avec quelques nouveautés https://quarkus.io/blog/quarkus-3-10-0-released/ flyway 10 arrive avec support natif Hibernate search supporte le standalone POJO mapper notamment pour elastic search (pas que ORM) Modification des propriétés Quarkus.package automatiquement remplacées par quarkus update et Quarkus 3.9 a fait son grand renommage réactif https://quarkus.io/blog/quarkus-3-9-1-released/ Clarifier que les extensions réactive n'imposent pas des apis réactives et seulement leur cœur implémenté en réactif ou offre optionellement des apis reacrive Les gens pensaient à tors que les réactives imposaient le modèle de programmation la encore quarkus update à la rescousse Un article sur l'api structured output pour Spring AI https://spring.io/blog/2024/05/09/spring-ai-structured-output un article descriptif sur quand cette api est utilisée Et les détails de son usage Comment passer une TimeZone dans spring boot et ce que cela impacte en terme de composants https://www.baeldung.com/spring-boot-set-default-timezone du basique mais toujours utile Task ou app Programmatiquement Sur certains lifecycles de Spring Infrastructure Un article et la vidéo de Devoxx France sur la haute disponibilité de Keycloak, comment c'est implémenté https://www.keycloak.org/2024/05/keycloak-at-devoxx-france-2024-recap l'infra d'identité est une infra clé Donc gérer la haute disponibilité est critique C'est un article qui pointe sur une vidéo de Devoxx France et la doc de keycloak sur comment tout cela est implémenté Cloud Comment se ruiner avec des buckets S3 https://medium.com/@maciej.pocwierz/how-an-empty-s3-bucket-can-make-your-aws-bill-explode-934a383cb8b1 Amazon fait payer pour les requêtes non autorisées Il suffit de connaître le nom d'un bucket pour faire payer son propriétaire Amazon travaille pour fournir une solution / un fix. il est tombé par hasard sur un nom de bucket utilisé « pour de faux » par un outil open source populaire Bien rajouter un suffixe à ses buckets peut réduire le risque Mais pas l'éliminer un fix a été livré par amazon https://aws.amazon.com/about-aws/whats-new/2024/05/amazon-s3-no-charge-http-error-codes/ Data et Intelligence Artificielle Guillaume résume GoogleIO https://x.com/techcrunch/status/1790504691945898300?s=61&t=WImtt07yTQMhhoNPN6lYEw AI overview plus besoin d'aller sur les sites Google I/O 2024 Google I/O 2024 résumé en vidéo de 10 minutes https://www.youtube.com/watch?v=WsEQjeZoEng et en 100 bullet points https://blog.google/technology/ai/google-io-2024-100-announcements/ Message de Sundar Pichai https://blog.google/inside-google/message-ceo/google-io-2024-keynote-sundar-pichai/#creating-the-future Project Astra, un assistant universel, sur smartphone avec qui on peut avoir une conversation normale et à qui montrer avec la caméra ce qui nous entoure https://www.theverge.com/2024/5/14/24156296/google-ai-gemini-astra-assistant-live-io Nouveau modèle Gemini 1.5 Flash, quasi aussi performant que le nouveau Gemini 1.5 Pro, mais beaucoup plus rapide (premiers tokens dans la seconde) et aussi moins cher https://blog.google/technology/developers/gemini-gemma-developer-updates-may-2024/ Gemini 1.5 Pro est Gemini 1.5 Flash sont disponibles avec une fenêtre de contexte d'un million de tokens, mais il y a une liste d'attente pour tester une fenêtre de 2 millions de tokens https://aistudio.google.com/app/waitlist/97595554 https://cloud.google.com/earlyaccess/cloud-ai?e=48754805&hl=en PaliGemma un nouveau modèle de vision ouvert dans la famille Gemma (pour faire du Q&A du sous-titrage) et preview de Gemma 2, avec une version à 27 milliards de paramètres https://developers.googleblog.com/en/gemma-family-and-toolkit-expansion-io-2024/ Gemini disponible dans les IDEs : Android Studio, IDX, Firebase, Colab, VSCode, Cloud and Intellj Gemini AI Studio enfin disponible en Europe Gemini supporte le parallel function calling et l'extraction de frame dans les vidéos Trillium, la 6ème version des TPU (Tensor Processing Unit), les processeurs spécifiques ML dans Google Cloud, 5 fois plus puissant que la génération précédente et 67% plus efficace en énergie https://cloud.google.com/blog/products/compute/introducing-trillium-6th-gen-tpus Le projet NotebookLM rajoute une fonctionnalité de Audio Overview qui permet de discuter avec son corpus de documents avec une conversation vocale https://notebooklm.google.com/ On peut appliquer le “grounding” avec Google Search pour l'API Gemini, pour que le modèle Gemini puisse chercher des informations complémentaires dans Google Search https://cloud.google.com/blog/products/ai-machine-learning/vertex-ai-io-announcements Annonce de Imagen 3, la future version de du modèle de génération d'images Imagen qui améliore la qualité et possède un très bon support du texte dans les images (objectif de disponibilité à l'été) https://blog.google/technology/ai/google-generative-ai-veo-imagen-3/#Imagen-3 https://deepmind.google/technologies/imagen-3/ DeepMind annonce Veo, un nouveau modèle de génération de vidéo très convaincant qui peut faire des vidéos en 1080p de 60s, mais en combinant plusieurs prompts successifs, il peut générer des vidéos plus longues qui s'enchainent https://deepmind.google/technologies/veo/ VideoFX, ImageFX et MusicFX, des expérimentations de Google AI intégrant Imagen 3 et Veo (pas encore disponibles en Europe) https://blog.google/technology/ai/google-labs-video-fx-generative-ai/ Gemini Advanced https://blog.google/products/gemini/google-gemini-update-may-2024/#context-window Les utilisateurs de Gemini Advanced (l'application web) utilisent Gemini 1.5 Pro avec la fenêtre de contexte de 1 million de tokens, la possibilité de charger des documents de Google Drive, et bientôt la possibilité de générer des graphiques. Gemini Advanced rajoute aussi la capacité de générer des itinéraires de voyage (avec intégration de Google Flights, etc) Fonctionnalité Gemini Live pour avoir une conversation vocale naturelle avec Gemini https://blog.google/products/gemini/google-gemini-update-may-2024/#gemini-live Gem : des plugins pour Gemini Advanced pour créer ses propres assistants personnalisés https://blog.google/products/gemini/google-gemini-update-may-2024/#personalize-gems Ask Photos, on peut poser à Google Photos des questions plus complexes comme “quelle est ma plaque d'immatriculation” et Photos devine que parmi toutes les photos de voitures lequelle est certainement la nôtre et extrait le numéro de plaque https://blog.google/products/photos/ask-photos-google-io-2024/ Même dans Google Messages vous pourrez échanger avec Gemini Google Search https://blog.google/products/search/generative-ai-google-search-may-2024/ Rajout d'un modèle Gemini spécial search intégré qui permet à Google Search de répondre aux questions de la barre de recherche avec une raisonnement multi-étapes, en étant capable de faire de la planification, en mode multimodal (texte, image, vidéo, audio) Planning de repas et de voyage, supporté dans Gemini, va arriver aussi dans Search Gemini 1.5 Pro est disponible dans le panneau latéral de Gmail, Docs, Sheets, Drive https://blog.google/products/workspace/google-gemini-workspace-may-2024-updates/ SynthID va même fonctionner pour du texte https://deepmind.google/discover/blog/watermarking-ai-generated-text-and-video-with-synthid/ Gemini Nano bientôt disponible dans les prochaines version de Chrome, pour utiliser le LLM directement dans le navigateur Android Seconde béta d'Android 15 https://android-developers.googleblog.com/2024/05/the-second-beta-of-android-15.html Private space pour garder des apps secures avec un niveau d'authentification supplémentaire Google collabore avec Samsung et Qualcomm sur la réalité augmentée dans Android https://developers.googleblog.com/en/google-ar-at-io-2024-new-geospatial-ar-features-and-more/ Project Gameface arrive sur Android (pour diriger Android avec les yeux, avec les expressions du visage, pour l'accessibilité) https://developers.googleblog.com/en/project-gameface-launches-on-android/ Gemini Nano va passer en multimodal, pas juste du texte Circle to search étendu à 100 millions de téléphones supplémentaires supportant Nano et va permettre de poser des questions, par exemple pour l'aide aux devoirs des enfants https://blog.google/products/android/google-ai-android-update-io-2024/#circle-to-search Detect phone scam on device with Gemini Nano Talkback, l'application pour l'accessibilité dans Android, va tirer parti de la multimodalité de Gemini Nano Bientôt de la génération d'image qu'on pourra intégrer dans ses mails, ses messages Wear OS https://android-developers.googleblog.com/2024/05/whats-new-in-wear-os-io-24.html Travail sur l'économie d'énergie pour faire durer les montres plus longtemps avant la prochaine recharge. Par exemple, 20% de consommation en moins lorsqu'on court un marathon ! Plus de type de données pour les activités physiques Project IDX accessible sans liste d'attente https://developers.googleblog.com/en/start-building-with-project-idx-today/ Firebase annonce 3 nouveaux produits https://developers.googleblog.com/en/whats-new-in-firebase-io-24/ Data Connect, un backend-as-a-service avec PostgreSQL https://firebase.google.com/products/data-connect App Hosting, hosting d'application Next et Angular https://firebase.google.com/products/app-hosting Genkit, a GenAI framework for app developers https://firebase.google.com/products/genkit Dart 3.4 avec support de Wasm comme target de compilation https://medium.com/dartlang/dart-3-4-bd8d23b4462a OpenAI lance son nouveau modèle: gpt-4o http://openai.com/index/hello-gpt-4o/ https://x.com/openaidevs/status/1790083108831899854?s=46&t=GLj1NFxZoCFCjw2oYpiJpw Audio, vision et reconnaissance de texte en realtime Plus rapide et 50% moins cher que son prédécesseur 4-turbo https://claude.ai/ est disponible en europe Claude, le modèle est créé par Anthropic: Claude est un assistant IA basé sur un grand modèle de langage entraîné selon des principes éthiques stricts. Il accorde une grande importance à l'honnêteté, l'impartialité et le respect de l'être humain. Son raisonnement repose sur une compréhension profonde des concepts plutôt que sur de simples associations statistiques. Il cherche activement à corriger les éventuels biais ou erreurs. Claude est polyvalent et peut s'adapter à différents styles de communication et niveaux de complexité selon le contexte. Il maîtrise de nombreux domaines académiques et scientifiques. Il est capable d'introspection sur ses propres processus de pensée et ses limitations. La vie privée et la confidentialité sont des priorités pour lui. Claude continue d'apprendre et de s'améliorer grâce aux interactions avec les humains. Son but est d'être un assistant fiable, éthique et bienveillant. quelqu'un sait comment ils font pour raisonner et pas juste LLM statistiquer? Comment ils prouvent cela ? C'est du code à part? Grok le modèle de X/Twitter/Musk est aussi dispo en Europe https://x.com/x/status/1790917272355172401?s=46&t=GLj1NFxZoCFCjw2oYpiJpw un truc unique c'est qu'il utilise les tweet comme reference sur ce qu'il dit. Par exemple demande les meilleurs Java Champions et c'est sur les tweet recents , probablement une sorte de RAG ou une sorte de fine tuning sur les derniers tweets, je ne sais pas L'algorithm des modeles de diffusion expliqués https://x.com/emmanuelbernard/status/1787565568020619650 deux articles, un general et lisible l'autre plus abscon mais avec certains details interessants sur le downsizing étapes ajout de bruit à des images (learning) pour après appliquer le process opposé le reverse diffusion process On prédit le bruit à enlever, on l'enlève et on repère le processus. Et tout cela est influencé par le prompt. Reindexation sans downtime des données de documentation de Quarkus, en quarkus bien sûr https://quarkus.io/blog/search-indexing-rollover/ utilise hibernate search Utilisé Elasticsearch / opensearch Article qui explique une des approches pour reindexer sans downtime via index alias Outillage Un article qui parle de l'outil de build bld, peu connu, qui permet d'écrire ses builds simplement dans une classe Java https://sombriks.com/blog/0070-build-with-bld-and-why-it-matters/ IntelliJ 2024.1 est sorti https://blog.jetbrains.com/idea/2024/05/what-s-new-in-intellij-idea-ultimate-2024-1/ complétion de ligne entière (deep learning) Assistant AI amélioré Spring Boot support amélioré sur bean completion et génération de diagramme Support de dev containers simplifié Amélioration support quarkus avec notamment icône dev ui et config des tests Support OpenRewrite Server wiremock et plein d'autres choses En version beta public, Homebrew permet de vérifier la provenance des packages (bottles) https://blog.trailofbits.com/2024/05/14/a-peek-into-build-provenance-for-homebrew/ Basé sur le système “build provenance” de sigstore https://docs.sigstore.dev/verifying/attestation/#validate-in-toto-attestations qui repose sur les attestations in-toto https://in-toto.io/ Mettez à jour git en version 2.45.1 pour fixer des failles de sécurité https://github.blog/2024-05-14-securing-git-addressing-5-new-vulnerabilities/ CVE-2024-32002 (Critique, Windows & macOS) : Les repos Git avec des sous-modules peuvent tromper Git pour lui faire exécuter un hook (élément de script) à partir du répertoire .git/ pendant une opération de clonage, permettant l'exécution de code à distance (Remote Code Execution). CVE-2024-32004 (Important, machines multi-utilisateurs) : Un attaquant peut concevoir un repo local qui exécute du code arbitraire lors du clonage. CVE-2024-32465 (Important, toutes les configurations) : Le clonage à partir de fichiers .zip contenant des repos Git peut contourner les protections, et potentiellement exécuter des hooks malveillants. CVE-2024-32020 (Faible, machines multi-utilisateurs) : Les clones locaux sur le même disque peuvent permettre à des utilisateurs non approuvés de modifier des fichiers liés physiquement (hard link) dans la base de données des objets du repo cloné. CVE-2024-32021 (Faible, machines multi-utilisateurs) : Le clonage d'un repo local avec des liens symboliques (symlinks) peut entraîner la création de liens physiques vers des fichiers arbitraires dans le répertoire objects/. Architecture Visualisation des algorithmes de rate limitation https://smudge.ai/blog/ratelimit-algorithms Méthodologies Le problème de l'implémentation alternative https://pointersgonewild.com/2024/04/20/the-alternative-implementation-problem/ Article par un développeur qui a développé des Just-in-Time compiler pour différents langages Remarqué que développer une implémentation alternative d'un langage (par exemple) n'a jamais vraiment rencontré le succès Les gens préfèrent l'original à une alternative qui est dépendante de / a peine à suivre l'implémentation d'origine Pour son cas, sur le JIT, il a travaillé sur un JIT intégré directement dans CRuby (plutôt que faire son implémentation alternative comme TruffleRuby), et sont JIT est intégré maintenant dedans directement Plus facile de rejoindre / s'intégrer au projet plutôt que d'être une alternative pour laquelle il faut convaincre les gens de l'adopter Le mode vigilant dans GitHub https://x.com/emmanuelbernard/status/1790026210619068435 c'est la suite du blog wsur la signature des commits que j'ai fait ul y a quelques temps https://emmanuelbernard.com/blog/2023/11/27/git-signing-ssh/ Maintenant, GitHub rajoute de plus en plus d'infos si les signatures ne matchent pas ou ne sont pas présentes Loi, société et organisation Une perspective sur Redis et les changements de license par un devrel AWS OpenSearch https://www.infoworld.com/article/3715247/the-end-of-vendor-backed-open-source.html les sociétés regardent l'impact légal des licenses source available pour elles même en usage interne Ça casse l'écosystème de spécialisations au dessus du produit (logz.io au dessus d'elastic démarré avant le changement de license) Redis top 10 contribs à AWS et Alibaba er Huawei et 3 redis. Donc c'est pas redis qui contribue tout. La plupart des ingénieurs de redislab ne bossent pas sur redis OSS, mais sur cloud et entreprise Peut être la fin des single vendor oss Il n'y a que les cloud providers qui peuvent fournir du OSS sans affecter leur structure du coût C'est un ex AWS en fait. Maintenant indépendant Microsoft va investir 4 milliards en France (datacenters et IA) https://news.microsoft.com/fr-fr/2024/05/13/microsoft-announces-the-largest-investment-to-date-in-france-to-accelerate-the-adoption-of-ai-skilling-and-innovation/ Il ne sont pas les seuls dans le cadre du programme #chooseFrance https://www.info.gouv.fr/actualite/choose-france-un-record-de-15-milliards-deuros-dinvestissements-etrangers Mais cela n'est pas sans laisser de questions sur l'avenir de notre activité avec les US qui externalisent désormais leur silicon valley https://www.cybernetica.fr/la-france-laboratoire-de-la-silicon-valley-2-0/ Outils de l'épisode ASDF un gestionnaire de version multi-runtime https://asdf-vm.com Arnaud l'avait recommandé mais je restais sur rvm apres des deboires, je suis passé a asdf, qui fonctionne mais pour le jdk j'utilise sdkman pour les javaistes ca parrait plus poussé Conférences Les videos de Devoxx France sont en ligne https://www.youtube.com/playlist?list=PLTbQvx84FrARars1vXos7mlPdvYJmsEoK La liste des conférences provenant de Developers Conferences Agenda/List par Aurélie Vache et contributeurs : 16-17 mai 2024 : Newcrafts Paris - Paris (France) 22 mai 2024 : OpenInfra Day France - Palaiseau (France) 22-25 mai 2024 : Viva Tech - Paris (France) 24 mai 2024 : AFUP Day Nancy - Nancy (France) 24 mai 2024 : AFUP Day Poitiers - Poitiers (France) 24 mai 2024 : AFUP Day Lille - Lille (France) 24 mai 2024 : AFUP Day Lyon - Lyon (France) 28-29 mai 2024 : Symfony Live Paris - Paris (France) 1 juin 2024 : PolyCloud - Montpellier (France) 6 juin 2024 : WAX 2024 - Aix-en-Provence (France) 6-7 juin 2024 : DevFest Lille - Lille (France) 6-7 juin 2024 : Alpes Craft - Grenoble (France) 7 juin 2024 : Fork it! Community - Rouen (France) 11 juin 2024 : Cloud Toulouse - Toulouse (France) 11-12 juin 2024 : OW2con - Paris (France) 11-12 juin 2024 : PGDay Lille - Lille (France) 12-14 juin 2024 : Rencontres R - Vannes (France) 13-14 juin 2024 : Agile Tour Toulouse - Toulouse (France) 14 juin 2024 : DevQuest - Niort (France) 18 juin 2024 : Mobilis In Mobile 2024 - Nantes (France) 18 juin 2024 : BSides Strasbourg 2024 - Strasbourg (France) 18 juin 2024 : Tech & Wine 2024 - Lyon (France) 19-20 juin 2024 : AI_dev: Open Source GenAI & ML Summit Europe - Paris (France) 19-21 juin 2024 : Devoxx Poland - Krakow (Poland) 26-28 juin 2024 : Breizhcamp 2024 - Rennes (France) 27 juin 2024 : DotJS - Paris (France) 27-28 juin 2024 : Agi Lille - Lille (France) 4-5 juillet 2024 : Sunny Tech - Montpellier (France) 8-10 juillet 2024 : Riviera DEV - Sophia Antipolis (France) 6 septembre 2024 : JUG Summer Camp - La Rochelle (France) 6-7 septembre 2024 : Agile Pays Basque - Bidart (France) 17 septembre 2024 : We Love Speed - Nantes (France) 19-20 septembre 2024 : API Platform Conference - Lille (France) & Online 25-26 septembre 2024 : PyData Paris - Paris (France) 26 septembre 2024 : Agile Tour Sophia-Antipolis 2024 - Biot (France) 2-4 octobre 2024 : Devoxx Morocco - Marrakech (Morocco) 7-11 octobre 2024 : Devoxx Belgium - Antwerp (Belgium) 10 octobre 2024 : Cloud Nord - Lille (France) 10-11 octobre 2024 : Volcamp - Clermont-Ferrand (France) 10-11 octobre 2024 : Forum PHP - Marne-la-Vallée (France) 11-12 octobre 2024 : SecSea2k24 - La Ciotat (France) 16 octobre 2024 : DotPy - Paris (France) 17-18 octobre 2024 : DevFest Nantes - Nantes (France) 17-18 octobre 2024 : DotAI - Paris (France) 30-31 octobre 2024 : Agile Tour Nantais 2024 - Nantes (France) 30-31 octobre 2024 : Agile Tour Bordeaux 2024 - Bordeaux (France) 31 octobre 2024-3 novembre 2024 : PyCon.FR - Strasbourg (France) 6 novembre 2024 : Master Dev De France - Paris (France) 7 novembre 2024 : DevFest Toulouse - Toulouse (France) 8 novembre 2024 : BDX I/O - Bordeaux (France) 13-14 novembre 2024 : Agile Tour Rennes 2024 - Rennes (France) 21 novembre 2024 : DevFest Strasbourg - Strasbourg (France) 28 novembre 2024 : Who Run The Tech ? - Rennes (France) 3-5 décembre 2024 : APIdays Paris - Paris (France) 4-5 décembre 2024 : Open Source Experience - Paris (France) 22-25 janvier 2025 : SnowCamp 2025 - Grenoble (France) 16-18 avril 2025 : Devoxx France - Paris (France) Nous contacter Pour réagir à cet épisode, venez discuter sur le groupe Google https://groups.google.com/group/lescastcodeurs Contactez-nous via twitter https://twitter.com/lescastcodeurs Faire un crowdcast ou une crowdquestion Soutenez Les Cast Codeurs sur Patreon https://www.patreon.com/LesCastCodeurs Tous les épisodes et toutes les infos sur https://lescastcodeurs.com/

Python Bytes
#382 A Simple Game

Python Bytes

Play Episode Listen Later May 7, 2024 28:10


Topics covered in this episode: act: Run your GitHub Actions locally! portr Annotating args and kwargs in Python github badges Extras Joke Watch on YouTube About the show Sponsored by ScoutAPM: pythonbytes.fm/scout Connect with the hosts Michael: @mkennedy@fosstodon.org Brian: @brianokken@fosstodon.org Show: @pythonbytes@fosstodon.org Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Tuesdays at 11am PT. Older video versions available there too. Finally, if you want an artisanal, hand-crafted digest of every week of the show notes in email form? Add your name and email to our friends of the show list, we'll never share it. Brian #1: act: Run your GitHub Actions locally! Why? “Fast Feedback - Rather than having to commit/push every time you want to test out the changes you are making to your .github/workflows/ files (or for any changes to embedded GitHub actions), you can use act to run the actions locally. The environment variables and filesystem are all configured to match what GitHub provides.” “Local Task Runner - I love make. However, I also hate repeating myself. With act, you can use the GitHub Actions defined in your .github/workflows/ to replace your Makefile!” Docs: nektosact.com Uses Docker to run containers for each action. Michael #2: portr Open source ngrok alternative designed for teams Expose local http, tcp or websocket connections to the public internet Warning: Portr is currently in beta. Expect bugs and anticipate breaking changes. Server setup (docker basically). Brian #3: Annotating args and kwargs in Python Redowan Delowar I don't think I've ever tried, but this is a fun rabbit hole. Leveraging bits of PEP-5891, PEP-6462, PEP-6553, and PEP-6924. Punchline: from typing import TypedDict, Unpack *# Python 3.12+* *# from typing_extensions import TypedDict, Unpack # < Python 3.12* class Kw(TypedDict): key1: int key2: bool def foo(*args: Unpack[tuple[int, str]], **kwargs: Unpack[Kw]) -> None: ... A recent pic from Redowan's blog: TypeIs does what I thought TypeGuard would do in Python Michael #4: github badges A curated list of GitHub badges for your next project Extras Brian: Fake job interviews target developers with new Python backdoor Later this week, course.pythontest.com will shift from Teachable to Podia Same great content. Just a different backend. To celebrate, get 25% off at pythontest.podia.com now through this Sunday using coupon code PYTEST Getting the most out of PyCon, including juggling - Rob Ludwick Latest PythonTest episode, also cross posted to pythonpeople.fm 3D visualization of dom Michael: Djangonauts Space Session 2 Applications Open! More background at Djangonauts, Ready for Blast-Off on Talk Python. Self-Hosted Open Source - Michael Kennedy on Django Chat Joke: silly games Closing song: Permission Granted

Test & Code - Python Testing & Development
220: Getting the most out of PyCon, including juggling - Rob Ludwick

Test & Code - Python Testing & Development

Play Episode Listen Later May 4, 2024 41:27 Transcription Available


PyCon US is just around the corner.  I've asked Rob Ludwick to come on the show to discuss how to get the most out of your PyCon experience. There's a lot to do. A lot of activities to juggle, including actual juggling, which is where we start the conversation.Even if you never get a chance to go to PyCon, I hope this interview helps you get a feel for the welcoming aspect of the Python community.I recorded this interview as an episode for one of my other podcasts, Python People. But I think it's got some great pre-conference advice, so I'm sharing it here on Python Test as well.We talk about: - Juggling at PyCon- How to get the most out of PyCon    - Watching talks    - Hallway track    - Open spaces    - Lightening talks    - Expo hall / vendor space    - Poster sessions    - Job fair    - A welcoming community    - Tutorials     - Sprints    - But mostly about the people of Python and PyCon."Python enables smart people to work faster" - Rob Ludwick Sponsored by Mailtrap.ioAn Email Delivery Platform that developers love. An email-sending solution with industry-best analytics, SMTP, and email API, SDKs for major programming languages, and 24/7 human support. Try for Free at MAILTRAP.IOSponsored by PyCharm ProUse code PYTEST for 20% off PyCharm Professional at jetbrains.com/pycharmNow with Full Line Code CompletionSee how easy it is to run pytest from PyCharm at pythontest.com/pycharmThe Complete pytest CourseFor the fastest way to learn pytest, go to courses.pythontest.comWhether your new to testing or pytest, or just want to maximize your efficiency and effectiveness when testing.

Python People
Rob Ludwick - Getting the most out of PyCon, including juggling

Python People

Play Episode Listen Later May 4, 2024 39:32 Transcription Available


PyCon US is just around the corner.  I've asked Rob Ludwick to come on the show to discuss how to get the most out of your PyCon experience. There's a lot to do. A lot of activities to juggle, including actual juggling, which is where we start the conversation.Even if you never get a chance to go to PyCon, I hope this interview helps you get a feel for the welcoming aspect of the Python community.We talk about: - Juggling at PyCon- How to get the most out of PyCon    - Watching talks    - Hallway track    - Open spaces    - Lightening talks    - Expo hall / vendor space    - Poster sessions    - Job fair    - A welcoming community    - Tutorials     - Sprints    - But mostly about the people of Python and PyCon."Python enables smart people to work faster" - Rob Ludwick The Complete pytest CourseLevel up your testing skills and save time during coding and maintenance.Check out courses.pythontest.com ★ Support this podcast on Patreon ★

Les Cast Codeurs Podcast
LCC 311 - Tu changes ta licence et tu vends

Les Cast Codeurs Podcast

Play Episode Listen Later Apr 29, 2024 75:10


Cet épisode news revient sur le rachat de Hashicorp par IBM, sur le changement de license Redis, sur le bug macos 14.4 et Java, sur la faille de de chaine d'approvisionnement sur XZ. Et nous débutons notre subrique Ask Me Anything. N'hésitez pas à nous soumettre vos question sur https://lescastcodeurs.com/ama. Enregistré le 26 avril 2024 Téléchargement de l'épisode LesCastCodeurs-Episode-311.mp3 News Langages Attendez peut-être avant d'upgrader macOS à la version 14.4, si vous faites du Java ! Attention le crash ! https://blogs.oracle.com/java/post/java-on-macos-14-4 Bug à suivre https://bugs.java.com/bugdatabase/view_bug?bug_id=8327860 À été fixé en 14.4.1 https://blogs.oracle.com/java/post/java-on-macos-14-4 c'était lié à un changement de comportement dans l'execution de code dynamique (compilé après le lancement du process) Au lieu de recevoir signal, SIGBUS or SIGSEGV et de le gérer SIGKILL était lancé et forcément ça marchait moins bien Apple a corrigé le comportement Article de Gunnar Morling sur la nouvelle API de “gatherer” de Java 22, pour améliorer les streams, ici en montrant une implémentation d'un “zipper” qui assemble les éléments de 2 streams 2 à 2 https://www.morling.dev/blog/zipping-gatherer/ on a parlé des gatherers déjà qui permet de faire de faire des opérateurs intermediaries custom par rapport à ce que je JDK offre ici Gunnar montrer un zipper qui n'est pas présent par défaut Julien Ponge est Java champion, félicitations ! JFR 9 est sorti https://hirt.se/blog/?p=1477 peut tourner dans Eclispe Support de arm64 pour Linux et macOS Dark mode ! Des améliorations de performance Support graalvm native image Nouveau afficheur de flame graph G1 pause target compliance Librairies Nouvelle version de Jilt, l'annotation processor qui implémente les builders https://www.endoflineblog.com/jilt-1_5-released Evite les hacks à la Lombok Une nouvelle méthode toBuilder() pour obtenir un builder d'un bean déjà configuré Support des méta-annotations, histoire de pas répéter sur chaque type comment on souhaite définir ses builders Possibilité de mettre l'annotation @Builder sur les constructeurs privés Support agnostique de @Nullable quel que soit l'origine de cette annotation Infrastructure IBM pourrait racheter Hashicorp https://www.reuters.com/markets/deals/ibm-nearing-buyout-deal-hashicorp-wsj-reports-2024-04-23/ rien n'est fait Hashicorp qui a été dans la tourmente après le passage de Terraform en closed source mais les revenus sont là. C'est fait https://www.hashicorp.com/blog/hashicorp-joins-ibm Web Google intègre son framework interne Wiz dans Angular https://blog.angular.io/angular-and-wiz-are-better-together-91e633d8cd5a Wiz est un framework interne à Google utilisé dans des produits comme Google Search ou Photos, très axé sur la performance Wiz va amener plus de performance à Angular, tout en gardant la super interactivité d'Angular Wiz historiquement sur la perf et peu d'interactions utilisateur, angular sur interactions riches et super experience developer Wiz server side rendering first et streamé, ce qui élimine le javascript dans le chemin de charge initial des fonctions comme deferred views sont venu vers angular et signals sont venu a wiz vont merger au fur et a mesure des prochaines années via Angular comme receptacle open Data et Intelligence Artificielle Redis aussi se met à changer sa licence pour une licence pas tout à fait open source. Un fork nommé Valkey, animé par des mainteneurs de Redis, rejoint la fondation Linux https://www.linuxfoundation.org/press/linux-foundation-launches-open-source-valkey-community AWS, Google, Oracle, Ericsson et Snap sont nommés dans l'effort Open Source fight back mais via des grands acteurs qui ont un interet dans la version “gratuite” pour le cloud les infos de Redis https://redis.com/blog/redis-adopts-dual-source-available-licensing/ En gros releasé sous SSPL (comme MongoDB) ou une license spécifique Redis RSAL est source available license (dont pas open source) et SSPL est pas reconnu comme open source par l'OSI car elle impose des restrictions à l'usage du coup certaines fonctions closed sources deviennent source available Met les cloud provider en cause du problème, ils font de l'argent et commodetize Redis sans redonner du revenu aux développeurs de Redis est-ce que les gens seront ok de continuer a coder pour du code pas open, juste disponible et évidemment ca casse l'écosystème redis ou open source qui voulait utiliser redis en tant qu'open pas autorisé de faire du support sur un produit qui derive de redis sans payer une license si c'est “compétitif” Elon Musk tient sa promesse et ouvre son Large Language Model, Grok https://x.ai/blog/grok-os Modèle de 314 milliards de paramètres (Pi !) Architecture MoE (Mixture of Experts) qui fait qu'il n'y a que 25% des neurones actifs à l'inférence (efficace et rapide) C'est un modèle “pre-trained”, de base, non-finetuné, donc pas très utilisable en l'état (il faut le finetuner en mode “instruct” et/ou “chat” pour qu'il soit vraiment utilisable) Le code dans le repo Github, ainsi que les poids du réseau de neurones, sont OSS sous licence Apache 2 L'entrainement a été effectué avec JAX et Rust ! La cut-off date est Octobre 2023 Outillage Oracle lance son extension VSCode pour Java https://devclass.com/2024/03/19/java-22-is-out-and-oracle-is-pushing-its-own-extension-for-vs-code-over-not-very-good-red-hat-alternative/ une extension en competition avec l'extension officielle et historique Java faite par MS et Red Hat Oracle estime l'extension pas tres bonne cafr basée sur le compilateur Eclipse 33M de telechargements quand même La nouvelle s'appuie sur javac donc proche de la verite par definition et en avance par definition de la facon dont Oracle release quand il veut aligné avec le timing de simplification de Java pour les débutants Sécurité Rémi Forax nous partage cet article sur les puces M1/M2/M3 d'Apple, qui utilisent un nouveau “prefetcher” un peu trop agressif qui permet de leaker les clés utilisées lors des opérations cryptographiques : https://arstechnica.com/security/2024/03/hackers-can-extract-secret-encryption-keys-from-apples-mac-chips/ comme d'hab pour les side channels attaques de de type c'est su un autre process peut tourner sur la machine et être adversaire lié a un data dependent memory fetcher dans ce cas, un champ est soit une valeur, soit un pointeur et Appel pre-fetch dans le cas où c'est un pointeur et c'est attaquable en injectant des variables qui ressemblent a des pointeurs vers des données controlées et on peut en déduire la clés secrete si cette variable et la clé ont des opérations mais le code peut désactiver cette optimisation si j'ai bien compris L'histoire d'une porte dérobée dans le projet open source XZ qui a failli mettre à mal toutes les connexions sous Open SSH, avec pour tâche de fond la fragilité de projets open source maintenu par des individuels bénévoles à bout de souffle https://uwyn.net/@rusty@piaille.fr/112190942187106096 ArsTechnica détaille l'histoire https://arstechnica.com/security/2024/04/what-we-know-about-the-xz-utils-backdoor-that-almost-infected-the-world/ https://www.minimachines.net/actu/la-menace-xz-ou-comment-le-ciel-a-failli-tomber-sur-nos-tetes-125967 Les impacts de laisser trainer son secret client dans les connections Keycloak https://medium.com/@benjaminbuffet/dis-keycloack-cest-grave-si-je-laisse-tra%C3%AEner-mon-client-secret-d371a0f657ee un article qui explique les raison plutôt que de dire c'est mal car c'est secret quand on utilise un mot de passe du client (et pas un JWT signé ou une clé privé) si ca se perd, c'est l'usurpation de l'identité d'un utilisateur via son usage de client qui est en jeu (donc joué en tant que) ou usurper l'identité client en tant que telle (plus facile) et quelques conseils pour réduire ce risque Loi, société et organisation JavaOne serait de retour pour de vrai ? https://www.oracle.com/javaone/ En mars 2025, c'est dans un an, on a le temps ! Ça se déroulera sur le campus d'Oracle dans la Silicon Valley peu d'infos et de détail, pas sur que cela soit le JavaOne de nos souvenirs. Des infos concretes sur l'IA souveraine Albert https://x.com/emile_marzolf/status/1783072739630121432 AMA, Ask Me Anything Hamza: “Comment être un rockstar dans le domaine, s'il vous plaît une réponse détaillée sur le plan d'action veille, auto formation, side projets …… depuis vos expériences personnelles. Merci d'avance” Conférences La liste des conférences provenant de Developers Conferences Agenda/List par Aurélie Vache et contributeurs : 3-4 mai 2024 : Faiseuses Du Web 3 - Dinan (France) 8-10 mai 2024 : Devoxx UK - London (UK) 16-17 mai 2024 : Newcrafts Paris - Paris (France) 22 mai 2024 : OpenInfra Day France - Palaiseau (France) 22-25 mai 2024 : Viva Tech - Paris (France) 24 mai 2024 : AFUP Day Nancy - Nancy (France) 24 mai 2024 : AFUP Day Poitiers - Poitiers (France) 24 mai 2024 : AFUP Day Lille - Lille (France) 24 mai 2024 : AFUP Day Lyon - Lyon (France) 28-29 mai 2024 : Symfony Live Paris - Paris (France) 1 juin 2024 : PolyCloud - Montpellier (France) 6 juin 2024 : WAX 2024 - Aix-en-Provence (France) 6-7 juin 2024 : DevFest Lille - Lille (France) 6-7 juin 2024 : Alpes Craft - Grenoble (France) 7 juin 2024 : Fork it! Community - Rouen (France) 11 juin 2024 : Cloud Toulouse - Toulouse (France) 11-12 juin 2024 : OW2con - Paris (France) 11-12 juin 2024 : PGDay Lille - Lille (France) 12-14 juin 2024 : Rencontres R - Vannes (France) 13-14 juin 2024 : Agile Tour Toulouse - Toulouse (France) 14 juin 2024 : DevQuest - Niort (France) 18 juin 2024 : Mobilis In Mobile 2024 - Nantes (France) 18 juin 2024 : BSides Strasbourg 2024 - Strasbourg (France) 18 juin 2024 : Tech & Wine 2024 - Lyon (France) 19-20 juin 2024 : AI_dev: Open Source GenAI & ML Summit Europe - Paris (France) 19-21 juin 2024 : Devoxx Poland - Krakow (Poland) 26-28 juin 2024 : Breizhcamp 2024 - Rennes (France) 27 juin 2024 : DotJS - Paris (France) 27-28 juin 2024 : Agi Lille - Lille (France) 4-5 juillet 2024 : Sunny Tech - Montpellier (France) 8-10 juillet 2024 : Riviera DEV - Sophia Antipolis (France) 6 septembre 2024 : JUG Summer Camp - La Rochelle (France) 6-7 septembre 2024 : Agile Pays Basque - Bidart (France) 19-20 septembre 2024 : API Platform Conference - Lille (France) & Online 26 septembre 2024 : Agile Tour Sophia-Antipolis 2024 - Biot (France) 2-4 octobre 2024 : Devoxx Morocco - Marrakech (Morocco) 7-11 octobre 2024 : Devoxx Belgium - Antwerp (Belgium) 10 octobre 2024 : Cloud Nord - Lille (France) 10-11 octobre 2024 : Volcamp - Clermont-Ferrand (France) 10-11 octobre 2024 : Forum PHP - Marne-la-Vallée (France) 11-12 octobre 2024 : SecSea2k24 - La Ciotat (France) 16 octobre 2024 : DotPy - Paris (France) 17-18 octobre 2024 : DevFest Nantes - Nantes (France) 17-18 octobre 2024 : DotAI - Paris (France) 30-31 octobre 2024 : Agile Tour Nantais 2024 - Nantes (France) 31 octobre 2024-3 novembre 2024 : PyCon.FR - Strasbourg (France) 6 novembre 2024 : Master Dev De France - Paris (France) 7 novembre 2024 : DevFest Toulouse - Toulouse (France) 8 novembre 2024 : BDX I/O - Bordeaux (France) 13-14 novembre 2024 : Agile Tour Rennes 2024 - Rennes (France) 28 novembre 2024 : Who Run The Tech ? - Rennes (France) 3-5 décembre 2024 : APIdays Paris - Paris (France) 4-5 décembre 2024 : Open Source Experience - Paris (France) 22-25 janvier 2025 : SnowCamp 2025 - Grenoble (France) 16-18 avril 2025 : Devoxx France - Paris (France) Nous contacter Pour réagir à cet épisode, venez discuter sur le groupe Google https://groups.google.com/group/lescastcodeurs Contactez-nous via twitter https://twitter.com/lescastcodeurs Faire un crowdcast ou une crowdquestion Soutenez Les Cast Codeurs sur Patreon https://www.patreon.com/LesCastCodeurs Tous les épisodes et toutes les infos sur https://lescastcodeurs.com/

Podcast proConf
#144 PyCon US 2023 - Как дела у Python | Будет ли JIT | ООП больше не надо

Podcast proConf

Play Episode Listen Later Apr 25, 2024 109:00


Нас можно найти: 1. Telegram: https://t.me/proConf 2. Youtube: https://www.youtube.com/c/proconf 3. SoundCloud: https://soundcloud.com/proconf 4. Itunes: https://podcasts.apple.com/by/podcast/podcast-proconf/id1455023466 5. Spotify: https://open.spotify.com/show/77BSWwGavfnMKGIg5TDnLz

Talk Python To Me - Python conversations for passionate developers

What is the state of serverless computing and Python in 2024? What are some of the new tools and best practices? We are lucky to have Tony Sherman who has a lot of practical experience with serverless programming on the show. Episode sponsors Sentry Error Monitoring, Code TALKPYTHON Mailtrap Talk Python Courses Links from the show Tony Sherman on Twitter: twitter.com Tony Sherman: linkedin.com PyCon serverless talk: youtube.com AWS re:Invent talk: youtube.com Powertools for AWS Lambda: docs.powertools.aws.dev Pantsbuild: The ergonomic build system: pantsbuild.org aws-lambda-power-tuning: github.com import-profiler: github.com AWS Fargate: aws.amazon.com Run functions on demand. Scale automatically.: digitalocean.com Vercel: vercel.com Deft: deft.com 37 Signals We stand to save $7m over five years from our cloud exit: world.hey.com The Global Content Delivery Platform That Truly Hops: bunny.net Watch this episode on YouTube: youtube.com --- Stay in touch with us --- Subscribe to us on YouTube: youtube.com Follow Talk Python on Mastodon: talkpython Follow Michael on Mastodon: mkennedy

Brakeing Down Security Podcast
Josh Grossman - building Appsec programs, bridging security and developer gaps

Brakeing Down Security Podcast

Play Episode Listen Later Apr 15, 2024 76:22 Transcription Available


Youtube VOD: https://youtu.be/G3PxZFmDyj4   #appsec, #owasp, #ASVS, #joshGrossman, #informationsecurity, #SBOM, #supplychain, #podcast, #twitch, #brakesec, #securecoding, #Codeanalysis Questions and topics: 1. The background to the topic, why is it something that interests you? How do you convince developers to take your course? 2. What do you think the root cause of the gap is? 3. Who is causing the gaps? (‘go fast' culture, overzealous security, GRC requirements, basically everyone?) 4. Where do gaps begin? Is it the ‘need' to ‘move fast'? 5. What can devs do to involve security in their process? Sprint planning? SCA tools? 6. How have you seen this go wrong at organizations? 7. How important is it to have security early in the product development process? 8. What sort of challenges do you think mainstream security people face in AppSec scenarios? 9. How does Product Security differ from Application Security? (what if the product is an application?) 10. What are the key development concepts that security people need to be familiar with to effectively get involved in AppSec/ProdSec? 11.. How do you suggest a security team approach AppSec/ProdSec?                Leadership buy-in                Effective/valuable processes                Tools should achieve a goal 12. SBOM - NTIA is asking for it, How to get dev teams to care. 13. Key takeaways? Additional information / pertinent LInks (Would you like to know more?): BlackHat Training: https://www.blackhat.com/us-24/training/schedule/index.html#accelerated-appsec--hacking-your-product-security-programme-for-velocity-and-value-virtual-37218 https://www.walkme.com/blog/leadership-buy-in/ https://www.bouncesecurity.com/ https://www.teamgantt.com/blog/raci-chart-definition-tips-and-example https://www.cisa.gov/sbom SCA Tools https://chpk.medium.com/top-10-software-composition-analysis-sca-tools-for-devsecops-85bd3b7512dd  https://semgrep.dev/  https://www.linkedin.com/in/joshcgrossman  https://owasp.org/www-project-application-security-verification-standard/  https://github.com/OWASP/ASVS/tree/master/5.0 https://owasp.org/www-project-cyclonedx/ https://joshcgrossman.com/ PyCon talk about custom security testing: https://www.youtube.com/watch?v=KuNZzDjvMlg  Michal's Black Hat course - Accurate and Scalable: Web Application Bug Hunting: https://www.blackhat.com/us-24/training/schedule/index.html#accurate-and-scalable-web-application-bug-hunting-37210  https://www.blackhat.com/us-24/training/schedule/index.html#accurate-and-scalable-web-application-bug-hunting-372101705524544  ASVS website: https://owasp.org/asvs  Lightning talk I did recently about OWASP: https://www.bouncesecurity.com/eventspast#f86548cb37cb2a82728b1762bd1b7aee  Show points of Contact: Amanda Berlin: @infosystir @hackershealth  Brian Boettcher: @boettcherpwned Bryan Brake: https://linkedin.com/in/brakeb  Brakesec Website: https://www.brakeingsecurity.com Youtube channel: https://youtube.com/@brakeseced Twitch Channel: https://twitch.tv/brakesec

Dragon Ball 4 Life
Dope AF - Dragonball AF Chapter 2 Review

Dragon Ball 4 Life

Play Episode Listen Later Mar 29, 2024 54:59


Returning to the work of Toyble (aka Toyataro) to discuss the Dope AF Chapter 2 of Dragonball AF! The fellas discuss: - Fan Mangas - Character Development (and lack thereof) - PYCON!! - A Digression re: The Jersey Shore and Reality TV - Toyataro's Inspiration, and Speculation on Future Chapters -...And More! Tune in for our new series chronicling Dragon Ball AF as a new segment of our podcast focusing on the fandom: Fans 4 Life Check out our Linktree and other podcasts: ⁠https://linktr.ee/db4l⁠  Subscribe on Apple Podcasts: ⁠https://podcasts.apple.com/us/podcast/dragon-ball-4-life/id1645000686⁠  Subscribe on Spotify: ⁠https://open.spotify.com/show/0WTmVFsC3z7sdl0UEZiP2X⁠  Subscribe on Google Podcasts: ⁠https://podcasts.google.com/feed/aHR0cHM6Ly9hbmNob3IuZm0vcy84MGY3MDEwNC9wb2RjYXN0L3Jzcw⁠  Follow us on Instagram: ⁠https://www.instagram.com/db4l_pod/⁠  Follow us on Twitter: ⁠https://twitter.com/DB4L_POD⁠ --- Support this podcast: https://podcasters.spotify.com/pod/show/db4lpod/support

PyBites Podcast
#155 - Django, Open Source & Pycon Conferences, Paolo Melchiorre's Developer Odyssey

PyBites Podcast

Play Episode Listen Later Mar 15, 2024 31:35 Transcription Available


Join us as we journey through Django, open source, and PyCon conferences with special guest Paolo Melchiorre. We explore Django's evolution, the impact of open source, and the vibrant atmosphere of PyCons. Paolo shares his developer odyssey, offering personal insights and experiences from the tech world. Don't miss this insightful episode on the heart of Python development and community collaboration.Chapters:00:00 Podcast intro00:47 Intro Paolo, how did you get into python and open source03:47 What do you like about Django05:34 Django and Pelican contributions09:17 Getting into open source through Pycon sprints10:31 Coaching Django girls and teaching12:44 Your role / work at 20tab15:33 Handling complex issues and problem solving18:47 AI tools vs Stack Overflow (and articles)19:47 Python / Django / web trends21:27 Front-end and HTMX22:37 Rust based tools23:52 The importance of mindset for developers26:02 Book recommendations27:47 Pycon Italia shoutout and how to reach out30:04 Wrap upLinks:- Follow Paolo on Mastodon- Check out his blog- Connect with him in our community- Pycon ItaliaBooks:- Fluent Python- Django by Example

core.py
Episode 9: Py Day with Emily Morehouse-Valcarcel

core.py

Play Episode Listen Later Mar 14, 2024 69:44


Let's talk about the Steering Council, running a small consultancy business, the Walrus, and pet peeves with our special guest today! ## Outline (00:00:00)  INTRO (00:00:56)  PART 1: Emily Morehouse (00:02:15)  Running a small consultancy business (00:04:39)  What features of JS do you miss in Python? (00:05:50)  Łukasz outnumbered in a world of Steering Council members (00:06:12)  Upgrading to new Python versions (00:07:00)  It depends on who deployed the project (00:09:44)  Second term as a Steering Council member (00:11:33)  Barry, play some bass for us (00:13:04)  Let's hear a recent war story (00:15:17)  Is this progress bar even working? (00:17:40)  The Villain Origin Story (00:21:37)  Emily, The Bringer of Doom (00:22:37)  Consensus within the Steering Council (00:25:52)  Syntax changes in Python are rare, right? Right? (00:28:22)  On implementing PEP 572 (00:32:52)  How would PyCon 2020 in Pittsburgh feel? (00:34:18)  How can you be mad about the Walrus? (00:36:10)  Favorite parts of the standard library (00:38:10)  Is hacking on Python a good experience to newcomers? (00:40:26)  Emily's pet peeve about Python, take 1 (00:42:17)  Emily's favorite change in Python in recent years (00:44:34)  Emily's pet peeve about Python, take 2 (00:46:34)  Łukasz's pet peeve (00:48:25)  Surprise extra question (00:49:42)  At core.py we are professionals (00:51:00)  PART 2: PR of the Week (00:54:00)  CALL TO ACTION: Upgrade Python.org to Django 4! (00:56:22)  PART 3: What's Going On in CPython? (00:56:38)  Faster Python updates (01:00:10)  Free threading: GIL can be disabled but we're not done yet! (01:04:17)  New defaults for SSL context flags (01:05:39)  python -m asyncio and sys.__interactivehook__ (01:06:24)  Surprise question: what is sys.__interactivehook__ even doing? (01:08:11)  OUTRO

CHAOSScast
Episode 81: Managing Federal CHAOSS at CMS.gov

CHAOSScast

Play Episode Listen Later Mar 12, 2024 40:25


Thank you to the folks at Sustain (https://sustainoss.org/) for providing the hosting account for CHAOSSCast! CHAOSScast – Episode 80 On today's episode of CHAOSScast, we focus on the experiences and initiatives of the Open Source Program Office at the U.S. Centers for Medicare and Medicaid Services (CMS). Host Dawn Foster is joined by Sean Goggins along with guests, Remy DeCausemaker, Natalia Luzuriaga, Isaac Milarsky, and Aayat Ali, all from various backgrounds within the CMS, who share insights into their efforts in maintaining and promoting an open source culture within federal services. Key discussion points include the launch of the CMS's first open source program office, the development of a maturity model framework to evaluate open source projects, the creation of tools such as Repo Scaffolder and Duplifier to support open source practices, and efforts towards open source software security. This episode emphasizes the distinct aspects of opens source work in government settings compared to the private sector and highlights upcoming presentations at conferences. Download this episode now to hear more! [00:02:21] Dawn asks about the team's work at the U.S. Centers for Medicare and Medicaid Services. We start with Remy, who explains the launch of the first open source program office at a federal agency in the U.S. and details CMS's mission to improve healthcare experience for over 150 million people and the role of the digital service within CMS. [00:05:36] Natalia discusses the maturity model framework developed to assess the open source maturity level of projects. She describes a “Repo Scaffolder” tool created in collaboration with the U.S. digital response to help projects align with the majority model, and she speaks about additional features for public repositories to aid in development. [00:10:51] Isaac takes over, explaining how they use Auger metrics and “Nadia labeling” to categorize projects and encourage the adoption of their maturity model. He details a metrics website that provides visual representations of project health and activity and introduces “Duplifier,” a deduplication tool for healthcare data, which uses an open source library called Splink. [00:15:14] Sean inquires how they actualize their user needs in metrics visualization and about the process that informs the creation of these visual metrics. Isaac addresses front-end design aspects of metric visualization and the importance of making the metrics understandable at a glance. Natalia emphasizing designing for both technical and non-technical stakeholders, ensuring metrics are clear and understandable. [00:17:44] Aayat discusses her role in strategy development and the creation of a CMS OSPO guide. She emphasizes advocacy withing CMS for open source and plans to conduct workshops and usability testing to determine which metrics are most valuable to stakeholders. [00:19:23] Remy talks about consulting with the chief information security officer and the chief information officer for internal metric priorities and engaging with an external OSPO metrics working group convened by CHAOSS for broader insights. [00:20:47] Dawn asks Remy for more details on the differences with government engagement in open source to the corporate environments. Remy describes the early journey of OSPOs at the federal level and contrasts it with his private sector experience. [00:25:18] Sean asks about what success would look like a year from now for the OSPO group's work. Remy acknowledges the limited four-year term for digital service members, emphasizing the urgency to execute and make an impact within the next year. He highlights the transformative impact of Isaac and Natalia's entrance into the program and the successful shipping of the metrics website, a deduplication tool, and other repositories. [00:27:50] Isaac envisions success as propagating maturity models and open source standards throughout the government, demonstrating value to stakeholders, and growing the OSPO. Natalia is excited to share their foundational OSPO work and contribute to open data initiatives and mentions speaking this year at the Linux Foundation Open Source Summit and PyCon about their work. Aayat defines success as achieving goals in source code stewardship, understanding the maturity and content of repositories, and supporting the team in communicating the value of open source. [00:29:53] Remy brings up Nadia Eghbal giving her credit for influential work and mentioning a team book club inspired by her writings. Value Adds (Picks) of the week: [00:32:39] Dawn's pick is Beat Saber for indoor workouts. [00:33:05] Sean's pick is the HBO max show, True Detective, Season 4. [00:33:22] Remy's pick is the BRAVO Hackathon Series he recently attended. [00:38:14] Natalia's pick is visiting her local library and getting a library card. [00:38:39] Aayat's pick is a good book she read called, “Demon Copperhead.” [00:39:36] Isaac's pick is enjoying the nice weather and getting outside. **Panelists: Dawn Foster Sean Goggins Guests: Remy DeCausemaker Natalia Luzuriaga Isaac Milarsky Aayat Ali Links: CHAOSS (https://chaoss.community/) CHAOSS Project X/Twitter (https://twitter.com/chaossproj?lang=en) CHAOSScast Podcast (https://podcast.chaoss.community/) podcast@chaoss.community (mailto:podcast@chaoss.community) Georg Link Website (https://georg.link/) Dawn Foster X/Twitter (https://twitter.com/geekygirldawn?lang=en) Sean Goggins X/Twitter (https://twitter.com/sociallycompute) Remy DeCausemaker X/Twitter (https://twitter.com/Remy_D) Remy DeCausemaker LinkedIn (https://www.linkedin.com/in/decause/) Natalia Luzuriaga LinkedIn (https://www.linkedin.com/in/natalialuzuriaga/) Isaac Milarsky LinkedIn (https://www.linkedin.com/in/isaac-milarsky-24471b1b6) Aayat Ali LinkedIn (https://www.linkedin.com/in/aayat-ali-a5850134/) Aayat Ali Website (https://aayatali.com/) CMS.gov (https://moj-analytical-services.github.io/splink/index.html) Digital Service at CMS (DSACMS)-GitHub (https://github.com/dsacms) Centers for Medicare & Medicaid Services-GitHub (https://github.com/CMSgov) United States Digital Corps (https://digitalcorps.gsa.gov/) Splink (https://moj-analytical-services.github.io/splink/index.html) Repo Scaffolder-GitHub (https://moj-analytical-services.github.io/splink/index.html) Metrics Dashboard for CMS Open Source Projects (https://github.com/dsacms/metrics) Repo Metrics Website (https://dsacms.github.io/metrics/) github-ospo (https://github.com/github/github-ospo) The Linux Foundation Open Source Summit-April 16-18, 2024, Seattle, WA (https://events.linuxfoundation.org/open-source-summit-north-america/) PyCon US-May 15-23, 2024-Pittsburgh, PA (https://us.pycon.org/2024/) Nadia Asparouhova (aka Nadia Eghbal) Website (https://nadia.xyz/) Working in Public: The Making and Maintenance of Open Source Software by Nadia Eghbal (https://www.amazon.com/dp/0578675862/) Roads and Bridges: The Unseen Labor Behind Our Digital Infrastructure by Nadia Eghbal (https://www.fordfoundation.org/wp-content/uploads/2016/07/roads-and-bridges-the-unseen-labor-behind-our-digital-infrastructure.pdf) CHAOSScast Podcast-Episode 77: Open Source Metrics at Microsoft (https://podcast.chaoss.community/77) Beat Saber (https://beatsaber.com/) True Detective-Season 4 (HBO max) (https://www.hbo.com/true-detective/season-4) BRAVO Hackathon Series (https://bravo.il2.afwerx.dso.mil/about) Demon Copperhead by Barbara Kingsolver (https://www.amazon.com/Demon-Copperhead-Novel-Barbara-Kingsolver/dp/0063251922) Special Guests: Aayat Ali, Isaac Milarsky, Natalia Luzuriaga, and Remy DeCausemaker.

Sustain
Episode 223: OSCA 2023 with Mannie William Young on the Python community in Ghana & PyCon Africa

Sustain

Play Episode Listen Later Mar 8, 2024 19:00


Guest Mannie William Young Panelist Richard Littauer Show Notes In this episode, host Richard invites guest Mannie Young from Ghana's Python community to share his experiences in open source development. Mannie discusses his role as the Executive Director of the Python Software Community in Ghana and his involvement in organizing PyCon Africa. He provides insights into the significant growth of the Python community in Ghana and the various initiatives under it. He also discusses the Nigerian open source community's vibrancy, the Python community's development in Ghana, and reflects on his experiences at OSCA and Sustain events. Mannie touches on cultural differences affecting community sustainability and funding opportunities, and he shares insights on how to get involved with PyCon Africa and Python Ghana, highlighting the new PyClubs initiative. Hit download now to hear more! [00:00:59] Mannie mentions his active contribution to the Python software community and his roles as the Executive Director of Python Ghana and organizer of PyCon Africa. [00:02:02] Mannie discusses his experience at OSCA Fest 2023, insights from the Sustain Session, as well as Importance of Documentation in Open Source [00:06:14] Mannie explains the growth of the Python community in Ghana and its various initiatives, like PyLadies Ghana and PyData Ghana. [00:07:11] There's a discussion about OSCA's event in Lagos and the Sustain event. Although Mannie was not part of the organizing team this year, he shares some highlights from OSCA including great talks, diversity, and a welcoming environment. He also tells us about the Sustain workshops he attended, focusing on design and community. [00:10:04] The conversation shifts to compare the open source communities in Ghana and Nigeria, with an emphasis on social media presence and advocacy. [00:11:36] Mannie discusses the impact of being reserved on funding and opportunities in the Ghanaian open source community, along with the cultural differences affecting sustainability. [00:012:30] Richard and Mannie address a recent issue with DjangoCon and the PSF regarding discrepancies in approaches to funding and community support, along with cultural and legal considerations in Africa. [00:15:33] Richard inquires about how people can get involved with PyCon Africa, PyCon Ghana, and Mannie's communities. Mannie explains that preparations for PyCon Africa 2024 are underway and provides contact emails and websites. [00:17:08] Find out where you can follow Mannie and his blog on the web. Quotes [00:11:08] “If you don't blog about things, no one knows what you were doing.” Links SustainOSS (https://sustainoss.org/) SustainOSS Twitter (https://twitter.com/SustainOSS?ref_src=twsrc%5Egoogle%7Ctwcamp%5Eserp%7Ctwgr%5Eauthor) SustainOSS Discourse (https://discourse.sustainoss.org/) podcast@sustainoss.org (mailto:podcast@sustainoss.org) SustainOSS Mastodon (https://mastodon.social/tags/sustainoss) Open Collective-SustainOSS (Contribute) (https://opencollective.com/sustainoss) Richard Littauer Mastodon (https://mastodon.social/@richlitt) Mannie Young Website (https://www.mannieyoung.com/) Mannie Young LinkedIn (https://www.linkedin.com/in/mawy7/?originalSubdomain=gh) An Open Letter to the Python Software Foundation (Python Africa) (https://pythonafrica.blogspot.com/2023/12/an-open-letter-to-python-software_5.html) PyCon Ghana (https://gh.pycon.org/) PyClubs (https://www.pyclubs.org/) PyLadies Ghana (https://blog.pythonghana.org/series/pyladies) PyData Ghana (https://blog.pythonghana.org/series/pydata) OSCAfrica (https://oscafrica.org/about-us) Credits Produced by Richard Littauer (https://www.burntfen.com/) Edited by Paul M. Bahr at Peachtree Sound (https://www.peachtreesound.com/) Show notes by DeAnn Bahr Peachtree Sound (https://www.peachtreesound.com/) Special Guest: Mannie William Young.

PyBites Podcast
#152 - Will AI Replace Us Developers? No! But Using AI Tools Will Give You an Edge ...

PyBites Podcast

Play Episode Listen Later Feb 20, 2024 42:01


And we're back, Julian and Bob this time! We're hearing some people being worried about AI and its impact on developer roles, even to the extent of being skeptical to move in or keep progressing into our field.Hence we thought it would be good timing to discuss the current state of AI tools, their strengths + weaknesses, and how to effectively use them.We don't think they will replace us developers because in this episode we come to the conclusion that so much in software development is (and will be) human. We hope that our perspective will better help you navigate and use these tools. We think we live in exciting times and by embracing AI tools you really can create an edge for yourself.We also have some exciting Pybites updates for you, books and more ... enjoy!And don't forget to join our community and join the discussion.Chapters:00:00 Intro01:18 Wins / community / podcasts07:44 We heard some worries about AI08:56 Thoughts on ChatGPT for coding10:52 It's not there yet12:35 Looking a bit more under the covers17:10 What it means for coding jobs20:40 Shedding a mindset light on current fear23:20 The productivity gains are real!25:10 Julian's AI Utopia moment27:13 Bob's pessimist counter balance (LOL)27:30 Takeaway and adopting a growth mindset28:42 Data privacy aspect30:04 GPT4 vs 3.531:00 AI tools give you an edge (and reduces tutorial paralysis)32:50 Join the discussion33:25 Nerding out on books, book stories and series39:15 Wrap up, Pycon 2024

Talk Python To Me - Python conversations for passionate developers
#444: The Young Coder's Blueprint to Success

Talk Python To Me - Python conversations for passionate developers

Play Episode Listen Later Jan 2, 2024 54:59 Very Popular


Are you early in your software dev or data science career? Maybe it hasn't even really started yet and you're still in school. On this episode we have Sydney Runkle who has had a ton of success in the Python space and she hasn't even graduated yet. We sit down to talk about what she's done and might do differently again to achieve that success. It's "The Young Coder's Blueprint to Success" on episode 444 of Talk Python To Me. Links from the show Sydney Runkle: linkedin.com Pydantic: pydantic.dev Code Combat: codecombat.com Humanitarian Toolbox: www.htbox.org PyCon 2024: pycon.org Good first issue example: github.com Watch this episode on YouTube: youtube.com Episode transcripts: talkpython.fm --- Stay in touch with us --- Subscribe to us on YouTube: youtube.com Follow Talk Python on Mastodon: talkpython Follow Michael on Mastodon: mkennedy --- Episode sponsors --- Talk Python Training

Python Bytes
#360 Happy Birthday!

Python Bytes

Play Episode Listen Later Nov 7, 2023 35:44


Topics covered in this episode: exclude_also with coverage.py Writeside Extra, extra, extra Chrome not proceeding with Web Integrity API deemed by many to be DRM Extras Joke Watch on YouTube About the show Sponsored by Scout APM Connect with the hosts Michael: @mkennedy@fosstodon.org Brian: @brianokken@fosstodon.org Show: @pythonbytes@fosstodon.org Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Tuesdays at 11am PT. Older video versions available there too. Note: No episode next week. Michael will be at Microsoft Ignite in Seattle. Happy Birthday to us (7 years old today)! Brian #1: exclude_also with coverage.py Interesting exchange between Pamela Fox, Hugo van Kemenade, and myself where we all discover exclude_also, even though it's been there since February This is cool because you can exclude common “should I cover this? It's just for debugging.” kinda stuff, and other “I don't wanna test that” places. To exclude code blocks, we can use *# pragma: no cover* in the code. Or we can list lines in coverage setting with exclude_lines, but you have to also list # pragma: no cover, which is weird. exclude_also just just right. It leaves all the inline excludes alone, and adds some regexes, and you can even just have one if that's all you need, like if __name__ == .__main__.: See coverage docs Michael #2: Writeside An IDE for writing the docs Write, test, build, and publish docs Docs-as-code out of the box Doc quality automation: Ensure documentation quality and integrity with 100+ on-the-fly inspections in the editor as well as tests in Live Preview and during build. Comes as a separate IDE as well as a plugin for PyCharm, etc. Pricing will be free + paid premium version (like PyCharm), fully free for now Brian #3: Extra, extra, extra Welcome Marie Nordin as the new PSF Community Communications Manager Woohoo! Pablo Galindo and Łukasz Langa started a podcast, called core.py Inside look into Python 3.13 Two episodes so far The first core sprint for 3.13 Details on removing the GIL regexcrossword Suggested by Kim van Wyk actually really great for practicing regex rules Michael #4: Chrome not proceeding with Web Integrity API deemed by many to be DRM Google's premise for the internet: The Internet should be constructed so that users can be identified, tracked, retargeted (and hence resold). — Google And privacy is important. So how do we make both of these work. FLOCs? Privacy Sandboxes? Web Integrity? No, just no. How about you sell us ads the same way you surface search results (by what is on the page, not who is visiting it) Good riddance to this idea you corrupted organization. What was wrong with Web Integrity? Some comments Issue #134 calls the idea "absolutely unethical and against the open web." Issue #113 say they "can't believe this is even proposed." Issue #127 adds: "Have you ever stopped to consider that you're the bad guys?” Extras Brian: Mock chapter of pytest: working with projects, the 2nd course in The Complete pytest Course series, is recorded and hopefully releasing today. At the very least some time this week. PyCharm has sent me a bunch of coupon codes for students of The Complete pytest Course. Sign up for the course and ask me for the code, and I'll send it to you. Nov 21 webinar with yours truly: Do You Do Enough Testing? pytest to the Rescue! Michael: We Just Gave $500,000 to Open Source Maintainers - Sentry (thank you) ruff format + pycharm follow up JetBrains AI is getting very good a commit messages Add exception handling in background_service.py: Introduced try-except blocks to handle potential exceptions in the 'pending_jobs', 'start_job_processing', and 'run_pending_job' methods in background_service.py. This change enhances error handling and makes the service more robust by preventing crashes if a job or episode cannot be fetched or if an unknown job action is encountered. Add assemblyai to requirements and update ruff version: This commit includes the addition of assemblyai package as part of the requirements.txt file, required to introduce new speech-to-text feature in our application. Ruff version is also updated from 0.1.3 to 0.1.4 due to bug fixes and stability improvements in the new version. Assemblyai also includes dependencies like pydantic and websockets. GPT4All follow up Got some nice feedback on my statement on PyCon 2024's health and safety policy More I think about it, the more out of touch it seems Comparisons, no mask requirements for any of: GitHub Universe - N,NNN? attendees CES - 180,000 attendees SXSW - 152,000 attendees KubeCon - 12,000 attendees Adobe Summit - 10,000 attendees Mobile World Conference - 109,500 attendees DeveloperWeek - 2,000 attendees Microsoft Ignite - 4,000 attendees WWDC - unkown Joke: The plural of regex is regrets.

Python Bytes
#359 gil--;

Python Bytes

Play Episode Listen Later Nov 2, 2023 43:04


Topics covered in this episode: PyCon 2024 is up? Ruff formatter is production ready gil--; Why is the Django Admin “Ugly”? Extras Joke Watch on YouTube About the show Sponsored by Scout APM Connect with the hosts Michael: @mkennedy@fosstodon.org Brian: @brianokken@fosstodon.org Show: @pythonbytes@fosstodon.org Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Tuesdays at 11am PT. Older video versions available there too. Michael #1: PyCon 2024 is up? May 15 - May 23, 2024 - Pittsburgh, Pennsylvania Conference breakdown: Tutorials: May 15 - 16, 2024 Main Conference and Online: May 17 - 19, 2024 Job Fair: May 19, 2024 Sprints: May 20 - May 23, 2024 Tickets aren't on sale yet Unfortunately, I'm not going (see health and safety guidelines) Attendance numbers over time on Wikipedia Brian #2: Ruff formatter is production ready We reported the alpha release in September It's fast, 30x faster than Black Provides >99.9% compatibility with Black, with a list of known deviations More configurable Bundled with ruff, ruff format Still in Beta, but considered production-ready Integration extensions for VSCode and PyCharm Michael #3: gil--; The Python Steering Council has now formally accepted PEP 703 ("Making the Global Interpreter Lock Optional in CPython") The global interpreter lock will remain the default for CPython builds and python.org downloads. A new build configuration flag, --disable-gil will be added to the configure script that will build CPython with support for running without the global interpreter lock. "In short, the SC accepts PEP 703, but with clear provisio: that the rollout be gradual and break as little as possible, that we can roll back any changes that turn out to be too disruptive – which includes potentially rolling back all of PEP 703 entirely if necessary (however unlikely or undesirable we expect that to be)." Removing the global interpreter lock requires substantial changes to CPython internals, but relatively few changes to the public Python and C APIs. The implementation changes can be grouped into the following four categories: Reference counting Memory management Container thread-safety Locking and atomic APIs Brian #4: Why is the Django Admin “Ugly”? Vince Salvino Some great quotes from the article: "The Django admin is not ugly, rather, no effort was made to make it a beautiful end-user tool.” - Ken Whitesell “The admin's recommended use is limited to an organization's internal management tool. It's not intended for building your entire front end around.” - Django docs “The Django admin was built for Phil.” - Jacob Kaplan-Moss “Even in the 0.9x days we used to have a image that said “Admin: it's not your app”.” - Curtis Maloney As Curtis put it, “encouraging people to build their own management interface, and treat admin as a DB admin tool, has saved a lot of people pain... the effort to customise it grows far faster than the payoffs.” Extras Brian: Local Conferences: Big Potential Michael: Data Science Jumpstart with 10 Projects course is out! PSF is X-ed out (or are they?) GPT4All is pretty excellent Fosstodon invites from us (expires Nov 7 2023) Joke: Searching YouTube for bug fixes

HKPUG Podcast 派樂派對
第 922 集:Apple M3 Mac 系列快到巧驚驚?

HKPUG Podcast 派樂派對

Play Episode Listen Later Nov 1, 2023 99:40


0:00:00 – HKPUG 會訊 + Tech Talk 0:32:36 – 依輪乜事 0:47:29 – Main Topic 本集全長:1:39:40 Tag: 茶聚, Python, PyCon, ChatGPT Plus 新增多類型檔案分析功能, 西九 CPU 失竊事件, …

FOSS and Crafts
60: Governance, part 2

FOSS and Crafts

Play Episode Listen Later Oct 1, 2023


Back again with governance... part two! (See also: part one!) Here we talk about some organizations and how they can be seen as "templates" for certain governance archetypes.Links:Cygnus, CygwinMastodonAndroidFree Software Foundation, GNUSoftware Freedom Conservancy, Outreachy, Conservancy's copyleft compliance projectsCommons ConservancyF-DroidOpen CollectiveLinux Foundation501(c)(3) vs 501(c)(6)StitchtingFree as in FreedomLKML (the Linux Kernel Mailing List)Linus Doesn't ScaleSpritely Networked Communities InstitutePython and the Python Software Foundation, PyCon, the Python Package IndexPython PEPs (Python Enhancement Proposals), XMPP XEPs, Fediverse FEPs, Rust RFCsBlender, Blender Foundation, Blender Institute, Blender StudioBlender's historyElephants DreamMozilla Foundation and Mozilla CorporationDebian, Debian's organizational structure, and Debian's constitutionEFFOh yeah and I guess we should link the World History Association!

Teaching Python
Episode 111: Generative AI with Eric Matthes

Teaching Python

Play Episode Listen Later Jul 1, 2023 64:27


Episode 111: Exploring Generative AI in Education In Episode 111 of the Teaching Python podcast, join special guest Eric Matthes and your hosts Kelly and Sean as they dive into the intriguing world of generative AI in education. Coming fresh from the Education Summit at PyCon 2023, they provide a comprehensive recap of the event, highlighting the successful speaker topics, the ideal room size, and the engaging breakout sessions that made the summit a resounding success. As an extra resource, Eric Matthes, author of the widely acclaimed "Python Crash Course," joins the discussion, providing valuable insights into the intersection of generative AI and education. For those interested, Eric's book can be found on Amazon (https://amzn.to/3pz7uje). The conversation then delves into the complexities surrounding generative AI, emphasizing that while it holds tremendous potential, it is still in its early stages, leaving us with more questions than answers. To lay the groundwork, the hosts define generative AI and demystify how large language models work, drawing an analogy to refrigerator poetry magnets to aid comprehension. As the discussion unfolds, Kelly, Eric, and Sean raise crucial questions about the role of generative AI, specifically ChatGPT, in education. They explore the optimal level of usage, the necessary policies and governance to support its implementation, and draw parallels to the concept of the "Goldilocks zone" in astronomy, seeking the right balance for effective integration. The episode moves to thought-provoking dialogue regarding the future proficiency levels required for learners in problem-solving scenarios. They examine whether coding proficiency alone will suffice or if learners will need to develop AI literacy, enabling them to harness the power of AI to generate code and solutions. Tune in to Episode 111 of the Teaching Python podcast to gain a deeper understanding of the implications and potential of generative AI in education. As the hosts explore the evolving landscape, they shed light on the importance of finding the right balance and preparing learners for the challenges and opportunities that lie ahead. Special Guest: Eric Matthes.

Talk Python To Me - Python conversations for passionate developers
#418: How To Keep A Secret in Python Apps

Talk Python To Me - Python conversations for passionate developers

Play Episode Listen Later Jun 2, 2023 67:11


Think about the different APIs and databases your application works with. Every one of them requires either an API key or a database connection string that itself contains a password. How do you let your application access this sensitive information without storing it in source code or putting in other compromising locations? We have Glyph Lefkowitz on the show to share his security fable as well as just good advice for keeping secrets out of Python code. Links from the show Glyph on Mastodon: @glyph@mastodon.social ShhGit: github.com Encrust: github.com GitHub Security Alerts: github.com CIA Triad: fortinet.com pinpal: github.com XKCD Authorization: xkcd.com Tokenring: github.com AWS Vault: github.com Gimme-AWS-creds: github.com Secrets in GitHub Actions: github.com Python Client for HashiCorp Vault: python-hvac.org Pomodouroboros app: github.com DateType: pypi.org Haveibeenpwned: haveibeenpwned.com PEP 541: peps.python.org Glyph's security talk at PyCon: us.pycon.org Watch this episode on YouTube: youtube.com Episode transcripts: talkpython.fm --- Stay in touch with us --- Subscribe to us on YouTube: youtube.com Follow Talk Python on Mastodon: talkpython Follow Michael on Mastodon: mkennedy Sponsors PyCharm RedHat Talk Python Training

Talk Python To Me - Python conversations for passionate developers

The release of Pydantic 2.0, its partial rewrite in Rust, and its refactoring into Pydantic core and top-level Pydantic in Python is big news. In fact, the alpha of Pydantic 2 was just released. Of course, these changes will have potentially wide ranging (and positive!) effects on libraries that are built upon Pydantic such as FastAPI, Beanie, and others. That's why this chance I had to catch up with Samuel Colvin from Pydantic and Sebastián Ramírez from FastAPI together, live from PyCon 2023. It's a super fun and wide ranging interview I'm sure you'll enjoy. Plus, there is a bit of an easter egg in the middle. Links from the show Sebastián Ramírez: @tiangolo Samuel Colvin: @samuel_colvin FastAPI: fastapi.tiangolo.com Pydantic: pydantic.dev Pydantic V2 Pre Release: pydantic.dev Watch this episode on YouTube: youtube.com Episode transcripts: talkpython.fm --- Stay in touch with us --- Subscribe to us on YouTube: youtube.com Follow Talk Python on Mastodon: talkpython Follow Michael on Mastodon: mkennedy Sponsors Sentry Error Monitoring, Code TALKPYTHON influxdata Talk Python Training

Talk Python To Me - Python conversations for passionate developers

Did you make this year's PyCon event in the US? There was a lot of excitement this time around in Salt Lake City. In this episode I'll bring you a bunch of experiences we had this year. It starts where frequent guest Jay Miller turns the tables and interviews me at the Microsoft booth on the expo hall floor in front of a live audience. Then you'll hear from Mario Munoz, Nick Muoh, Chris Williams, Ray McLendon, and Sean Tibor about their time at the conference. Links from the show Jay Miller: @kjaymiller Mario Munoz: @pythonbynight@fosstodon.org Ray McLendon: linkedin.com Nick Muoh: @nicksspirit@fosstodon.org Sean Tibor: @smtibor@fosstodon.org Chris Williams: @mistwire@fosstodon.org Python Community News: youtube.com The Birth & Death of JavaScript: destroyallsoftware.com Talk Python episode with Rivers Cuomo: talkpython.fm Watch this episode on YouTube: youtube.com Episode transcripts: talkpython.fm --- Stay in touch with us --- Subscribe to us on YouTube: youtube.com Follow Talk Python on Mastodon: talkpython Follow Michael on Mastodon: mkennedy Sponsors airplane Sentry Error Monitoring, Code TALKPYTHON Talk Python Training

Python Bytes
#333 Live From PyCon

Python Bytes

Play Episode Listen Later Apr 22, 2023 22:38


Watch on YouTube Sponsored by us! Support our work through: Our courses at Talk Python Training Test & Code Podcast Patreon Supporters Connect with the hosts Michael: @mkennedy@fosstodon.org Brian: @brianokken@fosstodon.org Show: @pythonbytes@fosstodon.orgx Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Tuesdays at 11am PT. Older video versions available there too. Michael #1: Introducing Microsoft Security Copilot Security Copilot combines this advanced large language model (LLM) with a security-specific model from Microsoft. When Security Copilot receives a prompt from a security professional, it uses the full power of the security-specific model to deploy skills and queries that maximize the value of the latest large language model capabilities. Your data and stays within your control. It is not used to train the foundation AI models, and in fact, it is protected by the most comprehensive enterprise compliance and security controls. Brian #2: PEP 695 – Type Parameter Syntax “This PEP specifies an improved syntax for specifying type parameters within a generic class, function, or type alias. It also introduces a new statement for declaring type aliases.” To get a feel for this, jump to the examples One example Here is an example of a generic function today. from typing import TypeVar _T = TypeVar("_T") def func(a: _T, b: _T) -> _T: ... - And the new syntax. def func[T](a: T, b: T) -> T: ... Michael #3: Auto-GPT An experimental open-source attempt to make GPT-4 fully autonomous. This program, driven by GPT-4, chains together LLM "thoughts", to autonomously achieve whatever goal you set. Features

The Real Python Podcast
Evaluating Python Packages & Celebrating 20 Years of PyCon US

The Real Python Podcast

Play Episode Listen Later Mar 31, 2023 60:57


Have you ever installed a Python package without knowing anything about it? What best practices should you employ to ensure the quality of your next package installation? Christopher Trudeau is back this week, bringing another batch of PyCoder's Weekly articles and projects. We also have Python Software Foundation executive director, Deb Nicholson, to share details about PyCon US 2023.

Kubernetes Podcast from Google
Breaking Kubernetes for Fun and Profit with David Flanagan

Kubernetes Podcast from Google

Play Episode Listen Later Mar 27, 2023 40:32


David Flanagan is a developer, educator and technology enthusiast with a special interest for Kubernetes and Cloud Native technologies. David is the founder of Rawkode Academy, an online platform aiming at teaching kubernetes to developers. One of the popular shows on RawKode is Klustered. Where david invites people to fix broken kubernetes clusters, learn a thing or two and have a laugh   Do you have something cool to share? Some questions? Let us know: - web: kubernetespodcast.com - mail: kubernetespodcast@google.com - twitter: @kubernetespod News of the week Istio Ambient Mesh merged into the main branch Kubernetes 1.27 changes and removals k8s.gcr.io to registry.k8s.io redirect Preview support for pod sandbox on Azure Kubernetes Services Katacontainers Docker apologies for handling Free Teams deprecation Schedule for CNCF-hosted and colocated events is up Kubernetes WithOut Kubelet CrowdStrike Discovers First-Ever Dero Cryptojacking Campaign Targeting Kubernetes Links from the interview David Flanagan Twitter Linkedin RawKode Academy Klustered How Spotify Accidentally Deleted All its Kube Clusters with No User Impact - David Xia You probably DON'T need a service mesh Klustered episode with Abdel and Marek Docker first release at PyCon 2013 KubeHuddle 2023 Toronto Kubernetes Failure Stories Kubelete runOnce flag Cilium Hubble Telnet Talkers Teamrock MUD's eBPF  

Talk Python To Me - Python conversations for passionate developers
#401: Migrating 3.8 Million Lines of Python

Talk Python To Me - Python conversations for passionate developers

Play Episode Listen Later Feb 2, 2023 60:57


At some point, you've probably migrated an app from one framework or major runtime version to another. For example, Django to Flask, Python 2 to Python 3, or even Angular to Vue.js. This can be a big challenge. If you had 100s of active devs and millions of lines of code, it's a huge challenge. We have Ben Bariteau from Yelp here to recount their story moving 3.8M lines of code from Python 2 to Python 3. But this is not just a 2-to-3 story. It has many lessons on how to migrate code in many situations. There are plenty of gems to take from his experience. Links from the show Ben on Twitter: @benbariteau Ben's Talk at PyCon 2022: youtube.com python-modernize: github.com python-future: github.com Watch this episode on YouTube: youtube.com Episode transcripts: talkpython.fm --- Stay in touch with us --- Subscribe to us on YouTube: youtube.com Follow Talk Python on Mastodon: talkpython Follow Michael on Mastodon: mkennedy Sponsors Cox Automotive User Interviews Talk Python Training

Python Bytes
#321 A Memorial To Apps Past

Python Bytes

Play Episode Listen Later Jan 30, 2023 36:30


Watch on YouTube About the show Sponsored by Microsoft for Startups Founders Hub. Connect with the hosts Michael: @mkennedy@fosstodon.org Brian: @brianokken@fosstodon.org Show: @pythonbytes@fosstodon.org Join us on YouTube at pythonbytes.fm/stream/live to be part of the audience. Usually Tuesdays at 11am PT. Older video versions available there too. Michael #1: git-sim Visually simulate Git operations in your own repos with a single terminal command. Generates an image (default) or video visualization depicting the Git command's behavior. Features Run a one-liner git-sim command in the terminal to generate a custom Git command visualization (.jpg) from your repo Supported commands: log, status, add, restore, commit, stash, branch, tag, reset, revert, merge, rebase, cherry-pick Generate an animated video (.mp4) instead of a static image using the --animate flag (note: significant performance slowdown, it is recommended to use --low-quality to speed up testing and remove when ready to generate presentation-quality video) Choose between dark mode (default) and light mode Animation only: Add custom branded intro/outro sequences if desired Animation only: Speed up or slow down animation speed as desired See images and animations on the github readme. Brian #2: Why I Like Nox Hynek Schlawack I like tox and have wanted to try nox but couldn't think of good reasons for a switch. Hynek is a fan of both, so it's nice to read his perspective. The article starts with comparing doing the same thing in both testing with Python 3.10 and 3.11 and adding the ability to pass in pytest arguments. even with this example, I do admit that the nox example is easier to read, but a bit more verbose. A second example of running a specific example combination of library and Python is quite a bit longer in nox, but there's an interesting commentary: “… this is longer than the tox equivalent. But that's because it's more explicit and anyone with a passing understanding of Python can deduce what's happening here – including myself, looking at it in a year. Explicit can be good, actually.” Other benefits: It's a Python file with Python functions, you have the all of Python at your disposal when developing sessions to run. It's not “ini format”. Complex ini files get out of hand quickly. nox has Python versions as fist class selectors. Final note: “Again, this article is not a call to abandon tox and move all your projects to Nox – I haven't done that myself and I don't plan to. But if my issues resonate with you, there's an option!” Michael #3: I scanned every package on PyPi and found 57 live AWS keys Scanning every release published to PyPi found 57 valid access keys. Detecting AWS keys is actually fairly simple. A keypair consists of two components: the key ID and the key secret. The key ID can be detected with the regular expression ((?:ASIA|AKIA|AROA|AIDA)([A-Z0-7]{16})) The secret key can be detected with a much more general [a-zA-Z0-9+/]{40}. Static PyPI data: github.com/orf/pypi-data Brian #4: Getting Started With Property-Based Testing in Python With Hypothesis and pytest Rodrigo Girão Serrão Hypothesis and property based testing can be overwhelming at first. So focused intro posts are quite helpful. This post focuses on a couple of examples, gcd(), greatest common divisor, and my_sort(), a custom list sorter. Good discussion of how property based testing is different and how to do it successfully, especially the order of development: focus on developing properties of correct answers develop a test that checks those properties use hypothesis strategies to come up with input pick @examples if necessary narrow the range of input if necessary caveat: I would have preferred hypothesis.assume() to limiting input in the first example. assume(not (n == m == 0)) see https://hypothesis.readthedocs.io/en/latest/details.html#hypothesis.assume add more testing outside of hypothesis In my experience it's often easier for me to develop code with non-hypothesis test cases, then follow up with hypothesis. But after works also. The mental gymnastics of thinking of properties for algorithmic code is worthwhile. Extras Michael: First stream from the sweet new mac mini. Ivory released for Mastodon, but others too. Nice memorial https://tapbots.com/tweetbot/ We'll be doing a live in-person event at PyCon, become a friend of the show to get notified. Joke: Didn't come here to be called out

Talk Python To Me - Python conversations for passionate developers

The iconic and first ever image of a black hole was recently released. It took over a decade of work and is a major achievement for astronomy and broadens our understanding of the universe for all of us. Would it surprise you to know that Python played a major part in this discovery? Of course it did, and Dr. Sara Issaoun is here to give us the full story. Links from the show Sara's PyCon keynote: youtube.com Sara on Twitter: @saraissaoun Event Horizon Telescope: eventhorizontelescope.org Black Hole Image Makes History; NASA Telescopes Coordinated Observations: nasa.gov Event Horizon Data: eventhorizontelescope.org Imaging, analysis, and simulation software for radio interferometry Package: github.com Initial data showing ring (matplotlib) (video at time): youtube.com Mars 2020 Helicopter GitHub Badge: github.blog Watch this episode on YouTube: youtube.com Episode transcripts: talkpython.fm --- Stay in touch with us --- Subscribe to us on YouTube: youtube.com Follow Talk Python on Mastodon: talkpython Follow Michael on Mastodon: mkennedy Sponsors Cox Automotive Sentry Error Monitoring, Code TALKPYTHON Talk Python Training

Talk Python To Me - Python conversations for passionate developers

No Python announcement of 2022 was met with more fanfare than pyscript. This project, announced at PyCon 2022, allows you to write Python files and run them in your browser in place of JavaScript or even with interactions between Python and JavaScript. There was just one catch: The runtime download was a 9MB WebAssembly file. That made its uses quite limited. On this episode, we dive into some news that might change that calculus. The MicroPython and PyScript folks have been teaming up to get PyScript running in the browser on MicroPython. Yes, that's the embedded chip Python. Here's the good news: MicroPython's WebAssembly is just 300k to download and loads in under 100ms. Now that could unlock some possibilities. We have Brett Cannon, Nicholas Tollervey, and Fabio Pliger on the show to discuss. YOUTUBE: id=ABVn6uMG1OI Links from the show Guests and Host Links Brett Cannon: @brettcannon@fosstodon.org Nicholas Tollervey: @ntoll@mastodon.social Fabio Pliger: @b_smoke Michael Kennedy: @mkennedy@fosstodon.org Web Assembly: developer.mozilla.org pyodide: pyodide.org micropython: micropython.org Picture of TFT ESP32 Board: pythonbytes.fm pyscript: pyscript.net Simon Willison's Post About micropython + pyscript: fedi.simonwillison.net WASI: github.com Watch this episode on YouTube: youtube.com Episode transcripts: talkpython.fm --- Stay in touch with us --- Subscribe to us on YouTube: youtube.com Follow Talk Python on Mastodon: talkpython Follow Michael on Mastodon: mkennedy Sponsors AWS Insiders Local Maximum Podcast AssemblyAI Talk Python Training