Free and open source software (FOSS) for revision control
POPULARITY
Categories
When you use an AI tool, how much time do you spend correcting it? And would your customers be willing to do the same?Kendra Vant, Chief Product Officer at Tapi, joins Randy Silver to explore the “reliability layer”: the people, checks and engineering that make AI products dependable. She explains why enthusiastic AI users often provide that layer themselves, and why product teams can't assume their customers will.Kendra shares four questions to ask before building AI into your product, from who catches mistakes to what reliability costs at scale. They also discuss designing for failure, the technical literacy she expects from product managers, and why faster prototyping makes experienced judgement so valuable.Chapters00:00 Introducing Kendra Vant02:51 The gap between an AI demo and a reliable product06:12 Accuracy, consistency and the user as the reliability layer13:31 Four questions to ask before building AI into your product18:27 Sponsor: Jira Product Discovery19:01 Planning for failure and protecting customer trust24:06 Customisation, pricing and the cost of scaling26:37 Do product managers need to learn to code?31:40 How Tapi uses AI to experiment and build33:25 Why small teams have an advantage35:05 Product judgement and the experience gap38:08 Using AI to maintain legacy code39:41 Ask better questions, write down answers and test your thinking43:11 Where to follow KendraKey takeawaysFind the work your users are doing for the AI. Correcting answers, refining prompts and spotting mistakes can make a tool feel more reliable than it is. Consider whether your customers have the time, motivation and expertise to do that work.Make someone responsible for reliability. Establish who specifies, builds and operates the checks around your AI. An impressive demo can conceal the fact that nobody owns this work yet.Price the whole product. Human review, additional models, guardrails and ongoing maintenance all affect the cost of delivery. Check whether your reliability layer remains commercially viable as usage grows.Design for the moments when it fails. Saying a model is wrong 15% of the time prompts a different conversation from saying it is 85% accurate. Identify the consequences for customers and plan how the product will recover.Build your technical literacy. Kendra expects product managers to be comfortable interacting with Git and learning from the codebase. Understanding how software works helps you ask better questions and collaborate with engineers.Recognise the value of experience. Faster tools increase what teams can build, but recognising flawed suggestions still requires judgement. Kendra raises an open question: how will newer practitioners develop that judgement as the work changes?Use writing to sharpen your thinking. Break difficult problems into smaller questions, write down your answers and explain them to a colleague. The gaps often become clearer when you have to articulate your reasoning.We're refreshing The Product Experience and want your input. Take our two-minute survey and help shape where the show goes next! Our HostsLily Smith enjoys working as a consultant product manager with early-stage and growing startups and as a mentor to other product managers. She's currently Chief Product Officer at BBC Maestro, and has spent 13 years in the tech industry working with startups in the SaaS and mobile space. Randy Silver is a Leadership & Product Coach and Consultant. He gets teams unstuck, helping you to supercharge your results. Randy's held interim CPO and Leadership roles at scale-ups and SMEs, advised start-ups, and been Head of Product at HSBC and Sainsbury's. He participated in Silicon Valley Product Group's Coaching the Coaches forum, and speaks frequently at conferences and events. You can join one of communities he runs for CPOs (CPO Circles), Product Managers (Product In the {A}ether) and Product Coaches. He's the author of What Do We Do Now? A Product Manager's Guide to Strategy in the Time of COVID-19. A recovering music journalist and editor, Randy also launched Amazon's music stores in the US & UK.
Jared Sorge stops by to chat about Arborist, his native Mac command center for Git work trees. We get into running agents in parallel with work trees, when to drop from SwiftUI down to AppKit, and selling a Mac app outside the App Store with Sparkle, Stripe, and RevenueCat, and somehow end up talking about the iPhone Duo.GuestJared SorgeJared Sorge (@jsorge@mastodon.social) - Mastodonjsorge (Jared Sorge)Jared Sorge | LinkedInJared Sorge (@jsorge) • ThreadsArborist - A native macOS command center for Git repositories and worktreesTaphouse SoftwareRelated LinksArborist 1.2 - jsorge.netBaseplate - Track your LEGO collection - Taphouse Softwaregit-worktree Documentation - GitTower - Git clientNova - Panicmise - dev tools, env vars, task runnerjust - a handy way to save and run project-specific commandsswift-subprocess - GitHubSparkle - Software update framework for macOSRevenueCatManaged Payments - Stripe DocumentationSQLiteData - Point-Free - GitHubSharing - Point-Free - GitHubSwift Navigation - Point-Free - GitHubIntroducing Claude Design by Anthropic Labs - AnthropicMac-Assed Mac Apps - Daring FireballXcodeGen - GitHubShipaton 2026 - RevenueCatSwiftConiOSDevUKBushel - Mac virtualization for developersRelated EpisodesPractical Agents with Donny WalsEveryone Thinks They're Good at Prompting with Joe FabisevichThe Great SwiftUI Migration - Part 2 with Ben ScheirmanThe Great SwiftUI Migration - Part 1 with Ben ScheirmanmacOS Indie Deep Cuts with Aaron VeghMac Dev in 2021 with Daniel JalkutHow to Learn New APIs with Stewart Lynch - Part 1Automation Fun with Jared SorgeChapters(00:00) - Why Work Trees (06:56) - The Idea Behind Arborist (11:14) - SwiftUI vs. AppKit (17:05) - Picking the Right Tool for the Job (21:27) - From Problem to Product (25:30) - Shipping Outside the Mac App Store (29:59) - Licensing, Sandboxing & Subprocess (36:30) - Agentic Coding & the Product Engineer (45:17) - What's Next for Arborist WatchClick here to watch a video of this episode. TranscriptClick here to view the episode transcript. Support the Show ★ Support this podcast on Patreon ★ Thanks to our supporters: Thanks to our monthly supporters Steven Lipton Welcome new supporters: Social MediaLinkedIn - @leogdionGitHub - @brightdigitGitHub - @leogdionMastodon - @leogdion@c.imYouTube - @brightdigitX - @leogdionX - @brightdigitCreditsMusic from https://filmmusic.io "Blippy Trance" by Kevin MacLeod (https://incompetech.com) License: CC BY (http://creativecommons.org/licenses/by/4.0/)
Would you accept $10,000 to live near a data center? A Pennsylvania developer's offer is dividing residents. Plus: Zuckerberg's estimated wealth falls nearly $20 billion, Gen Z faces AI job pressure, and a Claude Code user reports a cleanup that deleted more than 55,000 files. Hashtag Trending for Tuesday, September 29, 2026, with Jim Love. NorthPoint Development is offering $10,000 to roughly 4,500 eligible households in Hazle Township, Pennsylvania, alongside another $120 million for community programs and services. But residents near the proposed 15-building data center campus worry about noise, property values and divisions within the community. Also in this episode: • Meta's falling shares cut nearly $20 billion from Mark Zuckerberg's estimated fortune across Friday and midday Monday, amid concerns about returns on AI spending. • Goldman Sachs estimates AI reduced monthly U.S. job growth by about 25,000 positions, partially offset by 9,000 additional jobs where AI supports human work. Younger, less-experienced workers face much of the impact. • Wired reports that AI agents are joining workplace conversations, taking assignments and appearing on organizational charts. • Bexorg uses donated human brains to study potential treatments outside the body. The company says the brains cannot regain awareness. • A Claude Code user reports that an automated cleanup followed Windows directory junctions into a working project, deleting thousands of files and local Git history. Claude Code's rewind feature does not cover deletions made through Bash. The incident has not been independently verified. CHAPTERS 00:00 Today's Headlines 00:43 $10,000 Data Center Offer Divides Residents 02:27 Zuckerberg's $20 Billion Wealth Drop 04:14 AI Job Losses Hit Gen Z 05:41 AI Agents Become Coworkers 06:32 Donated Human Brains Used for Drug Testing 08:10 Claude Code User Reports Mass File Deletion 09:59 Wrap Up and Support What would you want guaranteed before accepting a $10,000 data center payment? Leave your thoughts in the comments. Subscribe to Hashtag Trending for daily technology news with Jim Love. Contact us or support the show: https://technewsday.ca https://technewsday.com
Very Important Links!Support the show at Patreon! - https://patreon.com/gogOther ways to support the show! - https://gog.show/donateJoin our Discord! - https://discord.gg/r4ZmSHBBuy some merch! - https://shop.gog.show/Recorded on Wednesday, September 23rd, 2026.Jason, Brian, and Dave head to the Dark Side for a deep dive into vibe coding—and, against all odds, Jason may finally be cracking. After Salesforce decided to sunset Quip, Jason used AI to rebuild the collaborative show-notes system the guys have relied on for a decade, adding more features while cutting the monthly cost to almost nothing. Then he took up Dave's challenge to modernize an aging open-source ham-radio application, turning it into a native-looking Mac app in a matter of hours. The catch: after decades of programming, Jason knows exactly what to ask for, what to watch for, and when the AI is confidently doing something stupid.That leads to the bigger question: what happens when software that once took months and tens of thousands of dollars can be built in an afternoon? The guys get into value-based pricing, the disappearing entry-level programming ladder, whether AI makes people lazy or gives curious people superpowers, and how custom software could start eating away at expensive SaaS subscriptions. Jason also lays out what he's learned from actually building with these tools: keep everything portable, use Git from day one, make the AI document its work, and never build something you can't eventually maintain yourself. Turns out the future may not belong to vibe coders after all—it may belong to people who already know what the hell they're doing.See Privacy Policy at https://art19.com/privacy and California Privacy Notice at https://art19.com/privacy#do-not-sell-my-info.
Send Steve a Text MessageA lot of guitar careers are built around louder stages, bigger rigs, and the next gig. Tommy Armstrong Levitt's path gets there too, but it takes a turn that's both unexpected and deeply moving. We talk through his full arc: growing up on classic records, learning guitar by trading riffs with friends, leveling up through GIT at Musicians Institute, and turning hard-earned lesson-room experience into method books that thousands of players still use.From there, the conversation shifts into the “working music” reality. Tommy breaks down what it takes to teach with consistency, how Chord Camp and Finger Fitness came together, and what self-publishing really looks like when you're paying for printing, distribution, and inventory. We also get into gear and tone from the inside of the industry, including his work at EMG and the biggest misconception about active pickups: most players judge them by the black covers, not by the clarity, noise floor, and articulation you actually hear in a mix.Then we go somewhere most guitar interviews never go. Tommy shares why he became a certified music practitioner and what therapeutic music in hospitals demands, especially in palliative care and hospice. We talk about tempo, dynamics, reading the room in seconds, letting go of ego, and what it's like to play when the moment is truly life-and-death. Those experiences inspire his new acoustic release, Lullabies for the Living, built from pieces first shaped at the bedside.If you care about guitar, music education, EMG pickups, music therapy, or using your instrument to serve people in real moments, you'll get a lot from this one. Subscribe, share it with a friend, and leave a review with your biggest takeaway.CD:https://distrokid.com/hyperfollow/tommyarmstrongleavitt/lullabies-for-the-living?fbclid=IwY2xjawUeKKJwZG9mBWV4dG4DYWVtAjEwAGJyaWQRMUoxRWVkZEY2SUthbldlVGVzcnRjBmFwcF9pZBAyMjIwMzkxNzg4MjAwODkyAAEet6VLoZ0kk7G-ZhRWy68iwe2dr4QoSMXB_bszSZo1fsuGYAI__AN0kQm3SL4_aem_xmVcpg14BMVVrNOSafWhrQLearning Materials:https://www.chordcamp.com/tommyYouTube:http://www.youtube.com/channel/UCO2mMZiShcnptcqun0-i2GgThanks for being here!! I will continue to do my best to bring you the best, most informative guitar discussions to help you along your guitar journey! Please like, share and subscribe to get the word out about this podcast, and please check out the GuitarZoom Academy if you are ready to achieve your guitar goals!!GuitarZoom Homepage The more you share this podcast with others, the more I can continue to grow this channel and offer the best information and advice I can to you.Thank you!SteveLinks:Check out the GuitarZoom Academy:https://academy.guitarzoom.com/Steve's Channel → https://www.youtube.com/user/stinemus... GuitarZoom Channel → https://www.youtube.com/user/guitarz0... Songs Channel → https://www.youtube.com/user/GuitarSo... .
Music fan Brian Koppen chats with music critic Alex Gonzalez as they discuss Rock & Roll Hall of Fame artists:Marvin Gaye's “Inner City Blues (Make Me Wanna Holler)” vs. Missy Elliott's “Get Ur Freak On” Chaka Khan's “Ain't Nobody” vs. Santana's “Smooth”Carl Perkins' “Glad All Over” vs. Eminem's “Stan” Impressions' “People Get Ready” vs. OutKast's “Git up, Git Out” Dire Straits' “Romeo & Juliet” vs. Janet Jackson's “Rhythm Nation”Correction (Koppen mistake): Although Janet Jackson's “If” has been discussed on an episode of KoppenWithCritic, it was Janet Jackson's “Again” that beat David Bowie on an episode of KoppenWithCritic.Check out Alex Gonzalez at https://www.instagram.com/alexgwriter/, https://linktr.ee/alexgwriter, https://x.com/alexgwriter, https://alexgonzalez.contently.com/, https://alexgwriter.substack.com/, and https://www.tiktok.com/@alexgwriter!Intro music is from Jussy's Down Open Roads. Check out Jussy at https://soundcloud.com/user-214048265/sets/jussy-demos-1!Support the show
Sandra und Daniel melden sich aus der Sommepause zurück.
Aujourd'hui, retour sur la panne majeure qui a paralysé GitHub le 17 août dernier pendant près de huit heures. Un incident critique qui remet en question la gestion de la charge et la résilience des plateformes stratégiques. Et sur la base du retex de GitHub, je vous explique tout ça en trois points.La croissance explosive des usages peut terrasser n'importe quel systèmePremier enseignement majeur pour les directions informatiques, la croissance explosive des usages peut terrasser n'importe quel système, aussi robuste soit-il.Le 17 août, GitHub a subi une interruption de près de huit heures touchant l'authentification, les intégrations, les API et Copilot. La cause n'est ni un bug de code ni une erreur de configuration. C'est un pur problème de capacité face à une explosion du trafic.En quatre mois, le volume mensuel de commits sur la plateforme a quasiment doublé, passant de 1,4 à 2,9 milliards. Lorsque la charge a atteint un sommet, les composants du centre de données principal n'ont pas réussi à monter en charge.Mais le vrai piège est venu des clients Copilot : en échouant à se connecter, ils ont déclenché des boucles de réessais massives. Ce phénomène a asphyxié le réseau et bloqué le rétablissement du service.GitHub a dû injecter en urgence plus de trois millions de cœurs de processeursSecond enseignement, l'accélération forcée vers le cloud pour absorber la surcharge.Face à ce pic de charge, l'infrastructure sur site a rapidement trouvé ses limites physiques. GitHub a dû injecter en urgence plus de trois millions de cœurs de processeurs et 120 pétaoctets de stockage.Mais le véritable salut est passé par l'infrastructure cloud d'Azure. La plateforme y a transféré 58 % de sa charge globale et la moitié de ses opérations Git, contre seulement 12 % quelques mois plus tôt.Cette migration massive permet d'envisager une nouvelle architecture capable de faire évoluer la capacité de lecture de manière linéaire avec le nombre d'utilisateurs.GitHub revoit en profondeur son architectureEnfin, troisième enseignement, la refonte drastique des pratiques opérationnelles.L'échelle ne sert à rien si un composant secondaire peut effondrer toute la pile technologique.GitHub revoit donc en profondeur son architecture pour supprimer les dépendances partagées et isoler ses systèmes critiques. Concrètement, cela implique la mise en place de plafonds de réessais, de budgets de requêtes et de délais d'expiration variables pour éviter les réactions en chaîne.Pour les CTO, la leçon est claire : la résilience exige une isolation stricte et une discipline de reprise sans concession.Le ZD Tech est sur toutes les plateformes de podcast ! Abonnez-vous !Hébergé par Ausha. Visitez ausha.co/politique-de-confidentialite pour plus d'informations.
Côté IA : MCP devient stateless, Claude watermarke ses textes, GPT-6 Astra défie Claude Fable, et une étude JetBrains confirme Claude Code en tête des agents de code. Côté JVM : JDK 27 généralise G1, Kotlin 2.4 stabilise les context parameters, une API JSON arrive dans le JDK, et Quarkus comme Micronaut enchaînent les versions. En bonus, trois pannes IA simultanées et un câble débranché chez Google Cloud. Enregistré le 11 septembre 2026 Téléchargement de l'épisode LesCastCodeurs-Episode-343.mp3 ou en vidéo sur YouTube. News Langages Les Types Algébriques de Données (ADTs) en Java rockthejvm.com/articles/algebraic-data-types-in-java Le problème : L'approche classique (champs nullables, hiérarchies de classes ouvertes) crée des états invalides et des erreurs à l'exécution (comme le NullPointerException). Types Produits (ET logique) : Implémentés en Java avec les Records. Ils regroupent plusieurs champs de manière immuable et concise. Types Sommes (OU logique) : Implémentés avec les Sealed Interfaces. Elles définissent un ensemble strictement fermé de sous-types connus à la compilation. ADTs (Types Algébriques) : La combinaison des Sealed Interfaces et des Records. Ils garantissent que les états invalides sont impossibles à représenter dans le code. Pattern Matching : L'extraction des données se fait via des expressions switch exhaustives, supprimant le besoin de casts manuels et obligeant le développeur à traiter tous les cas possibles. Généralisation : Ce modèle est idéal pour créer des types comme Result, forçant le traitement explicite et sécurisé des succès et des erreurs typées. Pourquoi "Algébrique" ? Parce que les types sont combinés mathématiquement (Produits = multiplication, Sommes = addition) pour limiter strictement le nombre d'états possibles d'une donnée. JDK 27 : fonctionnalités et calendrier de sortie openjdk.org/projects/jdk/27 infoworld.com/article/4202901/jdk-27-the-new-features-of-java-27.html JDK 27 est la prochaine version majeure de Java, une version non-LTS avec seulement 6 mois de support, qui succède à JDK 26. La disponibilité générale est prévue pour le 15 septembre 2026, avec des release candidates les 6 et 20 août 2026. Le périmètre est désormais figé (feature freeze) avec neuf JEP au programme. Le ramasse-miettes G1 devient le collecteur par défaut dans tous les environnements, et plus seulement en mode serveur. Ajout d'un support de la cryptographie post-quantique pour TLS 1.3, via des échanges de clés hybrides combinant algorithmes classiques et résistants au quantique. Finalisation de l'API PEM pour encoder et décoder clés, certificats et listes de révocation au format PEM. L'API Vector poursuit son incubation pour la douzième fois, permettant d'exprimer des calculs vectoriels compilés en instructions CPU optimisées. Les en-têtes d'objets compacts, introduits en JDK 24, sont désormais activés par défaut et réduisent l'empreinte mémoire du tas. Plusieurs previews sont reconduites : constantes paresseuses (3e preview), types primitifs dans les patterns (5e preview) et concurrence structurée (7e preview). Ajout d'une fonctionnalité de rédaction in-process pour JFR, afin de masquer les données sensibles dans les enregistrements de profiling. Kotlin 2.4 : nouveautés du langage et outillage kotlinlang.org/docs/whatsnew24.html Kotlin est un langage moderne, multiplateforme (JVM, Android, iOS, JavaScript, Wasm) développé par JetBrains, souvent utilisé comme alternative à Java. Les context parameters passent en stable : ils permettent de fournir des dépendances implicites à une fonction sans les déclarer en paramètre explicite, un peu comme une injection de dépendances. Les collection literals arrivent en expérimental : on peut écrire une liste avec des crochets, comme en Python, par exemple val fruits = ["pomme", "banane"]. L'API UUID de la bibliothèque standard devient stable, pour générer et manipuler des identifiants uniques nativement. Nouvelles fonctions utilitaires comme isSorted() pour vérifier si une collection est déjà triée. Support de Java 26 côté JVM et alignement automatique des versions Java et Kotlin dans les projets Maven. Kotlin/Native, la compilation vers du code natif iOS et macOS, active par défaut un nouveau ramasse-miettes plus rapide et améliore l'export vers Swift. Kotlin/Wasm, la compilation vers WebAssembly pour faire tourner du Kotlin dans le navigateur, rend la compilation incrémentale stable. Kotlin/JS permet désormais d'exporter des value classes vers JavaScript et TypeScript. Le compilateur K1, l'ancienne génération, n'est plus supporté : seul le nouveau compilateur K2 reste disponible. JEP 540 : une API JSON simple intégrée au JDK (incubation) openjdk.org/jeps/540 Le JDK ne propose aujourd'hui aucune API JSON native, obligeant à dépendre de bibliothèques externes comme Jackson, Gson ou Jakarta JSON pour parser ou générer du JSON. Cette JEP remplace la JEP 198 de 2014 et cible JDK 28 avec le nouveau module incubateur jdk.incubator.json. L'objectif est de couvrir les besoins simples d'extraction de données sans binding de données ni API de streaming, en laissant ces cas avancés aux bibliothèques existantes. L'API s'articule autour de l'interface scellée JsonValue avec six sous-types : JsonString, JsonNumber, JsonBoolean, JsonNull, JsonObject et JsonArray. Le parsing est strict et conforme à RFC 8259 : pas de virgules finales, pas de commentaires, et les noms de membres dupliqués provoquent une erreur. Donc pas de JSON5 La navigation se fait via get et tryGet, et la conversion vers des types Java via asInt, asLong, asDouble, asString, asMap ou asList. En cas d'erreur, une JsonValueException précise le chemin exact dans le document et sa position en ligne et colonne. Le pattern matching sur les sous-types de JsonValue permet de gérer proprement l'évolution du format d'un document JSON dans le temps. La génération se fait via toString pour une sortie compacte ou Json.toDisplayString pour une sortie indentée et lisible. À terme, le JDK pourrait utiliser cette API en interne, par exemple pour remplacer les fichiers de configuration au format property par du JSON. Autres nouvelles du JDK openjdk.org/jeps/535 openjdk.org/jeps/541 le mode generationel pour Shenandoah est prévu par défaut et deprécue le non générationel en 28 fini le support de Java sur Apple Intel GraalVM 25.2 : références compressées et Graal Script Agent medium.com/graalvm/… GraalVM est une machine virtuelle polyglotte d'Oracle offrant compilation JIT avancée et compilation en image native pour accélérer les applications Java et d'autres langages. Cette version 25.2 fait partie du train de releases innovation qui livre les nouveautés plus vite, pendant que GraalVM 25.0 reste la version stable recevant les correctifs de sécurité critiques. Nouveauté phare, le Graal Script Agent transforme des demandes en langage naturel en plugins sandboxés exécutés localement, en JavaScript ou Python, avec un accès restreint aux APIs de l'application. Les références compressées sont désormais activées par défaut dans Native Image sur les systèmes 64 bits, remplaçant les adresses complètes par des valeurs 32 bits relatives au tas. Cette optimisation réduit de 39% la consommation mémoire RSS d'une application Micronaut connectée à Oracle Database, comparée à la version 25.0. Contrepartie de cette optimisation, le tas géré est désormais plafonné à 32 Go. Le garbage collector G1 est maintenant disponible sur toutes les plateformes, y compris Windows, via l'option –gc=G1. G1 apporte de meilleures performances, une latence réduite et un démarrage plus rapide, avec des images natives plus petites grâce à l'optimisation guidée par profil. Le Vector API de Java est activé par défaut pour exploiter les instructions SIMD, utile pour le machine learning et le traitement de données. Bonne intégration avec l'écosystème via Micronaut 5.1, Quarkus et WebAssembly. Shopify arrête React Native pour ses applis mobiles iOS et Android et repasse à du natif avec Swift et Kotlin shopify.engineering/back-to-native Les progrès majeurs des LLM (IA) réduisent drastiquement le coût du développement sur deux plateformes distinctes. Les bénéfices du natif pur restent supérieurs, moins de couches d'abstractions, de dépenfances externes, et plus rapide pour adopter les dernières fonctionnalités des OS Les bibliothèques open-source (Skia, FlashList, Restyle) évoluent : Skia sera forkée par William Candillon, FlashList cherche un nouveau repreneur, Restyle sera archivée fin 2026. Migration des applications (Shop, Shopify, etc.) réalisée en mode "greenfield" (reconstruction totale) assistée par IA. Utilisation du système "Helix" pour un développement itératif et contrôlé par des agents IA. Découplage de la logique métier et de l'interface via une CLI pour accélérer les tests et éviter les lenteurs des simulateurs. L'application Shop a été entièrement reconstruite en natif en 12 semaines ; les autres suivront. Librairies LangChain4j CDI est une extension CDI qui intègre LangChain4j avec CDI de Jakarta EE langchain4j.github.io/langchain4j-cdi LangChain4j CDI : Extension intégrant LangChain4j à Jakarta EE et MicroProfile. Services IA : Injection et gestion de cycle de vie via @RegisterAIService. Orchestration d'agents : 11 topologies d'agents configurables par annotations. Serveur MCP : Conversion de beans CDI en serveurs Model Context Protocol. Fonctionnalités d'entreprise : Configuration externe, tolérance aux pannes et observabilité OpenTelemetry. Installation Maven : Deux extensions disponibles selon l'environnement (build-time pour Quarkus/Helidon, portable pour WildFly/GlassFish/Liberty). Prérequis techniques : Java 17+, Jakarta EE 10, MicroProfile 6.1. Quarkus 3.36, 3.37 et 3.38 : trois releases avant Quarkus 4 quarkus.io/blog/quarkus-3-38-released quarkus.io/blog/quarkus-3-37-released quarkus.io/blog/quarkus-3-36-released Quarkus est un framework Java cloud natif optimisé pour GraalVM et HotSpot, conçu pour les microservices et les environnements conteneurisés. En 3.38 (29 juillet), l'équipe allège les nouveautés pour se concentrer sur Quarkus 4, la communauté atteint 1213 contributeurs. 3.38 introduit l'éviction basée sur le poids mémoire pour le cache Caffeine de second niveau d'Hibernate, en plus de l'éviction par comptage. 3.38 apporte l'extension Quarkus HTTP Problem qui implémente la RFC 9457 pour mapper les exceptions en réponses application/problem+json, intégrée à OpenAPI. 3.37 (24 juin) ajoute l'extension expérimentale quarkus jlink pour générer des images runtime JDK sur mesure et réduire la taille des conteneurs. 3.37 active par défaut la sérialisation Jackson sans réflexion pour de meilleures performances. et 3.39 lesdesactivent et les rement en opt-in 3.37 introduit dans REST Client RestMultiResponse pour lire codes de statut et en-têtes sur des réponses REST en streaming, avec passage à Hibernate ORM 7.4 qui exige PostgreSQL 14 minimum. 3.36 (27 mai) propose Quarkus Signals en expérimental, un système de communication typée entre composants inspiré des events CDI et de l'EventBus Vert.x. 3.36 embarque des SBOM applicatifs exposés via /.well-known/sbom, y compris en image native selon la spécification GraalVM. 3.36 ajoute l'authentification OIDC via JWT SPIFFE, facilitant l'identité de charge de travail en environnement zero trust. Micronaut Framework 5.1.0 : injection de dépendances, IA et sécurité renforcées github.com/micronaut-projects/micronaut-platform/…/v5.1.0 Micronaut est un framework JVM pour microservices et applications cloud-natives, avec injection de dépendances à la compilation et démarrage rapide. Introduction d'Open DI 1.0.0, une implémentation CDI Lite s'appuyant sur l'infrastructure d'injection de dépendances de Micronaut. Côté données, support officiel de SQLite et intégration MyBatis, avec ETags basés sur les valeurs pour le verrouillage optimiste. En sécurité, arrivée d'un module OWASP HTML Sanitizer, délégation d'authentification @RunAs et résolution de locale via OIDC. Côté IA, LangChain4j ajoute le support Chroma, la mémorisation de chat Oracle et l'authentification Google injectée pour Vertex AI, avec passage du MCP en version 2.0.0. Mises à jour majeures des dépendances : Spring Boot 4.1.0, Jetty 12.1.10, Tomcat 11.0.23, OpenTelemetry 1.64.0 et Kubernetes Java Client 27.0.0. SSL activé par défaut par service pour les clients HTTP Infrastructure Ça coûte combien de faire tourner un LLM local sur son Apple Silicon ? towardsdatascience.com/how-much-does-a-local-llm-actually-cost-to-run-i-measured-every-watt-on-apple-silicon Coût électrique des LLM locaux sur Mac Apple Silicon Un modèle 120B (MoE) coûte 5x à 10x moins cher qu'un modèle 27B (Dense). Le coût dépend du débit (tokens/seconde), pas du nombre de paramètres. Modèle dense –> Charge 100% des poids par token = lent et très énergivore. MoE (Mixture of Experts) –> N'active qu'une fraction des poids = rapide et économe. Conclusion : Pour réduire la facture électrique, choisir des modèles MoE quantifiés (haut débit). Kubernetes 1.36 (Haru) : sécurité renforcée et alignement IA infoq.com/news/2026/05/kubernetes-1-36-released Kubernetes est la plateforme open source de référence pour l'orchestration de conteneurs, portée par la CNCF. La version 1.36 nommée Haru apporte 70 améliorations : 18 passent stables, 25 en bêta et 25 en alpha, avec 106 entreprises et 491 contributeurs. Les user namespaces passent en disponibilité générale, isolant le root du conteneur de celui de l'hôte. Les Mutating Admission Policies passent en GA, remplaçant les webhooks par des règles CEL natives plus performantes. L'autorisation de l'API kubelet devient plus fine, remplaçant le droit trop large nodes/proxy. Le labeling SELinux des volumes utilise désormais mount -o context, accélérant le démarrage des pods. Plusieurs avancées ciblent les charges IA : gang scheduling en bêta, préemption consciente des groupes de pods, et allocation dynamique de ressources activée par défaut pour le partage fin des GPU. Le redimensionnement vertical des pods en place passe en bêta et activé par défaut, ajustant CPU et mémoire sans redémarrage. Suppression du plugin gitRepo, source de risque de sécurité, et du mode IPVS de kube-proxy, tous deux dépréciés de longue date. Avec la sortie de 1.36, la version 1.34 devient la plus ancienne branche encore supportée et entre en maintenance, ne recevant plus que des correctifs critiques avant sa fin de support. Terraform vs OpenTofu en 2026 : la divergence est actée ecorpit.hashnode.dev/terraform-vs-opentofu-in-2026-the-fork-has-diverged-so-which-do-you-standardize-on env0.com/insights/opentofu-in-2026-what-the-terraform-fork-became-after-three-years-of-independence Terraform est l'outil historique d'Infrastructure as Code de HashiCorp, OpenTofu en est le fork open source lancé après le changement de licence. HashiCorp est passé de la licence MPL 2.0 a la BUSL 1.1 en aout 2023, ce qui a poussé une partie de la communauté a créer OpenTofu sous la Linux Foundation. IBM a racheté HashiCorp pour 6,4 milliards de dollars, finalisé en février 2025, tandis qu'OpenTofu rejoignait le CNCF comme projet sandbox en avril 2025. OpenTofu prend de l'avance sur des fonctionnalités inédites : chiffrement du state côté client depuis la v1.7, valeurs éphémères qui gardent les secrets hors du state depuis la v1.11, et prevent_destroy dynamique en v1.12 (mai 2026). Terraform garde l'avantage sur l'orchestration managée avec Terraform Stacks, désormais en disponibilité générale, sans équivalent natif côté OpenTofu. Le coût diverge fortement : HCP Terraform facture jusqu'à 0,99 dollar par ressource gérée et par mois, alors qu'OpenTofu reste une CLI gratuite couplée au backend de son choix. Fidelity Investments a migré plus de 2000 applications et 50000 fichiers d'état vers OpenTofu, la complexité venant surtout de l'écosystème (CI/CD, gouvernance) plutôt que du binaire lui-même. OpenTofu reste compatible avec les configurations Terraform jusqu'a la version 1.6.x, mais les versions Terraform plus récentes n'offrent plus aucune garantie de compatibilité. Pour les secteurs régulés, le chiffrement natif du state par OpenTofu et sa gouvernance ouverte sont des arguments forts face aux exigences de protection des données. La recommandation qui ressort des deux articles : partir sur OpenTofu pour les projets neufs et rester sur Terraform si l'on est déjà investi dans HCP Terraform et ses fonctionnalités de gouvernance. OTel est à la peine ? matduggan.com/otel-isnt-going-well-and-i-made-a-spreadsheet-about-it Le développement d'OTel est un peu au point mort Périmètre démesuré : Volonté de supporter un nombre gigantesque de langages, bibliothèques et frameworks. Pénurie critique de mainteneurs : Les données montrent une hyper-concentration du travail ; de nombreux SDK (comme PHP ou Ruby) dépendent d'une ou deux personnes seulement. Stabilité paralysante : La règle interdisant toute modification d'une fonctionnalité déclarée « stable » crée une peur de valider les nouveautés, entraînant des mois de débats. Solutions proposées par l'auteur : Créer un niveau « Bêta » temporaire (ex: 12 mois) entre les statuts « Expérimental » et « Stable ». Faire preuve de transparence sur les différences de qualité/maintenance entre les langages (ne pas mettre Go et Ruby sur le même plan). Communiquer activement sur le besoin urgent de nouveaux mainteneurs. Assouplir la politique de stabilité en acceptant des breaking changes bien documentés. Honeycomb transforme son infrastructure Kafka honeycomb.io/blog/transforming-how-we-run-kafka-honeycomb Honeycomb est une plateforme d'observabilité dont Kafka est le coeur du pipeline d'ingestion, traitant des millions d'événements par seconde. L'entreprise a migré de Confluent Platform auto-hébergée vers Apache Kafka 4.1.1 en mode KRaft. Le nouveau cluster tourne sur AWS EKS avec Strimzi comme couche d'orchestration Kubernetes. Motivation principale : la récupération après remplacement de broker était passée de 8-12h à 48-72h avec l'ancienne stack. Confluent imposait aussi sa solution propriétaire de Tiered Storage, impossible à corriger en interne. Un incident de décembre 2025 ayant vidé un cluster a révélé une fenêtre d'opportunité pour migrer. La migration s'est faite progressivement sur six clusters, de dogfood jusqu'à la production. Les producteurs sont basculés avant les consommateurs, avec une courte fenêtre de downtime assumée entre les deux. Le stockage utilise des NVMe en instance store plutôt que de l'EBS pour minimiser la latence. interessant de voir une société reprendre en main sa compétence et de voir les contraintes de certaines fonctionalités propriétaires Cloud AWS us-west-2 : panne réseau régionale et effet domino chez les fournisseurs SaaS blog.incidenthub.cloud/aws-us-west-2-outage-jul-24-2026 AWS us-west-2 (Oregon) est une région cloud majeure hébergeant de nombreux services et fournisseurs SaaS. Le 24 juillet 2026, une panne matérielle réseau a coupé la connectivité entre la région et le Seattle Metro pendant environ 20 minutes. Particularité notable, seule la couche de connectivité externe a été touchée, le trafic interne à la région a continué de fonctionner normalement. Après la réparation matérielle, une phase distincte de reconvergence des routes a de nouveau causé une connectivité intermittente pendant plusieurs dizaines de minutes. Les clients Direct Connect via EqSe2 ont subi une coupure bien plus longue que le reste, 1h17 au total. Neuf incidents chez sept fournisseurs ont cité explicitement AWS comme cause, dont SendGrid, SparkPost et NinjaOne. Fait marquant, les temps de rétablissement des fournisseurs tiers ont largement dépassé la durée de la panne AWS elle même. NinjaOne a mis 9h29 à se rétablir totalement, avec 150000 appareils tentant de se reconnecter simultanément freinés par des mécanismes de backoff et jitter. SparkPost a mis 6h45 à absorber l'arriéré de courriels accumulé pendant la coupure, avec encore 80 à 90 minutes de retard des heures plus tard. L'article recommande d'identifier ses dépendances en us-west-2 et de prévoir capacité et bascule, l'effet différé pouvant durer bien plus longtemps que l'incident initial. Rapport Cloudflare Radar sur les perturbations Internet au Q2 2026 blog.cloudflare.com/fr-fr/q2-2026-internet-disruption-summary Cloudflare Radar est la plateforme qui analyse en temps réel le trafic mondial pour détecter pannes, coupures et censures Internet. l'instabilité est le nouveau normal Le super-typhon Sinlaku a fait chuter le trafic de près de 80% à Guam les 13 et 14 avril. Deux séismes de magnitude 7,5 ont fortement dégradé la connectivité au Venezuela le 24 juin. Une coupure électrique a provoqué cinq heures de perturbation en Tanzanie le 27 juin. En Iran, la connectivité s'est stabilisée à 59% du niveau normal après 88 jours de coupure. Le Soudan a imposé dix coupures programmées pendant les examens nationaux mi-avril. L'Irak a coupé Internet à trois reprises pour lutter contre la fraude aux examens. Des frappes de drones ont endommagé la région AWS me-central-1 aux Émirats arabes unis. Un renouvellement de clés DNSSEC a rendu les sites .de inaccessibles en Allemagne le 5 mai. Une rupture de câble sous-marin a fait chuter le trafic de 60% à Sainte-Lucie fin juin. l'instabilité est le nouveau normal Un ingénieur Google débranche une zone entière de Google Cloud https://www.theregister.com/off-prem/2026/09/04/google-engineer-unplugged-every-fiber-they-could-see-and-surprise-took-down-a-chunk-of-the-g-cloud/5294418 Google Cloud est la plateforme d'infrastructure cloud de Google, organisée en régions et zones de disponibilité comme us-central1. Le 1er septembre 2026, un ingénieur a débranché par erreur des câbles fibre optique lors d'une opération de maintenance matérielle routinière dans la zone us-central1-b. En 13 minutes, il a déconnecté 100 % des chemins de fibre optique de tous les équipements de cette portion de la zone. Les machines virtuelles hébergées dans la zone touchée sont devenues injoignables, avec une perte de paquets élevée. Le taux de chute du trafic réseau pour les ressources concernées a atteint 100 %. L'incident a duré 4 heures et 11 minutes, de 7h41 à 11h52 heure du Pacifique. Google a détecté l'anomalie, reroute le trafic, identifié les liaisons optiques débranchées puis rebranché physiquement les fibres avant le retour à la normale. Les post-mortems d'incident cloud sont un classique du podcast, mais l'erreur humaine sur du câblage physique chez un hyperscaler mérite une minute d'antenne. ChatGPT, Claude et Grok en panne presque simultanément le 3 septembre theregister.com/ai-and-ml/…/5294322 ChatGPT, Claude et Grok sont les assistants IA et coding agents désormais utilisés au quotidien par de nombreux développeurs. xAI loue ses datacenters à un certains nombre de fournisseurs de cloud et d'IA. ils ont fait tombé ses concurrents :slightly_smiling_face: Arreter là Le 3 septembre 2026, les trois services sont tombés en panne quasiment en même temps. ChatGPT a connu une panne de 7h43 à 8h17 PT, soit environ 34 minutes, due à une erreur de routage rendant ChatGPT et Codex indisponibles. Claude a subi une panne partielle de 3 heures et 6 minutes touchant Claude.ai, Claude Code, Claude Cowork et l'API Claude, résolue à 16h16 UTC. xAI a commencé à enquêter sur les problèmes de Grok dès 6h30 PT, puis SpaceX a confirmé une panne de son centre de calcul de Memphis. La coïncidence des trois pannes a fait suspecter un fournisseur commun à l'origine du problème. Pour les développeurs devenus dépendants de ces coding agents, l'épisode illustre le risque d'un point de défaillance unique xAI loue ses datacenters à un certains nombre de fournisseurs de cloud et d'IA. Web Nouveautés CSS 2026 : mixins, masonry natif et animations pilotées par le scroll modern-css.com/whats-new-in-css-2026 animation-timeline: scroll() et view() atteignent le baseline cross-browser, Firefox et Safari ayant livré le support complet. Plus besoin de préfixes ni de librairie JS. @starting-style devient cross-browser : animations d'entrée depuis display: none sans hack de timing JS. Firefox 147 amène l'anchor positioning au baseline, plus les view transition types et la Navigation API. Les menus contextuels via popover CSS arrivent aussi. Data et Intelligence Artificielle Guillaume a porté le SDK Python d'Antigravity en Java… en utilisant Antigravity lui même comme assistant ! glaforge.dev/posts/…/the-unofficial-antigravity-sdk-for-java SDK Java non officiel pour Antigravity, rétro-ingénierie du SDK Python pour exploiter un binaire Go sous-jacent. Cas d'usage : pipelines CI/CD, applications d'entreprise (Spring Boot), outils internes, surveillance en arrière-plan, interfaces personnalisées. Gestion des ressources : implémente AutoCloseable(try-with-resources) pour lancer et fermer proprement le processus Go. Exécution de code Java personnalisé : exposition de méthodes Java comme outils IA via les annotations @Toolet@Param. Streaming et programmation réactive : prise en charge des CompletableFuture, des callbacks (chatStream), et deFlow.Publisher. Fonctionnalités avancées : persistance de session, protocole MCP, politiques de sécurité, entrées multimodales, et sorties structurées mappées sur des records Java. Le SDK Java pour le protocol Agent2Agent sort sa version 1.2.0 medium.com/google-cloud/a2a-java-sdk-1-2-0-final-released… Prise en charge de la spécification A2A 1.0. Sécurité renforcée : Vérification stricte des autorisations de lecture sur les tâches référencées et implémentation d'une logique de blocage par défaut (fail-closed). Intégration facilitée : Support du câblage programmatique des autorisations pour les environnements non-CDI (comme Spring). Contrôle des flux : Ajout du Task Stream Lifecycle Hook pour surveiller et gérer le cycle de vie des abonnements aux flux d'événements. Stabilité des données : Immutabilité stricte imposée sur les enregistrements de spécifications pour empêcher toute modification accidentelle. Documentation : Lancement d'une documentation web multi-versions et d'un Javadoc agrégé pour tous les modules. Corrections de bugs : Résolution de problèmes liés à la synchronisation des tâches, aux réponses de streaming et aux conditions de concurrence HTTP. Breaking changes : Nécessite une migration suite à la modification de certaines méthodes d'autorisation, la réorganisation de packages et le renommage de l'état TaskState.UNRECOGNIZED en TaskState.TASK_STATE_UNSPECIFIED. Article sur le blog de JetBrains : blog.jetbrains.com/idea/2026/08/intellij-idea-goes-lsp pas trop de temps Langchain4j continue sa progression github.com/langchain4j/langchain4j/…/1.18.0 github.com/langchain4j/langchain4j/…/1.19.0 github.com/langchain4j/langchain4j/…/1.17.0 Introduction du pattern Debate pour lancer des sous agents dans rechercehnt et entrent dans un debat critique sur une decision avant qu'un juge decide (1.17) compensation d'action d'un outil avec @ReverseTool (1.17) Ajout du pattern Belief-Desire-Intention (1.18): belief est l'état du monde cru, desire est la liste des objectifs, intention est le plan pour avancer un ou plusieurs objectif Support d'un systeme crash resilient dans l'approche Human in the loop avec des checkpoints nestés (1.18) Support Open AI TextToSpeech (1.18) Support de Mistral batch chat (1.18) support MCP client 2026-07-28 (1.19) Anthromic batch chat et Google thinking mode (1.19) Embabel atteint 1.0 GA github.com/embabel/embabel-agent/…/v1.0.0 embabel d'eloigne de Spring AI ne s'appuie que sur Spring (notamment tool calling) nettoyage des explorations autour du pattern GOAL avant a 1.0 ajout observabilite (dont le cout) les approches de retry solidifiées et d'autres choses toujours basées sur la description de goals typés et des dependences entre eux via les types MCP 2026-07-28 : le protocole devient stateless blog.modelcontextprotocol.io/posts/2026-07-28 MCP (Model Context Protocol) est le protocole standard permettant aux LLM et agents IA de communiquer avec des outils, ressources et serveurs externes. Cette version marque le plus gros changement depuis le lancement du MCP distant il y a 18 mois. Le protocole passe d'un modèle bidirectionnel avec état à un modèle stateless en requête/réponse. Suppression de la poignée de main initialize/initialized et du header Mcp-Session-Id, chaque requête devient autoportante. N'importe quelle requête peut désormais être routée vers n'importe quelle instance de serveur derrière un load balancer classique, sans stockage partagé. Introduction des Multi Round-Trip Requests (MRTR) pour remplacer les requêtes initiées par le serveur, via un resultType input_required et des inputResponses. Nouveaux headers Mcp-Method et Mcp-Name pour permettre aux gateways de router et autoriser sans parser le JSON. Les résultats de tools, prompts et resources deviennent cacheables grâce aux paramètres ttlMs et cacheScope. Renforcement sécurité avec la validation d'issuer RFC 9207 pour éviter les attaques de confusion entre serveurs d'autorisation, et transition de DCR vers CIMD. Roots, Sampling et Logging sont dépréciés avec douze mois de support garanti, tout comme le transport legacy HTTP+SSE. Un site qui référence les skills pour la JVM (framework, langage, build…) jvmskills.com Frameworks : Spring, Quarkus, Jakarta EE, Reactor, Camel Java : bonne pratiques, conventions, guides de mise à jour à niveau LTS, API spécifiques (streams, optionals, logs…) Bases de données : ORM, validation, modélisation PostgreSQL, vectorielle avec pgvector Tests et qualité : TDD, mutation testing, debogage avec JDB Workflows dev et archi : commits git, domain modeling Outils et diagnostics JVM : JFR, Jstall, JSpecify Une skill n'est pas une librairie https://devx.writizzy.blog/p/un-skill-nest-pas-une-lib Les skills sont des éléments de configuration en prose pour agents IA comme Claude, distribués via des marketplaces à la manière de librairies logicielles. Frédéric Camblor critique cette analogie car partager un skill n'est pas la même chose que le mutualiser durablement. Écrire un skill prend 30 minutes mais l'adopter ailleurs coûte cher en appropriation et en maintenance. Forker un skill s'avère souvent plus efficace que de chercher à converger vers une version commune. Contrairement au code, les régressions d'un skill ne sont pas détectables automatiquement. Un skill peut se dégrader silencieusement sur plusieurs cas d'usage en corrigeant un autre. Les skills vieillissent vite car les modèles progressent et intègrent naturellement certaines bonnes pratiques. Le skill-creator d'Anthropic permet d'évaluer un skill via des jeux de cas et des mesures de variance. L'auteur distingue quatre sphères de partage : personnelle, équipe, outil et marketplace. Il propose un cycle partage puis appropriation puis duplication puis divergence plutôt qu'une installation collective figée. Les modèles Anthropic introduisent un filigrane (watermark) dans les textes qu'ils génèrent https://www.anthropic.com/news/claude-text-watermark Claude est l'assistant IA d'Anthropic, et le watermarking est une technique permettant de marquer discrètement un contenu généré par IA pour en tracer l'origine. Anthropic annonce que les futurs modèles Claude intégreront un filigrane numérique invisible dans le texte généré. Le principe exploite les choix de mots équivalents que le modèle fait naturellement, en les orientant via une clé cryptographique plutôt qu'un tirage aléatoire. Le texte produit reste indiscernable à l'œil nu, sans caractères cachés, sans ralentissement ni coût supplémentaire. Seule la personne possédant la clé correspondante peut détecter la présence du filigrane. Le filigrane est plus fiable sur les textes longs et créatifs, moins sur du texte factuel, du code ou après une édition manuelle poussée. Il ne prouve pas qu'un texte est écrit par IA, ni n'identifie l'auteur ou la conversation d'origine, il donne seulement une probabilité d'implication de Claude. Une API de détection est proposée en accès restreint aux régulateurs, forces de l'ordre, médias et vérificateurs de faits. Pour les fichiers non textuels comme les images ou les PDF, Anthropic s'appuie sur le standard C2PA. Cette initiative s'inscrit dans le Code de Pratique de l'UE sur la transparence des contenus IA, signé par Anthropic et environ 190 autres acteurs, en lien avec la loi européenne sur l'IA. GPT-6 Astra, le nouveau modèle d'OpenAI face à Claude Fable 5.1 https://openai.com/index/gpt-6-astra/ GPT-6 Astra est le nouveau modèle phare d'OpenAI, annoncé le 3 septembre 2026 comme le plus intelligent et le plus aligné de l'entreprise. Le modèle arrive deux jours après Claude Fable 5.1, à un tarif affiché comparable, dans une course accélérée aux modèles de code et de raisonnement. Astra revendique 98 % sur FrontierMath Tier 4, 99,9 % sur ARC-AGI-3 et 100 % sur ExploitBench. Fenêtre de contexte d'environ 1,05 million de tokens. Tarification API, 10 dollars par million de tokens en entrée, 50 dollars en sortie, et 1 dollar par million pour les tokens en cache. Au-delà de 272 000 tokens en entrée, toute la requête est facturée au double sur l'entrée et une fois et demie sur la sortie. Astra est le premier modèle d'OpenAI à franchir le seuil interne critique en cybersécurité. La version publique refuse les tâches offensives avancées comme générer des preuves de concept d'exploits. Le déploiement est progressif, les entreprises du programme de cybersécurité Daybreak d'OpenAI y accèdent en premier, avant ChatGPT Plus, Pro, Business, Enterprise, l'API et AWS. Même logique de diffusion contrôlée que chez Anthropic avec Mythos 5.1 : deux jours d'écart, deux modèles de tête, et la même question de savoir qui accède en premier aux capacités les plus sensibles. Outillage JetBrains s'est lancé dans les LSP (Language Server Protocol) avec une extension IntelliJ pour VS Code et assimilés marketplace.visualstudio.com/items?itemName=JetBrains.intellij-s… Nouveau produit : Lancement de l'extension Java & Kotlin by IntelliJ IDEA pour les éditeurs basés sur VS Code (incluant Cursor). Technologie : Utilisation du standard LSP (Language Server Protocol). Objectif : S'adapter au développement piloté par les agents IA, qui nécessite des fonctionnalités IDE légères et standardisées. Fonctionnalités clés : Support des projets Java, Kotlin et mixtes. Débogage (DAP). Complétion intelligente, navigation et analyse de code. Refactoring. Prise en charge de Maven, Gradle et Bazel. Disponibilité : Téléchargeable via le Visual Studio Marketplace et l'Open VSX registry. Licence / Prix : Gratuit durant la phase de preview (évaluation renouvelable de 30 jours). Nécessitera un abonnement IntelliJ IDEA Ultimate après la preview. (Note : Le LSP purement Kotlin reste gratuit et open-source). Avenir : Développement en cours pour optimiser les flux de travail avec les agents IA en ligne de commande (ex: Claude Code, Codex) afin de réduire la consommation de tokens. Après son acquisition par SpaceX, Cursor perd l'accès aux modèles OpenAI https://openai.com/index/our-decision-on-cursor-following-its-acquisition-by-spacex/ decision difficile mais Elon ment comme un arracheur de dent (et c'est un competiteur donc bon ça nous arrange) David Pilato a créé un thème spéciale pour les gens pour les devrel, ou qui font des talks à droite à gauche, pour le moteur Hugo https://david.pilato.fr/posts/2026-09-07-hugo-theme-devrel/ hugo-theme-devrel, thème Hugo (MIT) pour Developer Advocates et conférenciers, fonctionnant comme un module superposé au thème Dream. Gestion des conférences (cartes Leaflet), présentations (PDF, YouTube, co-auteurs), vues dédiées (archives, sujets récurrents, vidéos) et recherche Pagefind. Chaque intervention est un page bundle YAML structuré comme une base de données relationnelle compilée par Hugo. Architecture Airbnb refond son authentification en architecture server-driven, 60 % de code en moins https://www.infoq.com/news/2026/09/airbnb-server-driven-login/ Airbnb a restructuré son authentification autour d'un modèle en deux phases, identification du compte (email, téléphone ou connexion sociale) puis choix du challenge d'authentification décidé côté serveur selon le contexte utilisateur. Ce qui est interessant c'est que choisir la method d'authentification est côté serveur et adaptative, comme si c'était une révolution Arreter là Un moteur de politique serveur sélectionne la méthode d'authentification optimale avec des solutions de repli, permettant des adaptations régionales comme l'OTP WhatsApp au Brésil ou des fournisseurs d'identité locaux en Corée du Sud sans nouvelle version client. Un Challenge Picker propose des méthodes alternatives classées par probabilité de succès en cas d'échec. Résultat chiffré, 60 % de code d'authentification en moins et 100 Ko de moins sur le bundle client web. Méthodologies Les nouvelles règles d'ingénierie du contexte pour les modèles Claude 5 x.com/trq212/status/2080710971228918066 Partage par Thariq des apprentissages sur l'ingénierie du contexte et le prompt engineering pour les nouveaux modèles Claude 5 (comme Claude Opus 5 et Claude Fable 5) utilisés dans Claude Code. Évolution majeure vers le dés-empirement (unhobbling) : plus de 80 % du prompt système de Claude Code a pu être supprimé sans perte sur les évaluations de code, les modèles récents faisant preuve d'un bien meilleur jugement contextuel. Passage des règles strictes au jugement : au lieu d'interdire les commentaires ou d'imposer des contraintes lourdes, les modèles s'adaptent désormais au code environnant et font appel à leur propre discernement. Remplacement des exemples par la conception d'interfaces : fournir des exemples figés restreint l'exploration du modèle, d'où l'importance de concevoir des outils et des fichiers plus expressifs. Adoption de la divulgation progressive (progressive disclosure) : chargement dynamique du contexte (via des compétences ou des outils à chargement différé comme ToolSearch) pour éviter de saturer la fenêtre de contexte avec des instructions fixes. Utilisation d'une mémoire automatique et de références riches (artefacts HTML, suites de tests, fonctions de référence) plutôt que de fichiers CLAUDE.md pléthoriques ou de consignes répétitives. Recommandation pour les fichiers CLAUDE.md et les Skills : les garder légers, se concentrer sur les pièges spécifiques (gotchas) du dépôt, et structurer les guides sous forme d'arborescences modulaires pour ne charger que le nécessaire. Niveau d'adoption des agents IA de codage selon une étude de JetBrains blog.jetbrains.com/research/2026/08/ai-coding-agent-adoption-2026 Adoption massive : 90 % des développeurs professionnels utilisent des agents d'IA de codage au moins une fois par semaine, et 68 % quotidiennement. Claude Code domine : Il devient le nouveau leader du marché avec 39 % d'adoption mondiale (47 % aux États-Unis), détrônant largement ses concurrents. Déclin de GitHub Copilot : L'ancien leader perd de sa superbe, passant de 29 % à 21 % d'adoption, bien qu'il conserve une très forte notoriété (79 %). Percée de Codex : Sa croissance est fulgurante, son taux d'adoption ayant été multiplié par 5 en quelques mois (de 3 % à 16 %). Recul de Cursor : L'outil connaît une légère baisse, passant de 18 % à 12 % d'adoption, principalement due à une forte chute sur le marché chinois. Écosystème diversifié : JetBrains AI atteint 9 % d'adoption. Des alternatives comme OpenCode (7 %) et Google Antigravity (6 %, mais très populaire en Inde à 15 %) continuent de s'implanter. L'IA a cassé les hypothèses de la CI… ou pas https://stack72.dev/ai-broke-the-assumptions-behind-ci/ Paul Stack (ex-Pulumi) explique que l'intégration continue a toujours mêlé deux rôles distincts, exécuter la vérification du code et coordonner les fusions. avec les agents, la pression sur la CI augmente, car ils ne testent pas end to end tout le temps ils ont maintenant des workflows qui verifient tests, lint, revue d'agent etc dans un env local isolé donc c'est pre PR push Il propose de séparer vérification (exécution), attestations structurées (hash de commit, checksums SHA256) et CI, réduite à la validation et à la coordination des fusions. Sa thèse, les agents IA peuvent désormais vérifier tout le code localement avant même l'ouverture d'une pull request, ce qui bouleverse cet équilibre. l'attestation vient ensuite et la CI est une étape de vérification (attestation de commit et de tests et si branche a bougé, repart à l'execution) Martin Fowler, qui a repéré l'article dans ses Fragments du 1er septembre 2026, réplique que la vraie CI a toujours exigé une vérification locale avant de pousser le code. ca demande une chaine d'attestation forte quid de garder les metriques historique de CI Sécurité France Passoire: une analyse sur les différents vols de données des services publics de ces dernières mois https://www.cybernetica.fr/piratage-des-impots-comment-en-est-on-arrive-la/ Analyse du piratage massif de la DGFiP et d'autres administrations françaises en 2026, révélateur de failles systémiques de cybersécurité de l'État. Intrusion détectée fin juin à la DGFiP, mais l'exfiltration de 678 000 entrées fiscales n'a été découverte qu'en août lors de leur mise en vente. Données volées : noms, revenu fiscal de référence, taux de prélèvement, adresse, téléphone. Une seconde attaque du même pirate a visé le cadastre fin juillet, exposant plus de 2 millions de personnes. L'Éducation nationale a aussi été piratée fin juillet, données de tous les agents depuis 2001 exposées. Cause principale : modèle de sécurité fondé sur le périmètre physique plutôt que sur le zero trust, sans contrôle après authentification. Le télétravail post Covid a étendu les accès distants sans reconstruire les modèles de confiance. Aucun système de détection d'exfiltration n'existait, la fuite n'a été révélée que par le pirate lui-même. La transposition de la directive NIS2 est bloquée en France depuis septembre 2025, la CJUE a condamné le pays à des astreintes. L'article souligne un désengagement croissant des Etats-Unis en matière de cybersécurité internationale et une dépendance technologique accrue de la France. Loi, société et organisation Ce que l'IA change vraiment au métier de manager shapeandship.ai/p/ce-que-lia-change-vraiment-au-metier-de-manager Retour d'expérience et analyse par Mathilde Rigabert sur l'impact réel de l'IA générative dans le quotidien d'un Engineering Manager. L'IA excelle pour automatiser la reconstitution factuelle de l'activité (lecture de PRs, commits, reviews) nécessaire aux 1:1 et entretiens annuels, mais elle offre une vision uniquement quantitative et nécessite d'être croisée avec des notes de terrain. L'IA rend le maintien de la qualité et des standards plus difficile : selon une étude Faros AI sur 22 000 développeurs, les PRs mergées sans aucune revue ont augmenté de 31 %, fragilisant la compréhension commune apportée par le pairing et les revues de code. Le temps gagné par l'IA ne permet pas d'augmenter massivement le span of control (seulement 2 ou 3 personnes de plus), car l'IA compresse la collecte d'informations mais pas les conversations humaines complexes ou l'accompagnement du changement. Les compétences d'orchestration et de gestion de sujets multiples acquises par les managers facilitent leur transition vers le pilotage de plusieurs agents IA en contribution individuelle. Le piège actuel réside dans l'accumulation des casquettes (manager, tech lead, product owner, contributeur, pompier), conduisant à l'épuisement et au délaissement du travail de fond sur l'organisation et l'humain. Le temps libéré par l'IA doit être réinvesti dans le travail invisible qui fait tenir le système (suivi des actions de rétro, analyse de métriques, coaching), que personne ne réclame à court terme mais dont l'absence fragilise les équipes à long terme. Je regrette d'avoir migré vers Codeberg xn–gckvb8fzb.com/i-regret-migrating-to-codeberg L'auteur explique pourquoi il regrette d'avoir quitté GitHub pour Codeberg, à la suite des récentes modifications des conditions d'utilisation (ToS) de la plateforme. Codeberg a interdit les projets principalement générés par des LLM ainsi que les projets liés aux cryptomonnaies via des propositions de l'Assembly 2026, au motif qu'ils nuisent à sa réputation. blog.codeberg.org/protecting-our-floss-commons-from… Critique de l'argument de Codeberg sur l'absence de communauté des vibe coders, en rappelant que la majorité des logiciels libres (FOSS) sont créés par des développeurs solos sans communauté au sens romancé du terme. Ironie soulignée concernant la posture de Codeberg et Forgejo, qui a hérité de la communauté de Gitea après un hard fork avant de faire la leçon aux développeurs individuels. Alerte sur le risque de censure idéologique : interdire des catégories entières plutôt que de traiter les abus réels ou la consommation d'infrastructure crée un précédent dangereux pour une forge qui se veut libre. Proposition de solutions alternatives pour gérer l'impact des LLM et de la crypto : déclaration obligatoire via des cases à cocher, hébergement sur des tiers d'infrastructure spécifiques payants ou sous quotas, et disclaimers automatiques. Décision de l'auteur de quitter Codeberg pour mettre en place son propre serveur Git personnel afin d'éviter la dépendance à une plateforme qui modifie ses règles de manière unilatérale. Cloud souverain : Airbus choisit Scaleway pour l'hébergement de ses applications critiques https://www.usine-digitale.fr/aeronautique-spatial/airbus/cloud-souverain-airbus-choisit-scaleway-pour-lhebergement-de-ses-applications-critiques.OHBVBMSZIJELNOKN6G5F6B7NSI.html Scaleway est le cloud provider français filiale du groupe Iliad, positionné comme alternative souveraine aux hyperscalers américains. Airbus a lancé un appel d'offres de six mois consultant une cinquantaine d'acteurs dont OVHcloud, Thales, Google S3NS et Microsoft Bleu. Scaleway a été retenu pour héberger les applications critiques liées à la conception d'aéronefs, l'ingénierie, la production industrielle et les opérations. Le contrat prévoit la migration d'environ 70 applications d'ici 2028, puis jusqu'à 900 applications sur 5 à 6 ans. Le montant du contrat n'a pas été communiqué. Scaleway revendique zéro actionnaire, zéro employé et zéro filiale hors Union européenne pour garantir une protection contre les lois extraterritoriales. Damien Lucas, PDG de Scaleway, évoque une immunité complète face aux évolutions politiques et législatives externes. La plateforme doit aussi accélérer les usages d'intelligence artificielle d'Airbus, avec les modèles de Mistral AI déjà déployés chez Scaleway. Catherine Jestin, responsable numérique d'Airbus, souligne que cette intégration accélère la démarche IA du groupe. Ce choix ne remet pas en cause la stratégie multicloud d'Airbus, Scaleway venant compléter les fournisseurs existants pour les charges nécessitant le plus haut niveau de gouvernance et de résilience. Debian adopte une résolution sur l'usage responsable de l'IA générative lwn.net/Articles/1091231 La discussion sur l'usage des LLM dans Debian s'est tenue du 23 juillet au 13 août 2026, suivie d'un vote du 15 au 28 août 2026. 1045 développeurs Debian étaient éligibles à voter, avec un quorum de 48,49 votes largement dépassé par les huit options en lice. Les options allaient d'une interdiction stricte des contributions générées par LLM inscrite dans le contrat social à une acceptation encadrée des contributions IA. L'option gagnante au classement Condorcet est Responsible Use of Generative AI, devant Allow AI-Assisted Contributions with conditions et A cautious approach to generative AI. Le texte adopté n'interdit ni n'encourage l'usage d'outils d'IA générative dans le développement de Debian. Il exige que toute contribution, quels que soient les outils utilisés pour la produire, respecte les mêmes standards de qualité, correction, maintenabilité et conformité légale. Les contributeurs doivent comprendre, relire, tester et si besoin modifier la production assistée par IA avant de l'intégrer à Debian. Les informations sensibles du projet ne doivent pas être transmises à des fournisseurs d'IA non fiables, et la divulgation de l'usage de l'IA est encouragée sans être obligatoire. Le détail du vote et le texte complet de la résolution sont disponibles sur la page officielle [debian.org/vote/2026/vote_002](https://www.debian.org/vote/2026/vote_002). Contraste direct avec l'OpenJDK, qui a publié une politique interdisant le code généré par LLM (épisode 340), et avec l'auteur de jqwik qui a piégé sa librairie contre les agents. Conférences Nous contacter Pour réagir à cet épisode, venez discuter sur le groupe Google https://groups.google.com/group/lescastcodeurs Contactez-nous via X/twitter https://twitter.com/lescastcodeurs ou Bluesky https://bsky.app/profile/lescastcodeurs.com 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/
Empowering non-technical users to build production-grade applications requires a proactive, secure-by-design architecture. In this episode, Ashish sits down with Marcus Hallberg and Samuel Kelemen, security engineers at the AI software creation platform Lovable, to discuss how they actively secure AI-generated code and protect creators from supply chain risks.Focusing on solutions rather than alarmism, Marcus and Samuel detail their response to an incident where malicious contractors mimicked AI agent commits. They outline their multi-layered defense strategy: securing a predefined tech stack, utilizing integrated security scanners, and tuning coding agents with strict guardrails to ensure secure output by default. The conversation also covers the evolution of the shared responsibility model in the AI era, the critical importance of foundational hygiene like Git commit signing, and the necessary transition from local "YOLO mode" to secure, sandboxed agent environments. Discover how platforms can leverage AI not just to write code, but to actively assist users in finding and resolving security issues through concepts like "CISO agents."Guest Socials - Marcus's Linkedin + Samuel's Linkedin Podcast Twitter - @CloudSecPod If you want to watch videos of this LIVE STREAMED episode and past episodes - Check out our other Cloud Security Social Channels:-Cloud Security Podcast- Youtube- Cloud Security Newsletter If you are interested in AI Security, you can check out our sister podcast - AI Security Podcast(00:00) Introduction to Securing AI App Builders(02:00) Marcus & Samuel's Backgrounds and Roles at Lovable(04:30) Empowering Non-Technical Users to Build 40 Million Apps(08:30) Securing Predefined Tech Stacks and Tuning Coding Agents(11:00) Managing Trust When Customers Hire External Contractors(14:00) Addressing Supply Chain Risks with Synced GitHub Repositories(17:30) Educating Users and Developing "CISO Agents" for Support(24:00) Analyzing the Attack: How Threat Actors Mimicked Agent Commits(31:00) The Importance of Basic Hygiene: MFA and Commit Signing(38:30) Moving Agents from "YOLO Mode" to Sandboxed Environments(46:00) The Buy vs. Build Debate for Internal AI Capabilities(52:30) AI as an Educational Tool and Democratizing SQL Queries(01:05:00) Hobbies, Plants, and Pushing AI to Design 1940s Bridges
CI changed how teams integrate code, but its core promise remains the same: integrate often and keep the mainline green. Andrey and Paulina trace its history and examine how Git, merge queues, and modern pipelines changed the mechanics. We are always happy to answer any questions, hear suggestions for new episodes, or hear from you, our listeners. DevSecOps Talks podcast LinkedIn page DevSecOps Talks podcast website DevSecOps Talks podcast YouTube channel
This week, Chris, Andrew, and David dig into a packed mix of Rails news, developer tooling, and the increasingly complicated role AI is playing in everyday coding. They talk about Herb making its way into Rails, the realities of Rails upgrades and stacked PRs, new approaches to Git hosting and object storage, and how Rails is being evaluated in the age of AI agents. They also get into improvements coming to Action Text, Podia's approach to “flavored” Markdown, the never-ending frustrations of HTML email, and why tools like ArchSpec and Rubydex could become especially useful as more code is generated by LLMs. Hit download now to hear more!LinksChris Oliver XAndrew Mason BlueskyDavid Hill LinkedInJudoscale- Remote Ruby listener giftRails World-Sept 23-24, 2026, Austin, TXAdd Herb as an HTML -aware ERB implementation #58552 (GitHub pull request)turbopufferAgents on Rails: The LLM Benchmark Project (Rails Foundation)Agents on Rails : The First Benchmark ReportTiptapArchSpecRubydexHoneybadgerHoneybadger is an application health monitoring tool built by developers for developers.JudoscaleMake your deployments bulletproof with autoscaling that just works.Disclaimer: This post contains affiliate links. If you make a purchase, I may receive a commission at no extra cost to you.Chris Oliver X/TwitterAndrew Mason X/TwitterJason Charnes X/Twitter
SANS Internet Stormcenter Daily Network/Cyber Security and Information Security Stormcast
Sonicwall SMA1000 Exploited Vulnerability Patched https://psirt.global.sonicwall.com/vuln-detail/SNWLID-2026-0016 SSRF: The Validator Can Lie https://xclow3n.com/post/the-validator-can-lie/ Git Hijack for AI Agents https://www.manifold.security/blog/ai-coding-agents-git-hijack Fronics Deploy Abuse https://www.huntress.com/blog/faronics-deploy-abuse My Upcoming Classes https://www.sans.org/profiles/dr-johannes-ullrich
Welcome to Episode 435 of the Microsoft Cloud IT Pro Podcast. In this episode, Ben and Scott take a lap around what’s new in Power BI, starting with the two MCP servers now in preview, one local and one remote, that can clean up your data model, write DAX for you, and turn a messy pile of tables into an actual usable semantic model. Ben shares how it helped him tame a 44 table QuickBooks Online mess, and why he had way better luck with it than with Copilot in Power BI. From there they get into PBIP, the newer Power BI project file format that breaks a report into files you can actually put in Git and collaborate on like real developers, branches, rollbacks, and all. It has been in preview since 2023 and still lacks solid guidance from Microsoft on wiring up CI/CD, but Ben and Scott dig into why it is worth adopting anyway, even if you are working solo. Your support makes this show possible! Please consider becoming a premium member for access to live shows and more. Check out our membership options. Show Notes Overview of the Power BI MCP servers (Preview) Power BI Desktop projects Git integration Power BI Modeling MCP Server Episode 90 – Power BI and Data Democratization with Alexander Arvidsson Episode 287 – Power BI Field Parameters and Microsoft Entra Optimize your semantic model for Copilot in Power BI Power BI Desktop projects (PREVIEW) Power BI Desktop projects Git integration Power BI projects, Git, and Team Collaboration Sponsors Nasuni is a leading unstructured data platform for enterprises where file data is mission-critical for both people and AI. Nasuni powers the operational file layer where work happens — helping organizations manage, protect, and activate data so teams can work smarter, reduce costs, and operate securely without limits. Intelligink — Would you like to become the irreplaceable Microsoft 365 resource for your organization? Let us know!
Topics covered in this episode: Web UIs for your reverse proxy Wagtail 8.0 is hot off the presses RISC-V is now officially supported by CPython Django's annual releases make every version an LTS Extras Joke Watch on YouTube About the show Sponsored by Logfire from Pydantic: pythonbytes.fm/logfire Connect with the hosts Michael: Mastodon / BlueSky / X / LinkedIn Calvin: Mastodon / BlueSky / X / LinkedIn Show: Mastodon / BlueSky / X Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Tuesday at 7am 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: Web UIs for your reverse proxy Traefik, nginx, and Caddy all sit in front of a lot of self-hosted infrastructure, and all three are configured by hand-editing files. Three active projects put a control plane on top: Traefik Manager (Python + Flask), Nginx UI (Go + Vue), and caddy/ui (React + Node). All three are additive rather than replacements - none of them take ownership of your config away from you - which is the part that matters when the thing has write access to production routing. Traefik Manager is the Python one: Flask 3.1 and Gunicorn for the control plane, a lightweight Go agent for remote instances, currently v1.10.0 with an Android companion app. Nginx UI is a single Go binary at 11.3k stars, with a block-style config editor, an Ace editor doing LLM completion on nginx syntax, and an MCP server so agents can drive it. caddy/ui runs as two containers next to your existing Caddy, reads and writes your Caddyfile directly, and uses Caddy's /adapt API to validate before reload - no Docker socket required. Each one edits the config the underlying server already reads, so your files stay the source of truth and you can drop the UI without unwinding anything. Undo is a first-class feature across all three - timestamped backups with optional Git history, config version compare and restore, Caddyfile snapshots with one-click rollback. Observability is where they diverge: Traefik Manager does CrowdSec and a visual route map, Nginx UI does server metrics, caddy/ui streams access logs over SSE and pulls p50/p95/p99 off Caddy's Prometheus endpoint. Maturity spread is wide - Nginx UI has 11.3k stars, caddy/ui has 4 and was built in a single Claude session - and caddy/ui ships with auth off by default, so set CADDY_UI_USER and JWT_SECRET before it goes anywhere near a public interface. Calvin #2: Wagtail 8.0 is hot off the presses Link: https://github.com/wagtail/wagtail/releases/tag/v8.0 Custom base page models are now supported, so projects aren't locked into subclassing Wagtail's Page as shipped (Matt Westcott). New v3 REST API handles both read and write CMS operations, a first for Wagtail's API. A global registry for permission policies, plus full customizability for the remaining page views via PageViewSet. AVIF and WebP images are no longer auto-converted to PNG by default, a real behavior change to watch on upgrade. Five security fixes: page admin API restrictions, document identification by SHA1 hash, descendant collections in the Documents/Images API, snippet copy permissions, and the page translation endpoint. Formalized Django 6.1 support, and CI now runs on uv with a lockfile. Sponsor: Logfire from Pydantic Your AI agent failed at 2am. Was it the model? A tool call? The database? Most observability tools can't tell you, because they only see part of your stack. Pydantic Logfire sees all of it. One trace across your agents, LLMs, APIs, and database. Down to the infrastructure: services, Kubernetes, and hosts. It's built on OpenTelemetry, with SDKs for Python, TypeScript, and Rust, and it works with any OTel-compatible language. Every prompt, token count, and cost, right next to your vector searches and API calls. You query everything with Postgres-compatible SQL. And so can your coding agent, through the Logfire MCP server. Stop guessing. Read the trace. Pydantic Logfire. AI, it's still just engineering. Visit pythonbytes.fm/logfire today and sign up today. Get 10M records free every month, no card required. You can even click “Onboard with your coding agent” to copy a prompt to have claude or codex integrate Logfire into your app. Thanks to Pydantic for supporting the show. Calvin #3: RISC-V is now officially supported by CPython Link: https://blog.python.org/2026/08/riscv-now-officially-supported/ CPython added RISC-V as a tier 3 platform under PEP 11, specifically the 64-bit Linux target riscv64-unknown-linux-gnu. RISC-V is an open ISA anyone can implement, unlike x86 and ARM, and its market is projected to quadruple by 2032. The RISE Project donated real RISC-V machines for buildbots; the author's work was funded by a Sovereign Tech Agency fellowship. What changes: the port is now a maintained compatibility target, so CPython changes are less likely to quietly break it. What doesn't: no python.org installers, no binary wheel parity for native extensions. Next up: RISC-V runners in CPython CI for pre-merge feedback, then a push toward tier 2, plus architecture-specific optimizations. The ask is testing. If you have RISC-V hardware, build CPython, run your test suite, file what breaks. Tier 3 is the weakest support tier. PEP 11 tier 3 requires a core developer contact and a buildbot, but failures on tier 3 platforms explicitly do not block a release. Saying "ongoing CI/testing expectations" oversells it. The honest bit is "someone is now on the hook for it, and breakage gets noticed," not "it's guaranteed working." Worth the caveat that this is Linux SBCs, not microcontrollers. A VisionFive 2 counts, an ESP32-C6 or Pico 2 does not. Those are 32-bit non-Linux parts where MicroPython is still the answer. Michael #4: Django's annual releases make every version an LTS Starting with Django 2028, Django will move to one January feature release per year, adopt calendar-based version numbers, and support every release for three years. The old distinction between standard and LTS releases disappears, giving teams a predictable annual upgrade path that aligns more closely with Python's own release and support cadence. Every Django release becomes the safe, long-supported choice, so teams no longer need to wait for a specially designated LTS version or absorb two years of changes at once. Each release gets one year of mainstream bug fixes followed by two years of security and data-loss fixes. New releases support the three latest Python versions and add the next Python release during their first year. Calendar versioning begins with Django 2028, followed by Django 2029 and so on. Three Django versions will be supported at any time, giving third-party packages a clearer rolling target. Nothing changes before 2028, and existing commitments for Django 5.2 LTS and 6.2 LTS remain in place. Extras Calvin: The Python docs now document the time complexity of built-in types https://docs.python.org/3.16/library/time-complexity.html Thinking in Python - Bruce Eckel's free book https://thinkinginpython.com/ Michael: prune_uv_pythons.py - Prune uv-managed Python installs, keeping only the newest patch per minor version Runs automatically in my system “upgrade” script: upgrade-output-2026.png Started using Ollama cloud models for my Hermes assistant. Thanks to Jeff Triplett I learned they are not just local models. Joke: The Tao of Programming - Book Seven: Corporate Wisdom
Welcome to episode 369 of The Cloud Pod, where the forecast is always cloudy! Justin, Ryan, and (eventually) Matt are in the studio this week to bring you all the latest news in AI and Cloud, including a new local zone in Vegas, a 20th birthday, and some OAuth news thanks to Cloudflare. There's a lot to cover, so let's get into it! Titles we almost went with this week What Happens In Local Zones Stays Low-Latency When Git Push Comes to Scaling Shove Twenty Policies Walk Into a Role AWS Bets Big on Latency in Vegas Local Zone AWS Hits the Jackpot with New Local Zone Two Decades of Instances, Zero Midlife Crisis EC2 Turns 20, Still Refuses to Retire Happy Birthday EC2, Now With 1,200 Candles Lambda Finally Lets IAM Policies Multitask Like Adults Cloudflare’s OAuth Diet: Trimming the Permission Fat Hugging Face Squeezes Out a 13 Billion Dollar Valuation Bedrock Slashes GPT-5.6 Sol Prices, Wallets Rejoice GitHub’s Capacity Crisis Sparks Retry Storm Reckoning A big thanks to this week's sponsors: We're sponsorless! Want to get your brand, company, or service in front of a very enthusiastic group of cloud news seekers? You've come to the right place! Send us an email or hit us up on our Slack channel for more info. Follow Up 01:45 The August 17 outage, and the work ahead Update on GitHub’s August outages: root cause analysis published for the August 17 incident, which lasted nearly 8 hours and followed an earlier August 6 Actions failure. Root cause identified as a capacity failure, not a code or configuration change: a critical infrastructure component in the Central US data center failed to scale at a new traffic peak, triggering authentication failures and cascading disruption across services including Copilot, which was prolonged by a client-side retry loop. Since April, GitHub has added over 3 million CPU cores and 120 petabytes of storage, and accelerated Azure migration; Azure now handles approximately 58 percent of platform load and half of Git operations, up from 12 percent in May. Monthly commit volume has roughly doubled since April, from 1.4 billion to 2.9 billion, underscoring the scaling pressure behind both incidents and explaining, though not excusing, per GitHub, the repeated failures. Concrete remediation steps include consistent retry limits and budgets across service-to-service calls to prevent retry storms, a review of lower-priority CPU and memory alerts, and continued work isolating critical systems to reduce shared dependencies and blast radius. 03:07 Justin – “It felt a little ‘woe is me, capacity is a problem,' but it feels like more of the same lip service from them… maybe we need to rethink some core fundamentals of how Git works. Git was designed for humans… around human speed and human scale. ” General News 14:03
Enjoy this full chapter about working on Monkey Island, from Jeff's newest book. Monkey Farm: A Summer Among the Macaques Audiobook: Libby Libro.fm Spotify Amazon Audible Apple Books Google Play Kobo Barnes and Noble eBook (DRM-free): Bookshop.org Kobo Kindle Barnes and Noble Canadian friends: I set the retail price at par - $10CAD and $10USD. Anything more is bullshit. Keep looking if a site (like Amazon) is charging exchange rate. It's the least I can do to make up for our bad behavior down here. International (list created with gemini): Rakuten Kobo (Global / Ireland) E-Book (EPUB 3) Ireland / European Union €8.99 Retail / Pre-order Rakuten Kobo Ireland Listing Rakuten Kobo (Belgium / French) Digital Audiobook Belgium / France Direct Purchase Rakuten Kobo Belgium Audio Listing Rakuten Kobo (Netherlands) E-Book Netherlands Direct Purchase Rakuten Kobo Netherlands Listing Rakuten Kobo (Denmark) E-Book Denmark Direct Purchase Rakuten Kobo Denmark Listing Rakuten Kobo (Turkey) E-Book Turkey Direct Purchase Rakuten Kobo Turkey Listing Rakuten Kobo (Belgium / Dutch) E-Book Belgium Direct Purchase Rakuten Kobo Belgium Dutch Listing Booktopia E-Book Australia Direct Purchase (AUD) Booktopia Product Listing Storytel (Indonesia Storefront) Digital Audiobook Global / Southeast Asia Monthly Subscription Streaming Storytel Indonesia Listing Storytel (France Storefront) Digital Audiobook France / Europe Monthly Subscription Streaming Storytel France Listing Storytel (Iceland Storefront) Digital Audiobook Iceland Monthly Subscription Streaming Storytel Iceland Listing Bol.com Digital Audiobook Netherlands / Belgium Kobo Plus Subscription / Purchase Bol.com Product Listing Rakuten Books Japan Digital E-Book Japan Direct Purchase (JPY) Rakuten Japan Product Listing Nextory E-Book & Audiobook Switzerland / Europe Monthly Subscription Streaming Nextory Product Listing The full chapter follows, enjoy and let me know what you think... Chapter 11 - Monkey Island My summer among the macaques ended with a hangover, fresh stitches and a new tattoo. The story of how that happened began before dawn at a boat dock on Saint Helena Sound. The skills I'd acquired at the Yemassee clinic, specifically treating lacerations and fight wounds, had qualified me to work on Morgan Island when needed. The Monkey Farm maintained a colony of rhesus macaques on the island under a contract with the government. The macaques had been relocated to South Carolina from a government breeding facility in Puerto Rico fifteen years prior, after monkeys carrying the Herpes-B virus escaped into the community. After my boss recommended me to the Morgan Island team, the occupational health lab tested me for tuberculosis and hepatitis. The monkeys on the island were disease-free, and the humans who worked there were screened to make sure they didn't infect the animals. The lab also re-tested me for Herpes-B virus, carried by many of the macaques I worked with. Herpes-B was harmless to the monkeys, but could kill me. The re-test confirmed I hadn't been infected by an accidental needle stick the month before. After I stuck myself with that used needle, I rushed back to the clinic and scrubbed the wound with iodine and a stiff brush for ten minutes, then flushed the wound with water for another twenty minutes. Either the monkey hadn't carried B virus or the infection-control procedure worked. Good news! With blood tests out of the way, I was given the dates I would work on Morgan Island and instructions to take the morning boat from Eddings Point. My boss dictated directions. "Take the Carteret Street bridge from Beaufort on the mainland to Lady's Island. Continue on the Sea Island Parkway. Pass Datha, Distant, Warsaw and Polawana Islands. Keep going on to Saint Helena Island. Turn left on Eddings Point Road, go a couple miles across the causeway to Eddings Point Landing. Boat leaves at 6:30 am sharp. Be early because they'll leave you at the dock if you're one minute late." A winding pre-dawn drive across the archipelago of Saint Helena Sound got me to the dock just after 6:00 am. A car and two pickup trucks were already parked in an oyster shell lot between the narrow causeway and the salt marsh. The trucks lit the marsh with their headlights. The beams followed a walkway of planks laid between pilings out to open water where I could just make out a boat tied to a floating dock. Three people I'd never met were ferrying boxes of supplies and bags of Purina Monkey Chow from the trucks to the boat. I got out of my own truck with a duffel bag holding my coveralls and boots. Unsure what do do next, I went and stood next to the walkway, thinking maybe I could help. The three men ignored me as they sleepily went about their stevedoring. The veterinarian I was to assist that day climbed out of a nearby station wagon and trudged slowly over, a bag similar to mine slung over her shoulder. We exchanged sleepy good mornings. She wore a dark knit watch cap. It was September, and the air was thankfully cool after a shatteringly hot Lowcountry August. That heat pushed me down with a heavy weight from dawn to dusk. It was hardest in coveralls, boots and a mask, but even on my days off I stayed indoors in the air conditioning. That August was the first time in my life I didn't want to go outside, even to swim since the body temperature water did nothing to cool me down. Thankfully, September broke the spell. That morning the breeze off the salt marsh was brisk and fresh. We stayed out of the way while the crew finished loading the boat. The one in charge, a big man I hadn't met, turned off the headlights in one, then the other truck. Big Man motioned to us to follow as he crossed the walkway to join the two people already on the boat. His heavy steps made the planks bounce gently between the pilings. I stepped down a short ramp from the fixed walkway to the floating dock. I followed the veterinarian who had already climbed aboard the boat. Free from the glare of headlights, my eyes started to adjust to the pre-dawn light. The simple workboat was sturdily built of white fiberglass. It had a windshield on top of a tiny cabin in the bow. The steering wheel and throttle were mounted next to a ship's compass bolted to the top of the cabin. The letters and numbers of the compass glowed from a soft yellow light inside the compass housing. I could see that we were pointed roughly north. The inboard motor repeated a quiet rumble under an engine box piled with supplies. Big Man quickly untied the lines, bow and stern, and climbed into the boat to take the wheel. He pushed the throttle forward and spun the wheel to the left. The boat rose smoothly on plane as we motored into Jenkins Creek. My eyes now fully adjusted, I could see the glow of sunrise build in the sky to our right, and there was enough ambient light to see our surroundings. We looked up at the top of tall marsh grass speeding by on either side of the Creek. Five months earlier in May, the grass was a green fringe barely above the tidal marshes at the confluence of the Ashepoo, Combahee, and Edisto rivers. The three rivers gave their water and their names to the ACE Basin, a pristine 350,000 acre nursery estuary in Saint Helena Sound. Smack dab in the middle of the ACE Basin sat Morgan Island, the only completely undeveloped island in the estuary. Undeveloped, but not uninhabited. The others on the boat didn't say much as we wound through the creeks and rivers on our way to Morgan Island. Between the early hour and the routine of what was regular duty for everyone else, I was left to watch and wonder. We shot out of Jenkins Creek into the wider Morgan River then turned east. Our bow was pointed toward the sunrise over the Atlantic Ocean beyond. The top edge of the sun broke above the watery horizon. A dorsal fin broke the surface of the water in front and to the right of the boat. A shark! No, sharks don't surf. It was a porpoise. The sleek marine mammal caught a ride on the wave of water pushed aside by our bow until we turned to head north up Parrot Creek next to Morgan Island. Morgan Island is technically six square miles, but only one square mile is high and dry. The rest is marsh. We motored in a long clockwise loop around the island's northern perimeter. At a buoy with a flashing green light, we turned south into the mouth of an unnamed tidal creek that led to the interior. After ten minutes winding through the creek, Big Man pulled back on the throttle. The boat slowed and we putted slowly toward the forested upland of Morgan Island. I pushed to the front of the cockpit to spot the throngs of free-range macaques that must've been gathered on shore to greet us. But weren't. Instead, a sleepy woman took our lines and tied our boat to a simple wooden pier that jutted out of bushes and trees that lined the shore beyond. A second boat was tied up on the other side of the dock, nearly identical to ours but older and more weathered. It was covered in morning dew and had been there all night. The veterinarian motioned me to climb out so the crew could unload. The tide crested during the trip out, so it was a short step up from the boat to the dock. We carried our duffel bags down the dock, walking alongside the woman who'd come to meet us. She wore the dark blue coveralls of an animal care technician. She seemed to wake up and nodded a greeting to me. "Welcome to Monkey Island son! I'm Dianne, you're in for a big day today!" I still didn't know what I was in for, only that my clinical skills had improved to the point where I could 'go out to Morgan for census.' The low morning sun lit the dock, but it was still dark under the trees on shore. I stepped off the pier onto the island proper. The ground was sand mixed with bits of dry organic matter fallen from a dense canopy above. When we stepped into the shadows of the trees we also stepped onto a dense mat of dead leaves, palmetto fronds, and pine needles. The branches of the pine and live oak trees above interlocked with each other to provide support against strong ocean winds. This mesh of branches was a distinguishing characteristic of the island's maritime forest. A perfect habitat for the rhesus macaques I had yet to see. We walked up a trail to a decrepit cabin with a low, sagging metal roof. A tall radio antenna shot straight up from the peak of the roof. It's thin outline was visible against the large white plastic tank of an improvised water tower behind the cabin. The cabin itself was painted a drab light brown that blended with the forest. More so because the paint peeled up in places as if to mimic leaves. A screened porch spanned the front of the building. Through its dusty screen I could see an old plaid couch and a worn yellow vinyl recliner. The veterinarian stepped on to the porch through a crooked screen door. I followed her past the junky furniture through a weathered wood doorframe into the cabin. Its old door was propped open by a rusty metal bucket full of sand bristling with cigarette butts. Most of the cabin was one big room. A slightly less decrepit couch and recliner stood against the back wall next to a kitchen area that held a round wooden table and a few matching chairs. A makeshift office area was to the right of the door. A dented gray metal desk under a cracked sliding glass window held a serious looking two-way shortwave radio set. A thick wire snaked out of the window to the antenna on the roof. The transmitter was surrounded by stacks of paperwork and binders. Above it was a map of the island marked with circles and squares. To the left, open doors led to two small bedrooms on either side of a bathroom. An ancient toilet, the kind with a long chain dangling from a tank on the wall was visible through the bathroom door. The place looked and felt like a remote ranger station on a wildlife preserve, which it sort of was. A weathered man who could've been forty or sixty sat at the kitchen table with a mug of coffee. He looked up from a piece of paper on the clipboard in front of him as the veterinarian walked over. "Mornin' doc. I see you brought the new kid. Hey kid, I'm Jack. Well, I went out this morning and another ten monkeys jumped in the corral last night. That makes 182. Looked like about a third don't have tattoos, but I couldn't get an exact count." Jack's voice held the soft lilt acquired by someone who'd lived here for a while, but wasn't from the Deep South. The veterinarian acknowledged his update and told me to go into the bathroom and change into boots and coveralls. I came out to find Jack gone from the cabin and the vet in her coveralls waiting for me by the door. We walked out to where two of the crew from the boat stood with Diane and Jack between a couple of ancient vehicles I hadn't noticed earlier. The sun shone through the trees on an ancient flat-fender jeep. I loved it at first sight. Either Army surplus or an early civilian model. It was protected from the salt air by multiple coats of whatever leftover paint had been on hand at the time. Where the last coat of beige flaked off, I could see light orange and hints of robins egg blue beneath that. Its windshield frame was long gone. A hole gaped where one headlight had fallen out. There was no roll bar or rear seat. Stuffing poked through the cracked vinyl upholstery of a driver's seat behind a wide metal steering wheel. The passenger had to make do with an old couch cushion set on the floor of the vehicle. A surplus Army trailer painted the same leftover kaleidoscope was hitched to the jeep. It's pickup truck-sized bed held boxes of veterinary supplies. The other vehicle was an old pickup truck so dented and rusted I couldn't tell you more about it. I admired it anyway. As I stood wondering at the make of the truck, a movement back by the jeep caught my eye. I had to stare for a moment before I could spot the young adult rhesus macaque. He crept across the forest floor, halfway to the jeep trailer from the nearest tree trunk. Big Man was in a nearby storage shed even more decrepit than the cabin, where he stowed the last of the supplies from the boat. Everyone else had their backs to the monkey. The macaque crept steadily closer to the trailer, eyes wide, mouth open. I didn't know any better so I just watched. When he got to the trailer, he stood on his hind legs and peered over the side. A hand darted out and snatched a packet of sterile gauze just as Big Man came out of the shed, saw him and yelled. "Yo! Monkey! Git!" The macaque streaked away from the trailer in a three-legged dash, the white paper packet of gauze held to his chest with one hand. I continued to stare dumbly as the other four turned around and watched the thief disappear up into the tree canopy. Big Man chuckled as he walked toward our group. "That one's still at it, huh? Guess he didn't jump into the corral last night." I finally found my words and asked if that was something to look out for the rest of the day. Big Man replied. "Not really. Every so often one of 'em gets more curious than scared and hangs around the cabin. They love to get their hands on anything new and different, so the census trailer is better 'n bananas. No big deal so long as they don't steal anything sharp. You put the syringes and scissors on the bottom, right Jack?" Jack nodded, a smile on his face. Big Man stopped next to Jack who handed him a clipboard. Big Man started the morning briefing. He introduced me as Jeff, there to help the veterinarian. No other introductions as everyone knew everyone except me and it was clear I was the vet's problem. "Ok, me and Karl are on island the next three nights. Jack and Dianne are good to stay overtime this morning, but'll take the day boat back this afternoon as soon as we're finished with census. Dianne, how's everything doing?" "Batteries are at eighty percent this morning, generator ran fine last evening. Propane is good, water tank's three quarters full, next water delivery in a week. The water transfer pump is still on the fritz, but I know what part it needs and'll pick that up before I'm out here next. Did a radio check this morning with Yemassee. Y'all brought plenty of food so you're good for three days." He nodded his thanks, then looked down at the clipboard. "Ok, Monkeys are in Corral C on the southwest side of the island. As of Jack's final check this morning, a total of 182 animals jumped in over two days." He flipped the top sheet over and went through a checklist on the second page. "Ok, cages, sawhorses and plywood are already staged out at the corral. Lights, scales and measuring tapes are in the pickup. So are census records, tattoo equipment and portable generators. Trailer's loaded with vet supplies, gauntlets, and gloves." He looked at his watch, then at us. "It's 7:45, we need to set up by 8:30 so we can census all 180 macaques before noon. 1:00 at the latest if there are hiccups. It's cool now, but the temp is gonna get into the eighties later this afternoon. We don't wanna add heat to the stress they're already under. No breaks, lunch after, ok? Everyone good?" Heads nodded, mine included even though I didn't know what would come next. "Ok, boat crew with me in the truck, last night's island crew in the jeep. We'll go on ahead and set up." Big Man looked at me and the veterinarian. "Y'all walk and meet us there. Take the loop trail and you can't miss it. We'll have your station set up by the time you get there. " I was bummed to not get a ride in the old Army jeep. As I watched it pull away down the rough trail, it bounced over a deep rut. The jeep's rear corner hopped violently because the leaf spring was broken and the body sat hard on the rear axle. Maybe a walk in the woods was better. The veterinarian used the walk to fill me in. Our black rubber boots were nearly silent on sand mixed with pine needles as we walked next to a rutted vehicle trail that looped around the perimeter of the island. The veterinarian started with background. "Pretty crazy place, huh? The government put a breeding colony of 1,400 rhesus macaques on this island in the 80's. It's more than self-sustaining because now there're about 3,000 of them. I say 'about' because they live free-range in dozens of social groups. There's no way to do a complete count when they roam freely over hundreds of acres. There are four corrals around the island, A, B, C and D. We do census in March, June, September and December. The island staff bait one of the corrals with fruit and biscuits for two days. Monkeys living in the area jump down into the corral for fruit and can't climb back out. Take today's census. 182 macaques jumped into Corral C. We treat that group as a sample from all the monkeys living on the island. Then we use statistics to estimate the total population." She looked up from the ground ahead to see if I followed. I nodded in understanding. "Ok, great. During the census today, the staff will inspect, weigh and measure each monkey that jumped into the corral. Every monkey with a chest tattoo has its own census chart in a binder where its weight and such are recorded each time it's captured. If a monkey doesn't have a tattoo, it means it's never been seen in the census. The animal gets a tattoo and a new census chart with its first weight, length, sex, age and health exam. When it's caught again in a future census, its information is recorded on the same chart. Get why it's called a census?" I got it. The official census in the United States worked sort of the same way. Every ten years, census takers go door to door in a neighborhood and record a bunch of information. Not every door, but enough to create a reliable sample. Experts then do the math to estimate the population of the neighborhood, the state and the whole country. I said as much to the veterinarian. "Yes! Exactly! Now, I'm not involved because this is primatology stuff, but as I understand it, data we gather today is sent to Yemassee to be entered into the computer database. From that the population on the island gets estimated pretty accurately. Growth and especially replacement rate too, because animals are shipped out to supply federal research labs." I followed what she was saying, but had questions. I asked if the monkeys ever escaped from the island, and most important to me, why I was there. "Escapes happen but they're rare. Macaques swim, but don't like to cross open water. They're often on the beach or in the marsh hunting for crabs. If they see something floating out in the water their curiosity means they might swim out to it. They've been spotted riding tangled up mats of marsh grass. One was spotted floating on a tree trunk that fell from the island in a storm." The image of an adventurous monkey riding a floating log made me smile. That was one theory for how the remote Galapagos Islands were populated by tortoises and iguanas. We walked past a big corral situated on the inland side of the vehicle trail. A big letter "D" was stenciled in black spray paint on the galvanized metal wall. A huge set of double doors stood open on one end. The corral was empty except for a few broken branches and a feeder stand. We were closer to our destination at Corral C. The veterinarian walked a bit faster while she explained my duties for the census. "When the monkeys jump into the baited corral, they come from different family groups. The monkeys today could be from five, six different troops. That means they're gonna fight. You're here to treat fight wounds. I'll check the animals for disease, teeth issues, joint problems, skin conditions and reproductive health. The rest of the crew will tattoo, weigh, measure and update census charts in the binders. If there aren't many fight wounds, you're gonna work the tattoo table. How's that sound?" That sounded intense but doable. Except for the tattoo part. I told her I knew nothing about tattoos. She smiled and reassured me that if I could stitch up three layers of tissue I could use a tattoo gun. Now I understood why the head vet complimented my suture technique by telling me I was ready to go out to the island. I was going to be a field medic that morning. But one macaque at a time was one thing. 180 was quite another, especially with the time pressure I could sense building in the operation. The dull gray metal of another corral appeared through the trees ahead. So did a flurry of human activity. I inhaled sharply and felt my eyes grow wide in a surge of nervous anticipation. **** Corral C stood on the southwest side of the island in an area dense with pine trees instead of the mix of oaks elsewhere. The trees were mature, two or more feet thick at the base. Their ramrod-straight trunks were spaced wide apart like columns in a giant warehouse. The trunks supported an interlocked roof of pine needles above. The ground was covered in a thick, uniform mat of fallen pine needles. The forest was shadowy and mysterious. A complete lack of underbrush indicated we would stay in the shade even when the sun was high overhead. The low light combined with the sound-deadening effect of the pine forest made the scene next to the corral surreal. The island crew moved through the quiet, dim woods with a quick economy of motion, feet silent on the carpet of pine needles. They had just finished setting up the census equipment and were returning boxes and crates to the truck and trailer parked off to one side. A single long table stretched between the tree trunks. The table was made of four foot by eight foot sheets of plywood laid across a row of tall sawhorses. The table stood above my waist, chest high on the shorter members of the crew. The veterinarian led me toward one end of the table. Mobile exam lights were clamped to the end closest to us, off for now. 25 yards away at the opposite end of the table, a row of three ring binders stood upright like books on a shelf. Hanging scales were suspended from a metal bar mounted above the table next to a collection of measuring tapes and a stack of metal clipboards. Electric hair clippers and a half dozen ink-stained electric tattoo guns were plugged into a long industrial power strip in the middle of the table. A thick yellow extension cord ran from the power strip to portable generators off among the trees. The veterinarian stepped up to the section of table under the lights. It was covered in a sheet of translucent plastic. A crate held dozens of clipboards, each with a blank form. A wire mesh basket held two dozen 100 milliliter bottles of ketamine. Boxes of 50 milliliter syringes stood next to the basket. 50 milliliters was bigger than I was used to for injectables. The veterinarian checked over her section of the table and directed me to do the same the next section over. "Ok Jeff, I'll do triage here under the lights, you'll be right next door treating fight wounds. If there's something you can't handle, or that needs both of us, I'll step over. I want you to make sure your table has all the supplies we use in the operating room back in Yemassee. You think anything's missing, you tell me." My section held a neat arrangement of clinical supplies, already laid out by the island crew. Boxes of sterile surgical gloves in white paper wrappers. Squeeze bottles of iodine, alcohol and sterile water. A pile of blue and white absorbent pads. A deep stainless steel tray held scalpels, surgical scissors, clamps and forceps submerged in alcohol. Boxes of different kinds of individually-wrapped sutures, needle threaded and ready to go in each handy packet. Bottles of injectable antibiotics and one milliliter syringes. A dozen tubes of topical antibiotic ointment. Electric hair clippers plugged into the power strip the next section over. The island team didn't miss a thing as far as I could tell. In fact, I noticed there were many multiples of each item, more than could possibly be required. The redundancy held for the rest of the equipment. Six tattoo guns, two lights, two scales, two generators. We were a fifteen minute drive away from the base camp. An hour by boat and car from Yemassee. Census of 180 monkeys had to happen in four hours or less. Once we started, we couldn't afford to have something break. I shared my realization with the veterinarian who walked me through what was going to happen. "Yeah, you got it. Once this train leaves the station it doesn't stop for any reason. Monkeys'll get run into the cages. You chemically restrain 'em two cages at a time. Once they're unconscious, the crew'll bring em over to me for triage and a health exam. You'll stitch up any fight wounds I find. We pass them to tattoo, then they get weighed, measured, and charted. I'll tell you when to anesthetize the next two cages. We don't stop until we're through all 182." I looked at the long table again. It made more sense. The table was an assembly line for the census process. Clinical evaluation under the lights at one end, then on to stitches, tattoos, weight, height, and record keeping at the other end. "You focus first on anesthetizing monkeys when I tell you, second on treating any fight wounds. Fresh sterile gloves for every monkey, do your best to maintain a sterile field but we're out here in the woods so… be practical. There'll be a ton of activity around you, so don't get distracted. Ok, looks like it's go time." I followed her gaze to where Jack stood next to Corral C. I'd barely noticed the corral while I took in the census assembly line. Next to Jack, one end of a long line of metal cages was bolted to the corral wall. The cages were attached end to end in a single row that extended about fifty yards from the hatch in the corral into the trees. Each rectangular cage was about two feet tall, eighteen inches wide, and three feet long. A pair of vertically-sliding metal doors at the junction between the cages stood open. With the doors between the cages lifted up into the open position, the row of cages formed a fifty yard long continuous tunnel, one end secured to the hatch into the corral, the other end closed off. With a nod from Jack, Dianne pulled the starter cord on a generator. It roared to life with one pull and she walked back toward the census table. As the electricity began to flow, both exam lights came on. An electric hair trimmer buzzed and vibrated on the tattoo table, its switch stuck in the on position. I quickly stepped over and turned it off. The veterinarian and I readied ourselves by putting on blue rubber exam gloves. She told me to set up the ketamine. "Fill a syringe so you're ready. Check the concentration on the bottle, should be 10 milligrams of ketamine in every milliliter. I know you know this, but we always cross check right? Dose at 10 milligrams of ketamine per kilogram of body weight. That means one milliliter of ketamine in the syringe for every kilogram the monkey weighs. No time to change needles between animals, administer multiple doses from the same syringe. Every macaque on the island has an identical serotype, they all carry the same viruses. Watch your technique, you don't want a needle stick all the way out here." As I drew 40 milliliters of ketamine into each of two big syringes, Big Man walked to the closed-off end of the cage tunnel. He walked back toward the corral, double-checking the cage-to-cage connections. When he got to Jack, he looked at his watch, then over at the rest of us where we stood by our stations. He yelled over the noise of the generator. "Ok! Everybody ready?" I nodded and assumed the rest of the team did too because Big Man nodded at Jack. Jack reached down and grabbed a loop of rope on the hatch in the corral wall. He jerked it and the hatch slid straight up. Now there was an opening from the corral into the tunnel of cages. For a moment nothing happened. Then a single monkey shot through the hatch and ran down the cage tunnel at full speed. Three heartbeats later, the remaining 181 monkeys streamed through the hatch in a continuous head-to-tail line. The hole in the side of the corral was their way out, they had no idea it led to confinement instead of the forest. The metal cages rattled from the force of this freight train of monkeys running as fast as they could down the tunnel. When the macaque leading the train reached the end of the line, he came to a stop next to the solitary monkey that ran out first. The rest piled up behind them, shoving them together into an awkward embrace. The momentum of the monkey train pressed the 182 macaques into a solid column of red fur, limbs, and angry faces. The rattle of metal on metal stopped as suddenly as it started. Jack pushed the hatch closed to cut off the possibility of retreat back into the corral. He and Big Man gently pushed the sliding doors closed at each junction between cages, sometimes giving quiet encouragement to the monkeys to "get out of the way." When they got to the end, the 182 monkeys were divided three or four at a time in each of the 50 cages. I looked over at the veterinarian at her station. She'd taken off her watch cap and tied her hair up. Her face was all business in the harsh white of the exam lights. She nodded back at me. "Two cages. One milliliter per kilogram intramuscular. Go." My hyper focus kicked in. I started to estimate weight and calculate doses as I walked over to the two cages at the end of the row. I was sure a small young female was three kilograms. That meant three milliliters. I uncapped the needle, pointed the syringe up and flicked it with an index finger. A bubble rose to the top. I pushed the plunger until the air bled out and a droplet of ketamine sparkled at the tip of the needle. The female rhesus was squeezed into a cage with three others. She helpfully squirmed away to hide her vulnerable face and belly from me, so it was straightforward to inject three milliliters into the muscle of her thigh. Next was a medium sized male, nine kilograms. After injecting nine milliliters, the plunger was at 27. A smaller male looked to weigh seven kilograms so his dose of seven left 20. The fourth macaque in the cage was another young female. Four kilograms, four milliliters. I finished the first cage with 16 milliliters of ketamine left in my syringe. The three kilogram female, the first monkey I'd anesthetized, was already getting drowsy so I kept going through the second cage. Slow is smooth and smooth is fast. Somewhere behind me somebody yelled out the time. "8:40! We have until 9:00!" It was Big Man over at the census table next to the scales. He called out the time I finished anesthetizing the first macaques. This let everyone know how much time we had to get them through the census process. Anthony, one of the crew from the boat appeared next to me. "Go on, head back and get ready. I'll watch 'em and bring them over when they're unconscious." Back at my fight wound station, I ran my eyes over the supplies one last time, plucked a packet of sterile surgical gloves out of the box and spread a blue and white pad on the table in front of me. Back at the cages Anthony unfastened two latches on the top edge of the cage and folded the whole side down. A random unconscious arm and a leg or two flopped out when the cage opened up. He gently picked up the little three kilogram female and carried her over to the veterinarian, then hustled back to shuttle the remaining macaques from cage to table. The vet did a thorough check for wounds and broken bones. Finding none, she proceeded with the health exam, jotting down quick notes about teeth, eyes and skin on a clipboard taken from the crate next to her. She raised her voice a bit to be heard over the generator. "Young adult female, no fight trauma, no tattoo." Someone, maybe Jack, took the clipboard and whisked the monkey away to the tattoo table. I heard a shaver start to buzz. The veterinarian was through the next monkey in a flash. This one already had a tattoo so was taken to the scales. The third monkey had been in a fight. "Young adult male, fresh laceration on right rear upper thigh, no health issues, no tattoo." She beckoned for me to come take the animal. I carried him to my table and gently laid him down on the pad. The wound on his rear thigh meant he'd been running away from a more aggressive male when he got it. It'd been about five minutes since I knocked him out, so I needed to move quickly. The laceration was new, through the top layer of skin, about an inch and a half long. A small amount of blood had just begun to clot at one end. I used my electric clippers to shave the hair away from the cut. I squirted iodine on the wound and the skin around it, then wiped it away with gauze. Next, I opened up the appropriate suture packet and set it next to the monkey. Time to get mostly sterile. I put fresh surgical gloves on over my blue rubber exam gloves. I chose a pair of forceps from the metal tray full of alcohol and set about stitching up the wound. I don't remember the details of suturing, only that at the time I was proud of my ability to close a wound leaving only neat knots under the skin. The absorbable suture material would hold until the wound healed, then dissolve into the surrounding tissue. The macaque couldn't tear his stitches out. This was a big deal, since Monkey Island was no place for the cone of shame you see on a dog or cat. The wound wasn't deep or old enough to warrant injectable antibiotics, so I finished with a smear of topical ointment. The vet saw me strip off the surgical gloves. "Good job Jeff. One down, but we gotta keep moving, I have another one here for you." Someone from the tattoo table appeared and took the young male to get his first ink. I put down a fresh absorbent pad and picked up my next patient from the veterinarian's table. This one was in worse shape but would be ok. The wound was a deep tear with three flaps of skin instead of a simple laceration. It was on his left shoulder, which meant he faced his foe when it happened. The wound was older too, probably from a full two days ago when the corral was first baited. I had to shave away clumps of hair matted together by thick clots of blood before I could tell if there were signs of infection. Some of the tissue was dead, necrotic, so I used scissors to trim it away. The tear was wide at the surface, but had made a small hole in the deepest third layer of skin. I could see muscle and tendons through the opening. I used different kinds of sutures to close each of the three layers, starting with the deepest subcutaneous and working my way back up. By the time I finished stitching up the monkey with the bad tear in his shoulder, two more were in line behind it. The veterinarian joined me at my station and we took care of those two together. Half of the initial eight monkeys had fight wounds. If that kept up it was going to be a long day. As it turned out, less than a quarter had some sort of wound, none of them worse than the tear I'd just treated and most required only a few stitches. Thankfully no broken bones. Still, that was forty macaques, so the rest of the morning was a blur of ketamine injections and wound closures. A couple of times the action slowed enough for me to step over to the tattoo table. I wasn't qualified to give a young monkey its first chest tattoo, but they let me freshen up the faded letters and numbers on older animals. I shaved away the soft hair and disinfected the monkey's skin with alcohol. The tattoo guns seemed ancient, but they all worked. A small electromagnet vibrated a needle up and down in a guide. I dipped the tip of the gun in black ink then gently ran the buzzing needle over the skin and wiped away the small amount of blood that rose to the surface. It was harder than it looked. The unconscious monkeys seemed to always be in an awkward position. Their elastic skin moved around easily. I don't know how many tattoos I made better, but I didn't make any worse. A few years later I got my own first tattoo. The artist used exactly the same equipment and procedure we used on Monkey Island. The five person island crew took turns doing all the jobs. They busily weighed each monkey, measured bodies, arms and legs. They noted evidence of recent pregnancy. The sexual maturity of young monkeys was observed and logged. Whoever was doing the measurements calmly called out a constant stream of information to record keepers who listened and wrote it down on the correct chart. Every macaque went through the census process in less than twenty minutes. That meant they still had some time to sleep off their chemical restraint before rejoining the family group they left when they jumped into the corral for a banana days before. When a macaque had been through the entire process, it was still unconscious from the ketamine. Or at least in the immobile and dissociated state ketamine causes. The animal was carried out into the forest and laid gently on its side in a warm spot of sunshine. Still close enough to keep an eye on, but far enough away from the census table so they wouldn't freak out when they woke up. Since the animals were in a vulnerable state, each monkey was placed a safe distance away from other macaques also recovering from anesthesia. At the peak, there must've been forty monkeys spread across the soft pine needles of the forest floor. I did my best not to anthropomorphize the macaques in my time with them. I followed the policy against seeing them as primate relatives. My colleagues had a harder time keeping their emotional distance. Animal care and more so behavioral care technicians interacted with the macaques when they were more endearing. Hungry. Curious. Nurturing. Annoyed. Caring. Playful. I was a veterinary technician. We interacted with the macaques when they were defensive or aggressive. When their behavior was closer to what you think of as 'wild animal.' It was easier for me to see them that way. But the one time I felt kinship with my fellow primate? When I watched them wake up from anesthesia in the forest. It was quite the scene. A young male monkey, let's call him Chad, slept peacefully on his right side on a bed of soft pine needles in a spot of warm sunlight. Chad was big for his age and his muscular arms and legs had been arranged gently to one side. His head rested at a comfortable angle, though his mouth was open and his tongue drooped out. He was perfectly still for many minutes, as if he would sleep forever. Then movement. A leg extended slowly, almost a stretch. An arm pulled in and curled against his chest. After a moment, Chad lifted his head an inch off the ground, eyes closed, tongue still out, then laid it back down. Head back up, this time mouth closed and eyes half open as he became aware of his situation. Chad lifted his head higher and opened his eyes all the way. He pulled his arm under him to push himself up. His head and torso wobbled unsteadily, propped on that arm. A groggy expression of surprise came over Chad's face as if he had no idea where he was or how he got there. His eyes rolled from side to side. After a long moment propped on one arm, Chad shifted his weight onto his butt. Monkeys usually sit on their haunches with their legs gathered underneath, so he looked silly with his legs splayed out to the sides. He planted his other arm and clumsily pulled one leg at a time underneath his butt, still supporting himself with his arms planted on the ground. Chad stayed in this 'dude where am I' position for a while as the fog wore off. His expression drifted between drugged, confused and a grimace of distaste from his dry mouth. When he picked his hands up off the ground and could balance upright, Chad started to come around cognitively. He could take in his surroundings, though still he still wobbled unsteadily at times. His face took on a very clear 'where the hell am I and how did I get here?' expression. The ketamine wore off faster now. Chad looked down at his chest where it stung from the tattoo gun. His face grew concerned as he lifted a hand to touch his fresh ink. Chad looked up with a pained almost regretful expression as he processed the fact he had a new tattoo. His hand went from his chest up to his left shoulder. He turned his head to peer down at fresh stitches in a two inch laceration. Chad seemed less puzzled about the fight wound than the tattoo. At this point the acute effects had faded. Chad wasn't wobbling any more, at least while he remained seated. He looked around again, this time he noticed the half dozen other unconscious monkeys nearby. His eyes grew wide. That was not good. At all. Time to get out of there. Chad lurched up on all fours. The sudden transition to vertical caused him to sway left, then right. He evened out, and after one last look back at his unconscious cousins, Chad walked off into the forest with a hangover, fresh stitches, and a new tattoo. ***** Find out what happened next in the full book Monkey Farm: A Summer Among the Macaques!
Mike & Tommy dive into Power BI Desktop Bridge, breaking down what it actually solves, where it fits in your stack alongside Desktop, Service, Fabric, Git, and deployment pipelines, and what it really takes to make it run like a Ferrari for your team.They tackle the hard questions — whether Desktop Bridge exposes weak development habits faster than it fixes them, how to keep speed from turning into chaos, and what governance guardrails every BI lead should have in place before rolling it out broadly.Read more: https://promptingbi.com/2026/08/19/design-the-report-from-the-meeting-you-already-had/News:Enhanced Data Agent Visualizations with Fabric Visuals (Preview)Connectivity Patterns in Microsoft Fabric: A Guide for Data Integration WorkloadsGet in touch:Send in your questions or topics you want us to discuss by tweeting to @PowerBITips with the hashtag #empMailbag or submit on the PowerBI.tips Podcast Page.Visit PowerBI.tips: https://powerbi.tips/Watch the episodes live every Tuesday and Thursday morning at 730am CST on YouTube: https://www.youtube.com/powerbitipsSubscribe on Spotify: https://open.spotify.com/show/230fp78XmHHRXTiYICRLVvSubscribe on Apple: https://podcasts.apple.com/us/podcast/explicit-measures-podcast/id1568944083Check Out Community Jam: https://jam.powerbi.tipsFollow Mike: https://www.linkedin.com/in/michaelcarlo/Follow Tommy: https://www.linkedin.com/in/tommypuglia/
PHP Podcast – August 20, 2026 Hosts: Joe Ferguson, Sara Golemon & Holly Schilling Shirley MacLaine is the answer — but what’s the question? RAM prices went up 500%, GitHub fell over for eight hours, and the crew figured out how you can actually contribute to PHP. Glasses optional. Shirley MacLaine, Green Room Shade, and the Show’s New Normal The episode opens with Joe flustered — not because it’s a “flustered day,” but because there’s shade being thrown in the green room backstage chat. Rather than spoil the drama, the crew turns a mysterious green-room answer into a running bit: “Shirley MacLaine” is the answer, and listeners are invited to submit what the question was. It’s declared the first round of PHP Architect’s Jeopardy, complete with its own Easter egg sound cue. Joe also lays out where the show is heading. Eric and John took over the podcast the previous week to relive their glory days, and the plan is for the old guys to step back to roughly one episode a month. Joe and Sara are working on something to fill one slot, another mystery show is in the works pending signed contracts, and Alive and Kicking is confirmed still alive and kicking after a great recent episode with Derek. Joe also plugs the PHP 8.6 Beta 1 tag and Scott Keck-Warren’s PHP Community Podcast interview with release managers Daniel Scherzer and Matteo Bacotti. The RAM Apocalypse: 500% in Twelve Months The big topic of the week is the ongoing memory and chip crisis. Memory prices have climbed 500% in twelve months, and the crew commiserates about the parts they wish they’d bought bigger. Sara explains the brutal math: you can’t build a semiconductor fab fast enough — two or three years minimum — and by the time one comes online nobody knows if we’ll have overproduction or a burst bubble. Worse, Sara notes that essentially every RAM stick through the end of 2027 is already accounted for and sold to vendors. The ripple effects are everywhere. Console prices are going up instead of down late in their cycle, with next-gen consoles projected to start at $1,000 or more. The hobbyist single-board computer market is getting crushed — Pine64 announced they’re stepping back from making hardware, and a Raspberry Pi 5 that debuted cheap now runs over 100 pounds. Holly’s new PC, bought at the start of 2025, ended up shipped 3,000 kilometers the wrong way to California and is stuck awaiting import paperwork, leaving her leaning on a laptop and some now-precious Raspberry Pi zeros. The nostalgia gets thick as the crew reminisces about DIP chips, EDO RAM, Pentiums, Epson 486s, Tandy 1000s, and the TRS-80. Special venom is reserved for Packard Bell (“utter freaking trash”) and Gateway 2000’s cow-pattern branding — which Sara confirms sold better in Wisconsin than anywhere, though hay bales in a Berkeley storefront still boggle the mind. A chat comment about technicians de-soldering and reballing BGA RAM chips becoming economically viable gets a hearty “absolutely.” Memory-Aware Development and Why PHP 7 Doubled Down Bringing the RAM crisis back to PHP, Joe wishes more developers were aware of how their applications consume and release memory — a lesson he credits to learning enough C back in the day, where you have to manage memory yourself. He connects sloppy memory awareness to the N+1 query problems web developers keep tripping over. Sara drops a great deep dive: a significant reason PHP 7 was roughly twice as fast as PHP 5 was changes in the memory layout. Every variable became referenced by one fewer pointer, and while eight bytes sounds trivial, every level of indirection adds time across every single instruction and access. Sara adds the CPU-level detail — one layer of indirection can be a single instruction on most architectures, but adding a second layer can push a lookup from one instruction to three. That leads into a warm tangent about learning C to become game developers. Sara’s evergreen joke: “I’m going to be a game developer” is the programmer’s version of “I’m going to buy a bar.” Great people, brutal hours, endless competition, and the reality of hitting spacebar 400 times to figure out why you can phase through a wall. The cat-reading-the-paper “I should buy a boat” meme makes an appearance to seal it. The GitHub Outage and the Monoculture Problem Monday’s eight-hour GitHub outage hit the crew directly. Holly couldn’t use a site that only offered “log in with GitHub,” and Joe got kicked out of his CLI auth session mid-PR with no way to re-authenticate. To GitHub’s credit, they published an incident update and a follow-up blog post: a service auto-scaled so aggressively to handle network traffic that the sidecar and supporting services couldn’t keep up, bringing the whole thing down. The conversation turns to whether this is self-inflicted. Joe recalls GitHub’s pre-Microsoft, gold-standard reliability and wonders aloud how much the decline lines up with Copilot’s arrival and internal AI adoption, with uptime reportedly slipping below a single nine at points. Sara defends them somewhat — the number of actions, CPU cores, and pull requests has genuinely hockey-sticked, partly because AI has emboldened people who previously wouldn’t have opened a PR. But as Joe puts it, the call is coming from inside the house, since GitHub itself has been pushing AI. On alternatives, Joe says the least-jarring migration for PHP Architect’s clients would be self-hosting GitLab, since GitHub Actions and GitLab runners are nearly identical in syntax — Atlassian’s Bitbucket, by contrast, is a bridge too far, mostly because the entire ecosystem assumes you’re on GitHub. Sara names this the core problem: monoculture. The crew discusses package mirrors, local caches, 12-factor thinking, and Composer’s support for custom mirrors, all while remembering the PHP repo intrusion years ago that came from an unmaintained self-hosted Git server. The takeaway: owning your pipeline end-to-end is the only way an outage can’t stop you — and Joe teases spinning up a self-hosted GitLab now that “the boss” (Sara) has signed off. How to Contribute to PHP (and Handling Security Reports) The crew highlights two PHP Foundation blog posts. First, Matt Stauffer’s “How to Contribute to PHP,” adapted from a talk he gave at Atlanta PHP. It goes well beyond “learn C,” clearly separating the PHP project, the PHP ecosystem, and the Foundation, and lays out approachable on-ramps: testing pre-releases (PHP 8.6 Beta 1 is out, Beta 2 lands next week), improving documentation, and writing tests — which, spoiler, are written in PHP, not C, using PHP’s own test format that’s simple enough to learn from any single example. Other contribution paths include triaging and reviewing issues across PHP repositories — invaluable work that frees core developers from wading through AI-generated slop bug reports — and participating in internals via the well-documented mailing list process, up to and including running for release manager (8.7 managers will be needed before you know it). Sara points folks to discord.phpc.chat for the PHP Discord, with dedicated Internals and Foundation channels for anyone the mailing list intimidates. Second, Sebastian Bergmann’s “So you received a security report. Now what?” is a jump-around reference for application developers rather than a front-to-back read, walking through roughly ten steps to triage, validate, and resolve reported issues the right way. Sara shares a real-world example from mobile: a flagged package that was only exploitable on a rooted device with an actively hostile package installed alongside it — a very different risk profile than a SQL injection on an API endpoint. Cue reminiscing about writing SQL against Access databases over ODBC from PHP (and Perl) back in the 90s, and Joe’s advice for handling any security report: don’t panic, and always know where your towel is. Links from the show: PHP Tek 2027 — April 27–29, 2027 in Chicago; early bird tickets & hotel available now PHP Tek 2027 CFP Audio versions of the podcast at phparch.com Join us live on Discord at discord.phparch.com PHP Discord — discord.phpc.chat Community Corner Podcast: PHP 8.5 + 8.6 Release Manager Daniel Scherzer Memory prices climb 500% in 12 months So You Received a Security Report. Now What? How to Contribute to PHP Shirley MacLaine Host: Joe Ferguson Mastodon: @joepferguson@phpc.social PHPArch.me: @svpernova09 Sara Golemon Mastodon: @pollita@phpc.social Holly Schilling Mastodon: @TheCodeLorax@tech.lgbt Streams: Youtube Channel Twitch Connect & Hire PHP Architect Website Twitter/X Mastodon Hire PHP Developers Looking to hire PHP developers? Email support@phparch.com – Joe and the team are available for consulting, infrastructure work, Ansible playbooks, and code review. Partner This podcast is made a little better thanks to our partners Displace Infrastructure Management, Simplified Automate Kubernetes deployments across any cloud provider or bare metal with a single command. Deploy, manage, and scale your infrastructure with ease. https://displace.tech/ OurCVEs Your security posture, on autopilot with OurCVEs CodeRabbit Cut code review time & bugs in half instantly with CodeRabbit. PHP Architect Consulting Your PHP codebase deserves a partner, not a contractor PHP Architect provides long-term technical partnerships for organizations that need senior-level PHP expertise that you can depend on https://www.phparch.com/consulting/ Music Provided by Epidemic Sound https://www.epidemicsound.com/ Join Us Live Next Week Youtube Channel Got feedback? Join us on Discord at discord.phparch.com The post The PHP Podcast 2026.08.20 appeared first on PHP Architect.
Sometimes the best conference conversations start with a weird idea. Rachael Wright-Munn and Andy Andrea join me to revisit a moment at RubyConf when Andy's experiment with schemas and MCP tools collided with a problem Rachel had been trying to solve for Ruby Events: how to make Rails generators easily accessible to AI. What started as an excited post-talk conversation quickly became an in-person pair programming session, and eventually working MCP tooling that Rachel now uses to maintain Ruby Events. The result has reduced some event updates from more than an hour of manual work to roughly 10–15 minutes. They dig into how MCP tools work, why wrapping deterministic Rails generators can make AI workflows more reliable, and the tradeoffs between MCP, CLIs, skills, and letting models manipulate files directly. The conversation expands into harness engineering, metaprogramming, Git worktrees, dev containers, tool calling, and the strange reality that even developers deeply immersed in AI still feel like they're constantly trying to catch up. It's a conversation about Ruby, AI, developer tooling—and the kind of serendipitous collaboration that still makes getting together at Ruby conferences so valuable. ** Sponsor ** Judoscale - https://judoscale.com
Welcome to episode 368 of The Cloud Pod, where the forecast is always cloudy! Justin, Matt, and Ryan are in the studio this week, and the major story is the GitHub outage – are you still digging out from that one too? We have MANY thoughts. Plus, we have news from EKS, CloudShell, and some major Microsoft changes to the Copilot ecosystem. There's a lot to cover, so let's get started! Titles we almost went with this week Amazon Quick Crashes Microsoft’s Copilot Party Bin-Packing Pods Like a Kubernetes Tetris Champ AWS Agents Go GA and Grab Your Wallet AWS Finally Shows You The Money Trends AWS Hands Out Power (User Access) Like Candy AWS Builds Lofts, Developers Build Everything Else Front Door Now Checks IDs Before Letting Traffic In CloudShell Ditches Vim, Editors Rejoice Everywhere AWS Sign-In Gets a Facelift, Scripts Get Nervous Azure Front Door Gets Mutual TLS, Trust Issues Resolved One Copilot to Rule Work and Play GPT-5.6 Sol Hits Warp Speed With Cerebras OpenAI Ditches Overnight Batches for Ultrafast Gratification Ultrafast API Proves Speed and Smarts Aren’t Rivals Terraform Plans Meet Their IAM Autopilot Match AWS Autopilot Now Reads Your Terraform Tea Leaves A big thanks to this week's sponsors: We're sponsorless! Want to get your brand, company, or service in front of a very enthusiastic group of cloud news seekers? You've come to the right place! Send us an email or hit us up on our Slack channel for more info. Follow Up 01:02 Microsoft confirms GitHub is down worldwide GitHub confirmed a widespread Github outage starting at 9:40 AM EDT on August 17, 2026, affecting web, API, Actions, Pull Requests, Issues, Webhooks, and authentication services including SAML, OIDC, and SCIM. As of the 11:42 AM EDT update, GitHub has moved into mitigation mode, but error rates remain unchanged at roughly 20% for web and API traffic and approximately 50% for archive and raw repository content downloads. Copilot was added to the list of affected services at 10:31 AM EDT, extending impact beyond core Git functionality into GitHub’s AI coding tools. Git Operations, Packages, Pages, and Codespaces remain listed as operational, indicating the outage is concentrated in specific service areas rather than the entire platform. GitHub has not disclosed a root cause, and the incident remains under investigation, meaning listeners relying on CI/CD workflows through Actions should expect continued disruption until further updates are posted. Complicating factors that impeded recovery included a number of scraping attacks on codeload endpoints. To prevent recurrence, our follow-up actions include: Correcting autoscaling policies to account for service-mesh sidecar concurrency and capacity. Auditing Istio request, concurrency, and scaling limits across affected services. Reviewing retry limits and backoff behavior across gateways and clients. Addressing the VS Code retry behavior that amplified Copilot token traffic.
Send us Fan MailA supply chain attack that leaves your Git history spotless should change how you think about “secure code.” We walk through ChainDrop, a worm discovered in the NPM ecosystem that poisoned 444 packages while evading the places defenders usually look. The unnerving twist is that it can trigger without a classic npm install and can hide in the space between your repository and the package archive your CI/CD pipeline actually pulls, which is exactly why code review alone can't be your finish line.From there, we tie the real-world scenario directly to CISSP Domain 8 Software Development Security and the secure SDLC. I lay out a clear, exam-friendly framework for assessing third-party and acquired software risk: Software Composition Analysis (SCA), Software Bill of Materials (SBOM), vendor and publisher risk assessment, and runtime plus pipeline controls. We talk about why SCA is necessary but incomplete, how a living SBOM enables fast exposure checks when a new campaign hits, and why Executive Order 14028 is pushing SBOM adoption into “expected” territory for many organisations.We also get practical about CI/CD pipeline security: dependency pinning, trusted publishing workflows, signed commits, OIDC, and package signing and verification approaches like Sigstore and Cosign. Finally, we run through scenario-based practice questions that highlight common CISSP traps and the manager mindset the exam rewards. If you want more episodes like this, subscribe, share it with a developer or security lead, and leave a quick review so more CISSP candidates can find the show.Gain exclusive access to 360 FREE CISSP Practice Questions at FreeCISSPQuestions.com and have them delivered directly to your inbox! Don't miss this valuable opportunity to strengthen your CISSP exam preparation and boost your chances of certification success. Join now and start your journey toward CISSP mastery today!
Hace unos meses empecé a usar presentaciones para grabar el podcast, y enseguida me di cuenta de que el verdadero problema no es pensar el contenido, sino maquetarlo. Pasaba más tiempo ajustando fuentes, colores y transiciones que preparando lo que realmente quería contar. Así que me puse a buscar una solución, y lo que encontré me ha cambiado el flujo de trabajo por completo.En este episodio te cuento cómo he montado typst-ia, un script en Python que genera presentaciones completas en segundos. Le dices un tema, la inteligencia artificial se encarga del contenido, y Typst lo convierte en un PDF impecable. Todo desde la terminal, sin abrir PowerPoint ni Google Slides, sin suscripciones mensuales, y con un control total sobre el resultado.Typst es un sistema de composición moderno escrito en Rust que compila en milisegundos. Sí, has leído bien, milisegundos. Comparado con LaTeX Beamer, que tarda 5 o 10 segundos en compilar, Typst es un antes y un después. Además, su sintaxis es mucho más limpia y fácil de aprender. En el episodio lo comparo con LaTeX y con Markdown, y te cuento por qué creo que Typst se está convirtiendo en el estándar para presentaciones técnicas.La clave del proceso está en el system prompt. Incrusto el template real de la presentación dentro del prompt que le envío a OpenRouter, y la IA genera código Typst válido sin necesidad de retoques. Uso DeepSeek Chat por defecto —cuesta unos 14 céntimos por millón de tokens de entrada, que vienen a ser cientos de presentaciones por menos de un euro—, pero también puedes usar Claude Sonnet, Gemini Flash o Llama 3.3 si necesitas más calidad o prefieres un modelo concreto.El script completo son unas 200 líneas de Python sin frameworks, solo con la librería requests. Te explico paso a paso cómo funciona el pipeline: lee el template, construye el prompt, llama a OpenRouter, limpia la respuesta, escribe el archivo .typ, lo compila a PDF y lo abre en el visor. Y todo con flags para personalizar el número de diapositivas, el modelo, el nombre del archivo y hasta los reintentos si la compilación falla.Para rematar, hago una demo en vivo generando una presentación desde cero. Ves cómo en cuestión de segundos pasamos de una idea a un PDF listo para proyectar. Y lo mejor es que el resultado es texto plano, versionable con Git, editable con cualquier editor, y sin ningún tipo de lock-in. Si mañana quieres cambiar algo, abres el .typ y lo tocas.Si eres de los que hacen presentaciones técnicas, charlas, workshops, o simplemente quieres automatizar una tarea tediosa, este episodio te va a gustar. Y si nunca has oído hablar de Typst, te vas a llevar una sorpresa.Capítulos del episodio:0:00 - Introducción: presentaciones con Typst e IA2:52 - El problema de las presentaciones tradicionales5:20 - Typst: el sistema de composición moderno7:34 - Typst vs LaTeX vs Markdown8:31 - Instalación de Typst9:28 - Plantillas para presentaciones con Typst12:52 - OpenRouter y el prompt para la IA15:28 - El script Python: el pipeline completo17:41 - Demo en vivo: generando una presentación24:17 - Conclusiones y despedida
Nathan Sobo joins Scott and Wes to explain why Zed was built in Rust, how GPUI works, and what happens to editors once agents write most of the code. They also talk about DeltaDB, Zed's new Git-compatible version control system, and Delta, the collaborative agentic editor it powers. Show Notes 00:00 Start 00:35 Welcom to Syntax 01:13 The Journey to Zed: Building the Ultimate Tool 03:26 Why Rust was chosen for Zed? 06:29 Brought to you by Sentry! 07:07 Building a UI from scratch in Rust GPUI 15:55 AI's role in coding and development 18:42 The role of text editors in the age of AI 21:52 Delta DB: The vision for collaborative development DeltaDB 29:06 The Evolution of Collaborative Coding 44:45 The Future of User Interfaces 52:42 Sick Picks + Shameless Plugs Sick Picks Scott: Wes: Nathan Sobo: Keychron Q11 Grant Green - Idle Moments Shameless Plugs Scott: Wes: Nathan Sobo: DeltaDB Hit us up on Socials! Syntax: X Instagram Tiktok LinkedIn Threads Wes: X Instagram Tiktok LinkedIn Threads Scott: X Instagram Tiktok LinkedIn Threads Randy: X Instagram YouTube Threads
In this episode we talk with Andrea Moro about Git, GitHub, and version control for researchers. Andrea is an Associate Professor of Economics at Vanderbilt University, where he specializes in labor and political economy. He also serves as Data Editor at the Review of Economic Studies. His research combines theoretical and empirical methods, with current work on jury selection and minority representation. Outside of research, Andrea creates literary concordances for Dante's Divine Comedy and James Joyce's Ulysses.Sebastian Tello-Trillo is an Associate Professor of Public Policy and Economics at the Frank Batten School of Leadership and Public Policy at the University of Virginia. Alex Hollingsworth is an Associate Professor of Economics at the Ohio State University. Henry Morris is our main editor. He is a student at the University of Virginia studying computer science and mathematics.In this episode we discussed:What Git and GitHub are and why they matter for researchersThe difference between version control and file storage (GitHub vs. Dropbox)How to create repositories, commit changes, and manage branchesResolving conflicts when collaborating on shared projectsGitHub's integration with Overleaf for academic writingAndrea's work on jury selection and minority representation
In this episode, I talk with Ning Leng, Ph.D., Director II, Data and AI Acceleration Group, Data & Statistical Sciences at AbbVie, about the growing role of the R Consortium in the pharmaceutical industry. Ning brings extensive experience in statistics, computational genomics, open-source technology, and the adoption of R across the pharmaceutical industry. Before joining AbbVie, she spent 10 years at Roche Genentech, where she helped drive the adoption of R, cloud technologies, Git, and Shiny. We discuss how the R Consortium creates a platform for statisticians, programmers, pharmaceutical companies, and regulators to collaborate on practical challenges—and how that collaboration is changing the way we approach regulatory submissions.
Most agency owners probably haven’t thought much about shadow AI (the name for when employees use their personal ChatGPT, Claude, or Gemini accounts to do work). In fact, owners may be doing it as well. In this episode, Chip and Gini walk through what the risks are and how to respond without overreacting. The instinct to crack down is understandable but wrong. Employees are going to use their own tools regardless, often because personal accounts are better trained or more accessible than whatever the company has set up. The goal should be education, not elimination. Most employees don’t know that personal accounts default to feeding data into training sets, or that a single toggle can turn that off. That one fix alone is worth a conversation with your team. Vibe coding and a plain-language AI policy get discussed, in addition to educating your team. Gini’s team runs weekly micro-learning sessions to help people use AI as a thinking partner, not just a drafting tool. Both Chip and Gini advise that owners and employees who aren’t using AI meaningfully within the next year or two are putting their careers and businesses at risk. Key takeaways Chip Griffin: “You’re probably not going to stamp it out. So at a minimum, you need to educate employees, because a lot of employees don’t realize the risks in what they’re doing.” Gini Dietrich: “I also think that shadow AI is one thing, but there are plenty of people who are not using it at all. And I was actually kind of shocked to find that in my own organization.” Chip Griffin: “We need to avoid the knee-jerk reaction when you hear an episode like this, shadow AI, oh my God, I need to shut this down. You cannot have that reaction.” Gini Dietrich: “The real value is that AI helps you operate at a completely different level.” Resources The Birthday Dirge View Transcript The following is a computer-generated transcript. Please listen to the audio to confirm accuracy. Chip Griffin: Hello and welcome to another episode of the Agency Leadership Podcast. I’m Chip Griffin. Gini Dietrich: And I’m Gini Dietrich. Chip Griffin: And Gini, I, think it’s appropriate that it suddenly got dark, in, in- Yeah. … in your office as we were trying to begin this recording- Mm-hmm … because we’re gonna be talking about being in the shadows. Gini Dietrich: Yes, we are. In the dark. But before we do that, happy birthday. Chip Griffin: Oh, thank you. Thank you. You’re welcome. I appreciate that. I thought maybe we’d escape that since- Nope … ’cause we were on hiatus during my actual- Nope … birthday month, so. Gini Dietrich: Nope. Ah, come on. Yeah. It was just a few days ago. Happy belated I guess. All right. Thank you. Especially by the time people hear this, but. Chip Griffin: Yeah. Well, nobody will really know, so. Gini Dietrich: I know. Chip Griffin: I, I, appreciate it, and I mostly appreciate that you’re not singing, so, Gini Dietrich: I can. Do you want me to? Chip Griffin: I do not. I- Okay, well- ‘Cause, ’cause isn’t, don’t you have to license “Happy Birthday,” I think? I think that’s- Gini Dietrich: Well, I have a different song. It’s a song that- Oh … the kids learned in third grade that we sing instead of “Happy Birthday.” Chip Griffin: Is, is this the dirge? Gini Dietrich: No. Chip Griffin: Oh. See, I like the birthday dirge. Gini Dietrich: I don’t know the birthday dirge. Chip Griffin: Oh, it, it, it’s, uh, it goes something like, you know, uh, another year closer to the grave or something. I mean, it’s very more… But, the- I wouldn’t- Our kids learned it, learned it at a kid’s party, you know, 20-some years ago. Oh, that’s so good. I’ll have to look it up and share it with you. It, or- I’ll look it, yeah. I’ll delete it … or maybe, maybe Jen can do that because, and maybe sh- b- maybe she can include a link to it, in, in the show notes, ’cause it is somewhat entertaining, but I, I don’t remember the lyrics, nor do I want to try to, to invent them or sing them even if I knew them. Gini Dietrich: All right, fine. Chip Griffin: But, no, the, the- Gini Dietrich: Maybe for my birthday. You have s- you have several months to, to learn it. You could sing it to me for my birthday. Chip Griffin: Well, more than several, but yes. Anywho, so moving on from that. We, are going to talk about the shadows, the deep, dark shadows of the PR world. No, we’re gonna be talking about, shadow AI, which is, in a lot of organizations, you have employees who are using their own ChatGPT, Claude, Gemini, whatever accounts to do work. They are not using corporate accounts. A lot of them do not understand the implications of it. The employees do not understand the implications. The employers do not understand the implications. And I’ve seen it, either bite people or potentially bite people of late, so I thought I would raise it as something that, that owners ought to be thinking about in the current environment. Gini Dietrich: I will tell you, not to get anyone in trouble, but almost every one of our clients, and they’re big clients, people do that. Could be, and they’re doing it from their personal devices. It could be because it’s blocked at work. It could be because what they have at work isn’t sufficient. It could be because CoWork is significantly better than, Copilot. It, like, there are lots of reasons, but people will full on pull out their phone or their iPad and do it on their personal device at work all the time. Chip Griffin: It is incredibly common, and, from my perspective and what I advise owners is that you’re probably not going to stamp it out. So at a minimum, you need to educate employees- Yep … because a lot of employees don’t realize the risks in what they’re doing, and they haven’t set up any kind of a, a process to make sure that they’re, you know, doing it as intelligently as possible at least, if they’re- Right … gonna use their own accounts. And, look, I, mean, I, don’t necessarily think that, that it’s awful for them to be doing this. I wouldn’t try to eliminate it. But you do need to educate them because a, a lot of times when I talk with rank and file employees of agencies, they don’t realize that, for example, that their personal accounts, by default, all of the data leaks out for training purposes. And it’s in many cases, depending on which tool you’re using, as simple as a toggle to make- Yep … sure that that information- Yep … does not go straight into the training sets- Yep … of these providers. And that’s the default setting on your corporate accounts if you’ve got them as an agency, but it is not the default on most personal accounts. And so just that one change can make a big difference. But I have yet to talk to any individual employee using their individual account who knows that that’s even something they can or should do. Gini Dietrich: Yeah. I agree with you. I think that having just a really easy AI policy is the right way to go because I don’t– I think you’re right. I don’t think you’re gonna stamp it out. I mean, heck, I use my personal one for lots of stuff too. Mostly because I trained it before we had the corporate account, and I don’t wanna go back and retrain what I’ve already worked, what I’ve already created. So, but we just created a one-page, like, bullet points AI policy that says exactly what you said, like toggle it off. If you’re gonna be vibe coding, here’s what you need to be thinking about. You know, all of the things. I think it’s probably 12 bullet points. It’s not a huge lift, but it just helps them understand. And one of the things that we did is we spent some time building the cowork Instance for the organization, and it has, you know, our OKRs and our plan and our vision and, you know, all of the stuff, our brand kit, all of the stuff. So it’s easier for, my team now, it wasn’t six months ago, but now it’s easier for my team to use the company one because it has all of that stuff in there and it’s already been trained. Chip Griffin: Yep. Yeah, I mean, it’s, you know, so I think there’s, this is a multi-stepped process. You know, part of it is the policy, part of it is education. Gini Dietrich: Yep. Chip Griffin: Part of it is you should have a standard corporate tool that you are using. It doesn’t mean that it’s the only one, but, it should be– If you do that, it will allow you to do a lot of the information sharing, skill sharing, things like that, that ensure the consistency across the organization and make sure that everybody doesn’t have to reinvent the wheel constantly. But I think the you brought up two things that I think are worth exploring more. One probably is a separate episode in addition to this, but the other, I think, makes sense within this context. The one to sort of put a pin in and come back to is your fear of moving from your personal one to the corporate one because of the lost, you know, memory and context and all of that kind of thing. And, I think that there is, I, I, think there’s a lack of knowledge in the agency community generally about how best to capture all of the, the knowledge and things that you’re developing alongside these AI tools and making it as portable as possible. So, you know, one of the things I’ve been focused on in recent months is really making sure that, that my second brain, if you will, in AI is portable across multiple tools. And so I’ve now built it so, for example, I have one brain that I share across both my Claude and ChatGPT accounts- Gini Dietrich: Yep. I do the same thing. Yep. Chip Griffin:… so that you have consistency, and, I think it’s worth sort of exploring that, maybe not in technical detail, but, you know, how you can share it amongst your own accounts, how you can share it more effectively with your colleagues and coworkers and that kind of thing. So I think that’s worth revisiting in more depth because I think there, particularly as we become more AI forward as agencies generally, that’s something that becomes increasingly valuable and increasingly important. But the, piece that, that I think really fits into this shadows discussion is the vibe coding, and we see a lot of agency employees doing vibe coding, which is fantastic. I am, I’m a huge advocate of it. I think that if you want to get ahead in professional services generally, in the agency world specifically, you need to learn how to do at least basic vibe coding. That said, I think people do not understand all of the risks and complexities associated with vibe coding. Gini Dietrich: Right. Chip Griffin: And, so, there are a lot of basics that, that agencies need to be thinking about here, and again, it comes into that education and training piece in working with employees, because most of them don’t understand if you mess something up and you are not doing version control or keeping backups, you can be, you know, really up a creek without a paddle. Yep … and yes, you can reconstruct it in some fashion oftentimes by going back in the conversation, but it’s not simple. And because most people who are doing vibe coding today do not have any previous programming experience, they don’t understand these concepts like version control and being able to roll back easily and, all of the things that geeks like me who’ve been coding since, you know, the early ’80s get and understand. And, and, that Git reference, by the way, was for those of you who do actually know your coding stuff- … because it’s a great repository tool that most of you who are doing vibe coding should be looking into because it- Yeah … is really helpful- Gini Dietrich: Yep … Chip Griffin: in terms of making sure that when you have an oopsie, you can solve it and fix it easily. But a lot of people if, if they’re doing this on their own devices, they may not even have just regular backups of this stuff because maybe they’re saving their regular agency work to a Dropbox account or OneDrive or whatever you’re using. But whatever they’ve set up to use with Coworker or Codex or whatever, they may not have that in one of those directories that is by default syncing to the cloud and getting updated. And so you wanna make sure that you’re helping them understand that that needs to be part of the process, because how awful would it be if you just lost all of this work that you had been doing? And so much of what you do with Coworker, Codex is device specific, and you cannot access anywhere else. I suspect that will change over time. I suspect that, that those will become, you know, more cloud-like, and we’ve already seen Claude, for example, merging the chat and cowork functions somewhat in their app. Yep … and, so we’ll see a place where I think you can just share it across devices, but right now it is frustratingly difficult for those of us with multiple devices to manage. I’ve got two PCs and a laptop and other and, and so I’ve actually written my own systems for converting the code so that it all is accessible elsewhere. But if you don’t know how to do these things, you could be in a real world of hurt if your computer crashes and you’ve got no backups. Gini Dietrich: Yeah, and I will say that, not that I speak from experience or anything, but it only has to happen to you once, and then you learn very quickly how to make all of that happen. Because you’re right, I, I was vibe- I love to vibe code. It’s one of my favorite things to do, but the very first time I did it, I didn’t know I was supposed to do version control or any of that stuff. Right. I didn’t know anything about Git. I didn’t know any of it. I do now. Chip Griffin: Yep. And look, that’s, how most of us learned the hard way in the olden days of writing this code. You’re like, “Oh, shoot, I wish I had had a copy of that.” Yeah. You know? And, in the old days, our backups were printouts, right? Because you- Right … there was no way… Like, when I did computer coding on a cassette tape, you know, there was no real way to make a copy of that easily, so, you know, we would just, you know, hit print, and, you know, on a little dot matrix printer we’d have a copy of the code so we could retype it if we absolutely had to. Gini Dietrich: That’s so funny. Ugh … Chip Griffin: not ideal. A lot easier to do things today. Gini Dietrich: Not ideal, no. Chip Griffin: but, you know, those are the kinds of things, and, if we’re all going to become programmers of a sort, we need to be thinking about that. We need to be thinking about, how do you properly test and maintain some of this stuff that we’re creating? Because it’s super easy to vibe code the first version of something. It’s a lot harder to handle the maintenance that’s required on it, you know, when connections to data sources break or technology- Yep … evolves- Yep. Yep … or those kinds of things. Yep. Most, of the people who are vibe coding don’t do anything in terms of security testing of the, the code that they’re writing. And, if that vibe coded thing ties into other systems, which many times they do, you may have created, an opening that you’re not aware of into your back-end systems that could be problematic. And so these are all things that we need to increase the level of education about so that our teams are at least thinking about these things. I’m not saying they’re gonna solve them all. They’re not gonna… We’re still gonna have issues that crop up. But we’ve got to be doing more to try to educate owners, employees, and everybody else involved in the process. Gini Dietrich: Yeah, absolutely. I really think that starting with an AI policy is the right thing to do. Don’t make it overly complicated. Like, when we started, we had this big, like, AI policy legal packet. And I was like, “This is way too much. Way too much.” Like, people are not going to absorb that. So I used my AI to dumb it down, for lack of a better term, and, you know, really to highlight the things, and then I went through myself and said, “Okay, great. These, this is a good start. Now I need to add this, this, and this,” just based on how I see people using it. So, I also think that shadow AI is one thing, but there are plenty of people who are not using it at all. And I was actually kind of shocked to find that in my own organization, like, really? O-Okay. So we’ve done a little bit of, you know, we do a, we do micro-learning sessions every week. So we’ve done a little bit of AI micro-learning just to show people, like, it’s not just for a blog post draft or helping you refine an email. Like, it can h- it could be a thinking partner. It can help you with these things. And so we’ve been doing some micro lessons on that too to just help them understand that this isn’t gonna take your job. We still need you to do your work. We still need your brains for all of this, but this will make you more effective and more efficient. Chip Griffin: Yeah. Although I, I, have taken to becoming much scarier, and I’m telling people it is gonna take their job if they are not using it effectively themselves. Gini Dietrich: If they don’t use it. No, I agree with that. Chip Griffin: Yeah. But, I agree with you. Yeah. There are, there are a lot of folks in the agency community who are not using AI beyond very rudimentary use. Gini Dietrich: Yeah. Chip Griffin: And, and I, I don’t think there are very many who aren’t using it at all, but there are a lot who are using it more like a, you know, a replacement for Google or something to, you know, give them a quick draft of a blog post or an email or something like that. And, you really need to be taking advantage of it at a much higher level if you want to be successful in really any kind of knowledge work moving forward. And- Yeah … and I think people have a relatively short window to get up to speed on this. I think we’re talking, you know, a year, two years tops. Gini Dietrich: If– Yeah, yeah. I think two years is being generous. Chip Griffin: And, I think if, if you are, if you are not, if a year from now you are not actively using AI every single day in a really intelligent way, I don’t know that you have a future. Gini Dietrich: I would agree with that. I would agree with that. And I think you have to use it, to your point, in a really intelligent way. I just answered, or I just had a conversation with a Forbes reporter who’s writing about, there’s a term for it… I can’t think of the term right now. There’s a term for you using it as a thinking partner, using AI as a thinking partner, and he was telling me that almost nobody does that, and I was like Really? Like, that’s the only thing I use it for is, you know, here’s what I’m thinking, poke some holes in it, play devil’s advocate, tell me, you know, what’s strong, what’s weak, what I need to think through more effectively. It has helped me with … I mean, I, I think I’ve mentioned before, I call it my co-CEO, and I’m like, “Okay, here’s today’s challenge. Here’s what I’m thinking. Here’s the documentation. Here’s the backup. Help me think this through.” And it’ll be like, “What about this, and what about that?” And I’ll say, “Well, no, I think you’re wrong about this,” and, “What about that?” And, like, we have ongoing conversations about things, and I don’t … From what he was saying, like, almost nobody uses it that way, and I think that is the real value because it helps you operate at a completely different level. Chip Griffin: Yeah. I mean, you’ve got … You have to, and, it, feels weird, but you have to treat these tools as if they are actual employees, consultants, whatever you wanna call them. And, it, it absolutely feels weird to anthropomorphize a chatbot. And, certainly there are ways to, to go way overboard, and y- you know, you hear these, you know- Gini Dietrich: You’re not gonna fall in love with it Chip Griffin: these really, really weird stories of, of what people have done. And, you can sort of … You know, the more time you spend with them, you s- you can kinda understand how it, you know, for the right personality, maybe it kind of veers down those- … creepy paths. I’m not encouraging that. No. I’m not encouraging that. Gini Dietrich: No, no. Chip Griffin: But, but you’re absolutely right. You have to be having meaningful conversations about the work that you do, your strategies. They are incredibly good at poking holes, incredibly good at helping you to think through things. I mean, I, have spent probably, I wouldn’t say an inordinate amount of time, but a lot of time having it challenge me. I have Claude interview me on a regular basis on different topics so that it can build its knowledge, because I’ve built a whole second brain operating system kind of thing. Yep, yep. I’ve had it mine through, and, maybe, this is another episode at some point where you and I can talk about some of the systems that we’ve put in place as examples, because I know from our previous conversations there’s some overlap, but also different ways that we do things. But you know, I, I’ve got 20-plus years of, a, a digital footprint, and AI is great at mining through that. And so I’ve had it do that so that it can, it knows more about me. And so when it pushes back, it pushes back with specific examples, and it will say, “Well, when you did this in, you know, 2007, you know, this was the decision you made. You know, why isn’t that relevant here?” Or things like that. And it’s weird at first, but, you’re ne- you wouldn’t even find an employee who could do that because none of them in, in all likelihood have been with you for 20 years. Yeah. And so having that available to you is something that you just should not be passing up, and we want to encourage our employees who probably don’t have a 20-year footprint like we do to be trying to find ways to do it, and we want to try to facilitate them using all of the tools at their disposal. So we certainly need to avoid the knee-jerk reaction when you hear an episode like this, shadow AI, oh my God, I need to shut this down. I can’t- No … I can’t have employees doing– You cannot have that reaction. Mm-mm. And you should not have, while you should have an AI policy, it should be simple- Yeah … and clean. We can’t go back to the early days of social media policies that, that organizations tried to put in place. And again, we’ve been around a long time, so we’ve seen this movie before. And some of the social media policies that people were putting in place 20 years ago were absolutely bonkers and unnecessary. And I fear that we’ll see some of the same thing on the AI front. Yes. And part of this, by the way, is, with all due respect to our lawyer friends, sorry, Sharon, don’t talk to your lawyer first about this. You can talk to your lawyer about it, but, lawyers are naturally risk-averse, right? And so if you, if you put this in the hands of your lawyer, particularly if it’s not someone like Sharon who has deep experience in the agency world, they’re gonna sit down and they’re gonna say, “Oh, you need to say no to this, and this, and this, and this.” And all of a sudden, nobody’s able to even use AI in a meaningful way. Gini Dietrich: Yeah, yeah. Chip Griffin: And so you, you’ve got to try to put reasonable safeguards in place, reasonable policies, but I think the most important is the education piece. Yes. If you educate people, they are much more likely to make the right decision. It’s not guaranteed, but it’s more likely, and right now we’re at a place where we’re not doing the right level of education of our teams. And part of that is because a lot of owners don’t actually know a lot of what we’re talking about. I mean, I think, you know, you and I- Yep … are certainly at the leading edge- Yep … for a lot of folks in the agency community. We need to get more people at that same level and let it flow through to their teams to make sure that we really are leveraging this technology for all that it can do. Because it, I mean, I, I have n- I have not been this enthusiastic about a piece of technology in the world of PR and communications at least since the beginning of the World Wide Web in the mid-’90s. Gini Dietrich: Yeah, I agree with you. And, like, the– I know I’ve said this before, but the amount of work and the productivity that I’ve been able to achieve, I honestly don’t know how I did my job without it. It’s, it is, it’s next level. And you know, there are some weekends where I’m so excited about something that I’m working on, it might be vibe coding or something else, that I will literally sit in front of my computer all weekend and just, like, in the zone because I’m so excited about it. So I think that there’s a big opportunity here for you to explore and to understand and to change the way that you do your business, run your business in a really fun and effective way. Chip Griffin: Well, and that’s probably yet another ep- episode topic, going forward in, in trying to figure out how you invest your time in AI, because it is, it is just as easy to go down unproductive rabbit holes because- Yeah … they are fun. Sure. Right? And so I, I often find myself sitting there saying, “Do I really need to build this? Is this- … is this really helpful?” You know, I… and it, it, reminds me a little bit of, woodworking, which is something that I’ve done for- Yeah, yeah, yeah … for many, many years. But, like many woodworkers, I have probably built more things for my shop than I have to use in my house, right? So you, you spend so much time, you know, building workbenches and cabinets and jigs and all of that kind of stuff, which are all really cool, but at the end of the day, they’re not the things that you, you know, it’s not the furniture or the built-ins or whatever that you can use around the house. And so we need to be careful that we don’t get so enthusiastic, that we’re only building for that. So making those decisions about where does AI actually help and where is it, you know, kinda using it for the sake of using it, is, is something to be paying attention to as well. Gini Dietrich: Yeah, totally agree. I love it. I’m, I’m a big fan. Love, love, love it. Love. Chip Griffin: And so we’ve, after our summer hiatus, we sat here and we said, “You know, we should’ve been spending more time thinking of topics to come up with.” And, and so instead we kind of pick a random topic to go with, and we’ve come up with multiple episodes, for future discussions, so. Gini Dietrich: I wrote them all down too. So they’re in our document, so we have- Chip Griffin: Out of the corner of my eye, I can see that our shared document- … has been, been being updated. I, I cannot update while we’re talking because I have one of those really loud clickety-clack keyboards. And so it would, overwhelm the audio here. Dun, dun, dun, dun, dun. Because I, I, like the noisiest possible keyboard you possibly can have. So. I love it. Anyway, on that note, I, I think it’s probably a good time to, wrap up. We can come out of the shadows with AI. Maybe it will, you know, the storm will pass, in Chicago, and it will get a little bit brighter for you in your office as well. It still seems like it- Gini Dietrich: It’s like nighttime … Chip Griffin: it must be pretty dark there. Yeah, crazy. If you’re, if you’re not watching us on video, and you really should watch us on video, because it is so compelling to see us and not just listen to us. But it, it definitely looks dark there. So on that note, we will wrap up here. I’m Chip Griffin. Gini Dietrich: I’m Gini Dietrich. Chip Griffin: You… Did you forget who you were? There was, there was a long pause there. Gini Dietrich: It’s because you, there’s a delay with you. Chip Griffin: Oh, okay. That’s good to know. Gini Dietrich: Yeah, yeah. Chip Griffin: On that note, it depends.
In this episode of the Facilitation Lab podcast, host Douglas Ferguson interviews Joe McLean, Group Product Manager for the AI Stream at Miro, who led the overhaul of Miro's Sidekicks and Flows AI surfaces launched at Canvas 25. Joe traces how his hobbyist love of Eurorack modular synthesizers shaped Flows, arguing that visible, patchable connections reveal what a chat box hides, and that a good tool's structure can enable rather than constrain creativity. He and Douglas dig into what he calls the "visual trace" - treating an AI agent like a new hire who needs onboarding, check-ins, and a replayable record so a whole team, not just one operator, can trust and build on its work. The conversation covers how cheap execution is reshaping product development, from teams showing up to meetings with working prototypes instead of slide decks, to Miro's internal VibeLab tool solving the "Git problem" of AI-generated design branches, to the rise of throwaway personal software built for an audience of one. They close on a candid discussion of the switching costs of chat-interface lock-in and Joe's conviction that the healthiest relationship with AI comes from building things with it, not just asking it questions.
Sponsored by Blocks: Save at least 20% on your AWS costs with AI-powered optimization and enterprise discounts. Get your free Cloud Check at https://blocks.cloud/alphalist?utm_source=alphalist&utm_medium=podcast&utm_campaign=blocks-podcast-2026 Aike Hillbrands co-founded and killed two companies before Kombo, now a Y Combinator-backed HR integration platform with $10M+ ARR and a $25M Series A. Along the way, his team built something almost by accident: a company-wide AI brain made of a GitHub repo, a Cursor agent, and a Slack channel, built in two hours, that replaced how the whole company gets answers. In this episode, Aike explains why files and grep beat MCP tools and vector search for agent reliability, walks through Simon Willison's "lethal trifecta" of AI security risks and how a public Slack channel acts as a guardrail against it, and makes the case for why AI won't commoditize enterprise HR integrations anytime soon, despite that being Kombo's own bet. Topics covered: - How Kombo went from Notion AI to a Git-based company brain - Why files and grep beat MCP tools and vector search for agent reliability - The architecture: per-customer summary files, cross-linked support tickets, BigQuery CLI, Slack integration - Simon Willison's "lethal trifecta" and practical mitigations - Why a public Slack channel works as a security guardrail - The buy-vs-build question for internal AI tooling - Why enterprise HR API integrations resist commoditization by AI
There are roughly 100x more people who use code than who can write code. As code that “just works” becomes easier to generate, this group may be the biggest prize of all — if you can get the agentic interface right.A key trend we have been tracking over at AINews is the absolute explosion in Codex usage this year, with MAU now up >10x from Jan 2026. Less than two weeks after their July 9th launch, OpenAI said ChatGPT Work and Codex had reached 10M users combined (as we cover in the pod, Codex now powers ChatGPT Work, so all ChatGPT Work users are now users of the Codex harness, even if they aren't traditional engineers) — showing the early innings of what happens when you graduate from coding agents to knowledge work agents:We've been calling out how coding agents are “breaking containment” to do everything else this year to power every other part of knowledge work - and it started with the org chart, with a major reorg last month that amounted to two of Codex's most prominent leaders, Greg and Tibo, taking responsibility over product and ChatGPT specifically, completing a “Superapp” consolidation cycle first discussed in March.With these updates Codex is no longer just a coding tool. In June, OpenAI said knowledge workers already accounting for roughly 20% of Codex's user base and growing more than 3x as quickly as developers. A product dedicated for knowledge workers was being pulled out of the Codex team.However, knowledge work has a different set of problems and environments than coding. For decades, knowledge work has been scattered across different primitives like documents for writing, spreadsheets for analysis, slide decks for communication, and specialized applications for everything else. ChatGPT Work now enables users to work across every primitive with agents. Instead of opening an application and manually operating its features, the user can describe an outcome and collaborates with an agent that can assemble the tools, context, and artifact needed to reach it.From building no-code products at Airtable to leading Productivity Engineering at OpenAI, Akshay Nathan has spent much of his career trying to make the power of software accessible to people who do not write code. In this episode, Akshay joins swyx and Vibhu to unpack the launch of ChatGPT Work, why Codex unexpectedly took off among non-developers inside OpenAI, and the company's broader plan to bring useful agents from software engineers to knowledge workers and eventually everyone.We go deep on the shared agent harness behind Codex and ChatGPT Work, why OpenAI brought the experiences together without making them identical, and how persistent computers, artifacts, Sites, plugins, memory, and sub-agents are changing what people can delegate to AI. Akshay explains why some teams are replacing decks and spreadsheets with interactive websites, how agents can gather context across code, Slack, documents, and local files, and what OpenAI learned from personal-agent products like OpenClaw.Side note: also don't miss Abhihek's sandbox track keynote at AIE, which now powers a lot of the sandboxing for ChatGPT Work… and yes was also broken by an unreleased OpenAI model in the recent HuggingFace incident.Akshay also reflects on how AI is transforming product development itself: why more people will become generalists with a specialty, why ideas and taste become the bottlenecks when almost anyone can build, why LLMs still struggle to generate genuinely grounded new ideas, and why teams must distinguish increased motion from actual progress.We discuss:* Why Codex unexpectedly took off among non-developers inside OpenAI* Why employees felt like using Codex gave them a new superpower* The product insight that led OpenAI to build ChatGPT Work* Why Codex and ChatGPT Work share the same underlying agent harness* How their UX, Git visibility, artifacts, and sandboxing defaults differ* Why OpenAI merged its agent experiences instead of building separate products* How AI is blurring the boundaries between engineering, design, strategy, and operations* Why OpenAI wants the default model configuration to work for most users* When power users should use deeper reasoning, Ultra, or multi-agent modes* Artifacts, agentic spreadsheets, and creating high-fidelity work products* Why interactive Sites may replace decks and spreadsheets* The challenge of designing a simple interface for an agent that can build almost anything* Why users should retry tasks that models could not handle three or six months ago* How AI can gather context for performance reviews without replacing human judgment* The OpenAI automation that turns internal Slack and document activity into memes* What reaching ten million ChatGPT Work and Codex users means for the product* How OpenClaw inspired persistent environments, scheduled tasks, and personal agents* Using ChatGPT for financial planning, budgeting, workouts, meals, and household management* The design tradeoffs behind sub-agents and how much of their work users should see* ChatGPT memory, Chronicle, and long-term context* Why AI may make more people generalists with deep specialties* Why ideas and taste become more important when almost anyone can build* Why LLMs still struggle with the instruction “bring me new ideas”* Measuring productivity through quality at-bats instead of commits, tokens, or pull requests* The critical difference between AI-generated motion and meaningful progressAkshay Nathan* LinkedIn: https://www.linkedin.com/in/akshaynathan/* X: https://x.com/akshaynathan_Timestamps00:00:00 Introduction and Bringing the Power of Code to Everyone00:01:33 Joining OpenAI and Preserving a Startup Culture00:02:40 What OpenAI Learned from Enterprise AI Adoption00:05:28 Why OpenAI Built ChatGPT Work00:07:17 Codex vs. ChatGPT Work and the Shared Agent Harness00:12:07 Why OpenAI Merged Its Agent Experiences00:16:24 Models, Reasoning Levels, and Choosing the Right Default00:20:26 Artifacts, Agentic Spreadsheets, and Model–Product Collaboration00:24:22 Why Sites Could Replace Decks and Spreadsheets00:30:08 Designing an Agent That Can Build Almost Anything00:34:28 From Developer Agents to Knowledge Work—and Everyone00:36:07 Power-User Advice and AI-Assisted Performance Reviews00:40:41 OpenAI's Internal AI Memes and the Ten-Million-User Launch00:44:39 OpenClaw, Personal Agents, and ChatGPT as an Operating System00:50:24 Sub-Agents, Ultra Mode, and How Much Control Users Need00:54:39 ChatGPT Memory, Personalization, and Chronicle01:00:19 How AI Is Reshaping Product Development and Tech Roles01:03:15 Ideas, Taste, and Why LLMs Struggle to Generate New Ideas01:04:42 Measuring Productivity, Quality At-Bats, and Motion vs. ProgressTranscriptIntroduction: Akshay Nathan, ChatGPT Work, and the No-Code ArcSwyx [00:00:00]: We're here in the studio with Akshay from OpenAI. Welcome.Akshay Nathan [00:00:07]: Thank you.Swyx [00:00:08]: And with our trusty co-host, Vibhu. So you recently launched ChatGPT Work. You lead Core Product Engineering. It's been a long journey, into all this. I find it very interesting that you started with no code or low code, with Walrus and Airtable. And to some extent, ChatGPT Work is like the super app of super apps of, well, here is the ultimate no code. You just write a prompt.Akshay Nathan [00:00:32]: Yeah. It's funny how things come, full circle. I think for a long time in my career, I started my career working consumer fintech, but then after that, like, there's this hypothesis that, the things that we were able to do with code, like, as engineers, like, if we could bring that to many more people in a more, accessible way, then that would be truly magical. We were working on a startup. It's funny, like, before LLMs, before vision LLMs, on how to do automated testing with AI. It was just kinda jank, back then, but doing what we can, and then worked at Airtable for a while on the same thesis that, like, if we can bring a database or the primitives behind a database to people, that'd be really useful to them. But once LLMs came onto the scene, it became clear that, this was the missing piece, like, the missing technology required to, like, bring the magic of code to everyone without them having to know what's going on underneath the hood. And so, like, I think this launch and a lot of the stuff that we've been up to is, like, the manifestation of that.From Walrus and Airtable to OpenAIVibhu [00:01:33]: How was stuff when you joined? So you joined OpenAI 2023. Now we've got, so much more stuff, so ChatGPT, Codex app, ChatGPT Work. Have things changed?Joining OpenAI and What Hasn't ChangedAkshay Nathan [00:01:44]: I think the more interesting thing is how things haven't changed. Like, one, I joined I remember when I joined, it was, like, five hundred people. One thing I was worried about was, like, I was looking for something, more early stage and, like, was it gonna feel startup enough? And I joined, and I was like, “This feels even more startup-y than I could ever imagine.” And, like, that really hasn't changed even till now. I think the, like, level of, like, bottoms-up ambition and, like, the ability of anyone to, like, do anything or have an idea and ship it is really cool. But on the, like, mission side, I think what was really compelling to me is this mission of, bringing frontier intelligence to everyone. Like, building AGI and then bringing it to everyone. And, I think acknowledging back then that, like, that vision is gonna, not be a linear progression. Like, we're probably gonna, like, try different products and have different things that succeed and don't. But the vision has stayed the same, and the mission has stayed the same, and we're starting to see the pieces, fall together, and that's really cool.Enterprise Lessons: No One-Size-Fits-All AISwyx [00:02:40]: You worked on Enterprise. What A lot of people never touch ChatGPT Enterprise. What is something that you learned from there that you're bringing into your work now?Akshay Nathan [00:02:52]: I think how there's no one-size-fits-all solution in Enterprise. I remember in the early days of ChatGPT Enterprise, like, when we talked to customers and, like, everyone. That was, like, when I think it was a year after ChatGPT was released, and everyone was so excited to bring, AI into their enterprise. And, there were all these teams being stood up. It was, like, the AI deployment team with, like, these enormous budgets. And if you asked anyone, like, what were they excited about? Like, what were they excited about solving? Like, at first, you'd get, like, kinda like the baseline answers of, like, “Yeah, we have all this context and data and all this stuff.” But then if you ask them, like, “What was, like, a discrete use case that, like, they want AI to enable in their workplace?” You get such a different, like, variance, like, explosion of, different types of answers. And it's interesting, like, you using, like, these models and these products, you have this box, and you can say anything to it, which is the magic. But it'on the flip side, it also means that, like, you don't know what to do with it. And in Enterprise, I think a big part of that is, like, meeting the users where they are, like, what use case were they trying to solve, and then teaching them how they can use AI to, like, gain leverage there.Swyx [00:03:56]: Do you meaningfully differentiate that from forward-deployed engineering?Akshay Nathan [00:04:01]: I think there is the go-to-market side of it and then there is the product side of it. I think you need someone on the product side. And I think, like, however good we get at FDE motion, like, I think at the end of the day, if we have a user who's, like, looking at their computer or looking at their phone, like, it's our job in the product to, like, be enabling them and showing them where to go. So we're really excited about that.Vibhu [00:04:24]: Do you think there's been changes, over the past three years of adoption? So there have been, step function changes. You have reasoning models and whatnot. Is there still the same problems of Enterprise has black box, don't know what to do with it, or have things changed?Adoption, Agents, and the Next 10x MarketAkshay Nathan [00:04:39]: We're seeing now that, like, there's this huge uptake, right? Everyone is extremely excited about it. It feels like, many people are, millions, hundreds of millions of people are using ChatGPT. They understand, like, how generally to work with AI. But then, like, every time, like, a new capability gets unlocked, so now, like, we're seeing with agents, like, there is probably a contingent of, like, early adopters still who, truly get it, who are like, “ we you can do anything. You just have to make sure the right context is there, it's connected to the right tools, and that you are supervising it, but, like, anything is possible.” But then there's, like, this, like, 10x or 100x bigger market where, like, they don't yet get that, or they don't yet see that. And so I think that's the next stage here. So to answer your question, like, I think the adoption is there and growing fast, but I think the opportunity is, like, far bigger than that. That's where we wanna play, especially with ChatGPT Work.ChatGPT Work, Codex, and the Super App MergeSwyx [00:05:27]: Yeah. well, let's, let's skip ahead to ChatGPT Work. only, like, a month ago or so, announced. what was the decision process that led into it? there was this, overall merging of the super app. Is that what we're officially calling it? you deprecated the browser as well. Just, summarize your last, like, couple months of working on this thing.Akshay Nathan [00:05:50]: Yeah. It feels like forever now, but it's only been a few months. I think maybe the one, impetus that, like- Is most salient is when we release Codex, or even internally had Codex, like, it was really surprising to us, I think we recently put out some stats on this, that there was this, like, real inflection of, like, adoption among non-developers at OpenAI. And, I, through this product development process, like, would go to, like, these UXR sessions to talk to people internally. And the thing that stuck out to me is, like, one, like, you go talk to, like, strategic finance or marketing or whatever, and they're all using Codex for, their use cases. That part's cool, but the thing that really stuck out to me is how proud people were that they were using Codex. Like, how, likeSwyx [00:06:34]: It's like, “I'm not supposed to be using it, but I am.”Akshay Nathan [00:06:36]: It was that. It was, like, that they were, early to this, like, new thing, but it was also this thing of, like, they felt like they had a superpower, right? And, what we recognized then is that, like, the power of Codex, the power of agents, like, we already had this massive distribution base of people who have, come to know and love ChatGPT. Like, how do we show that to them? Like, how do we bring it to them? Which is, like, a hard product problem, and it's, like, a tricky thing, right? There's many ways you can go about it. And so that's what we called the Merge and the Super App over time, and ultimately launched it in ChatGPT Work, is how do we do that? But it came from that initial realization that, like, the power was not only for developers, like, much earlier than probably even we thought. Like, it could be extended to everyone.Swyx [00:07:17]: How do you see the products differently? So, like, who is it for, right? So Codex started out even CLI, then app. Now there's a merge of ChatGPT Codex and ChatGPT Work, so is it the opening for the average user, for enterprise, for work? How do you position it?Akshay Nathan [00:07:36]: I think we want to get it to position it for if you're doing work-related things, for lack of a better word, right?Who ChatGPT Work Is ForAkshay Nathan [00:07:42]: I think productivity is what, like, the pillar that I support. Like, that's the name of the team. And the reason for that, the reason we call it productivity and not, like, enterprise or, like, work or something like that, is because there's also personal productivity, right? And, like, I think ChatGPT Work is I've seen people do things in their personal lives that you wouldn't classify as, like, work technically, but, like, these agents are, super capable for. Like, one recent example that someone posted about, on our Slack is, like, someone had, like, a missed package, like they didn't receive it, and then they got, like, the picture of it, from Amazon or whoever the courier was, and they, like, asked ChatGPT Work to, like, find out where that package is. And, like, the agent, is extremely tenacious and, like, took the image and, like, looked at a bunch of, like, listings around their neighborhood and figured out exactly the apartment complex in which the package was, like, gave them some information. And so, like, I think there's all these things that, like, you, work-related or productivity-related things, I think that's what we want the product to be. You asked about Codex. I think we think Codex is, a durable brand, but we have a principle that, like, the user we don't want a user to get stuck in a tab or an experience where they don't get the power of the product. And so, like, everything that you can do, in the Codex portion of the product on desktop, you can do in ChatGPT Work and vice versa. But we made some opinionated product decisions on, like, how much of the Git state, if you're in a Git repo, do we wanna expose to the end user? Or how much do we wanna make the experience of seeing the agents thinking, like, diff forward so that you get exposed to the diffs out of the box. And then, like, on the safety side, like, how do we wanna think about, like, sandboxing and making sure that we have the right defaults in one state versus the other? So, there's, like, some opinions that go behind that, but we do want We don't want the user to need to choose which experience they're in.Swyx [00:09:26]: That is a good goal for AGI, right? Like, people don't want, like, to hide to choose what version of AGI they want. They just want the AGI to decide for them. can I get an answer or, like It's not super clear to me. Is the Codex harness and the ChatGPT Work harness the same? Is it just UI affordances, or are there prompt level or even deeper differences?Shared Harness, Different UX: Codex vs. WorkAkshay Nathan [00:09:49]: So the harness is the same. The harness is shared. on In both of the products, we made improvements to the harness to make it good for knowledge work, especially as it relates to plug-ins or computer use or artifacts. You get that power regardless of which experience you're in. On the UX side, there's opinionated takes that we have when you're in Codex mode, what the UX should be how the UX should behave, and some stuff around the sandbox like I mentioned, but the underlying harness and capabilities should be the same.Swyx [00:10:16]: I'm just kinda curious. Maybe we can, -- Is there a query that we can run that would look different in the two modes?Akshay Nathan [00:10:23]: Yeah. I tried to create, like ask it to create, like, a retirement calculator spreadsheet or something, in both modes. And then in Codex mode, you might have to be in a repo for this, but you'll see, like, the diffs of, like, the sheet that it's creating and stuff like that, and the file edits. But in Work you won't be able to see that.Swyx [00:10:42]: I think that's, that's super clear. And then also the other thing I wanted to dive into was your, the productivity team. what else is there? first of all, what are the top-level teams other than productivity? Isn't productivity everything?Productivity Teams and Core ChatAkshay Nathan [00:10:55]: SoSwyx [00:10:55]: Science?Akshay Nathan [00:10:55]: We have a team focused on ChatGPT. Like, the core chat experience, for consumer, which is like, not, I think all productivity. Like, there'People are using ChatGPT every day for search to, figure out how to write messages to loved ones, to think about, how to, like, learn a new topic, et cetera. And so there's so much more inside to create images. And there's so much more in chat that, the hundreds of millions of users are using that warrants, like, a very dedicated effort. And there's teams focused on enterprise and infrastructure and API and stuff like that, so.Swyx [00:11:33]: I will bring it up.Retirement Calculator Demo and Git-First UXSwyx [00:11:34]: Yeah. So I have them both running. This is ChatGPT Work. There's a Codex version here. I picked “Five Little Ducks” song, so this will take a while.Akshay Nathan [00:11:43]: Huh.Swyx [00:11:43]: I think we'll just keep it in the background and, as they finish, we'll look into some of the differences.Akshay Nathan [00:11:48]: Yeah. But immediately, I think if you flip back to the Codex version you'll see that,Swyx [00:11:53]: That it assumesAkshay Nathan [00:11:54]: Like theSwyx [00:11:54]: It assumes Git. Yeah. Yeah.Akshay Nathan [00:11:56]: The, like, dynamic island assumes that you're in a Git repo. And you might miss some stuff because some of it is, like, in the actual chain of thought with those changes and how we display that, but yeah.Swyx [00:12:07]: Is there an unintuitive like, is there a thing that you wanted to ship and then you got feedback, and you were like, “No, let's not do it?” Like, what's the thinking behind that?Why Merge the ExperiencesAkshay Nathan [00:12:14]: In, ChatGPT Work?Akshay Nathan [00:12:17]: I think one direction we could have gone with this is, like, keeping the experiences, like, completely separate. So it's like, whySwyx [00:12:22]: Different apps.Akshay Nathan [00:12:23]: Exactly, like different apps or even in the same app, like different, completely different experiences. Like, why merge it all? Like, what is. Codex, people love. Like, why bring these products together? And I think the intuition here is that, like, all of our jobs are, like, changing dramatically with AI. Like, for, like, every few months, like, I feel like I wake up, and I'm, like, doing a completely different thing than I was doing a few months ago. And my hypothesis here is that, or I should say our hypothesis is that, like, part of what we're, we're building, this technology is giving people leverage. Like, the things, maybe it's the more mundane parts of your job or parts that, like, if you were able to automate, you'd be able to share more ideas faster or whatever, like, you're able to do now. And because of that, like, that might blur the lines between someone who's, like, only writing code or creating strategy docs or, planning events or, helping with marketing or doing podcasts or whatever, right? And so, like, these things are gonna get blurred over time. And so, like, trying to draw a hard boundary based on, like, the who you are is gonna be, is gonna be tough. And, like, we should enable users to choose, but we shouldn't box them in. And so a lot of the work that went in here, like, keeping the primitives the same, like for example, plugins are, like, unified across, this product and ChatGPT and the cloud, was because of that. It's this thesis that, like, eventually things are gonna come together and we don't wanna be Like, we wanna be prescriptive about when to be in either experience, but we don't want to box anyone in.Swyx [00:13:45]: I wonder if there's users who are very tuned to the old ChatGPT harness that is effectively now replaced by the Codex harness. I can't imagine what that was, but maybe they're more the more conversational side. Can you compare and contrast the two harnesses? ‘Cause only you've seen it.Akshay Nathan [00:14:02]: Yeah. I think ChatGPT, the existing harness, like, still exists today. Like, it exists in this app,Harness Engineering: ChatGPT vs. CodexSwyx [00:14:08]: The classic, right?Akshay Nathan [00:14:09]: TheVibhu [00:14:09]: You just start a new chat, and you don't go under Work, right?Akshay Nathan [00:14:13]: Yeah. If you startVibhu [00:14:13]: SoAkshay Nathan [00:14:14]: A new chat and go to chat, then you're, you're talking to ChatGPT with the instant model.Vibhu [00:14:16]: Oh, we can technically do another. But on instant.Swyx [00:14:21]: Yeah. So this one's not gonna code or it's gonna be in line. It's on a in line in a sandbox.Akshay Nathan [00:14:26]: It'llVibhu [00:14:27]: Oh, that's coolAkshay Nathan [00:14:27]: We try to push you to go to Work if you're creating a spreadsheet. Yeah, but this isSwyx [00:14:30]: And this is a router decision? Sorry. Is it a router decision?Akshay Nathan [00:14:34]: This is the decision that, the model is making, and then, like it sees that you're able to. or you're trying to do something that would be better served in Work mode. But I think your question was like, what are the advantages of, like, the chat, like ChatGPT chat harness?Swyx [00:14:48]: It's more broadly, like, I wanna, do an oral history of harness engineering. Right? the ChatGPT harness lasted us from, let's call it the ‘01 era, until now, and now it's being replaced by the Codex harness effectively. And they're, they're overlapping somewhat, but I'm curious what changed if there is.Akshay Nathan [00:15:10]: My perspective on this is, like, there's, there's, there's there's like a constant process of, like, divergence, convergence, divergence, convergence. And in chat, like, many of the use cases I was talking about before, like, search or learning, I think we're, we're really optimizing for latency and optimizing for personality and, like, different things that, over time, like the product The reason people love ChatGPT is because we've been optimizing for those things and working on them for so long. Codex, what we learned was that, like, if you give the agent access to this infinitely flexible environment as a computer, it can do really powerful things. And so when we think about, like, okay, well, for knowledge work, like, what is which mode should we choose? It was like it felt more natural to us to bring that to this, like, computer environment and, maybe abstract some of the details of this computer away from users who might not be used to that, but, like, give them that same power. But ultimately, I think that we want the power in all places, right? We wanna meet people where they are. So I'm sure there'll be work down the road in order to get things to be, equivalently capable in all scenarios. But it's just a question of, like, what we've been focusing on the product on historically and what we're focusing on now.Models, Defaults, and the Reasoning SliderVibhu [00:16:24]: I think alongside that, outside of just harness and when to use Codex, ChatGPT, or Work, there's also the new models you've released, right? any guidance there? So people love to min-max what to use, like only use Terra on high reasoning versus, for this, you wanna use Sol here, ignore all theseAkshay Nathan [00:16:44]: There's 32 options.Vibhu [00:16:46]: But, that being said, for people that are expanding, so, productivity trying stuff for work that don't have the breakdown of what all this is what's, what's the advice, right?Akshay Nathan [00:16:59]: Well, I think before the advice, like the first thing is, like, none of this would be possible without these models. Like, the, I think you asked earlier, like, what was, like, the inspiration for work and, like, early on, like I mentioned, like, what we were seeing with Codex, but that was also because the models were getting infinitely more capable. That's happening again. I think it's like another step function jump now. And to answer the question on advice, like we want this default to be the best possible. Like, we wanna be opinionated about the default, and so we've we've chosen a default that we think is gonna be the best for everyone. And, we have for power users options under the hood. We could One could argue that there might be too many right now, and we're, working on simplifying it. But you can extend, the reasoning level, and you can change between the different model classes if you need to, but the default should be the best for most use cases. So my advice to most people would be to stick to that. And then, if you reach a situation in which you think that you could, you wanna try, a different configuration, if you're not seeing either the efficiency on the cost side or the quality on the intelligence side, then you can change the defaults and see if you can get something better. But we think that the default should be good enough.Swyx [00:18:09]: I have, I'm just gonna run something by you since you have way more experience than me. I've recently been doing Sol Lite but with goal, with the idea that the goal augments the reasoning effort, but with more terminations and turns.Swyx [00:18:24]: Is that a good way to think about it as opposed to Sol Ultra or Sol, Extra High?Akshay Nathan [00:18:29]: Yeah. It's hard to say becauseSwyx [00:18:31]: Yeah. It's like an interaction effect.Akshay Nathan [00:18:33]: exactly. It's like there's a preference on, for you as an individual, like how do you like to collaborate with the models? Like how many of those like terminations, as you call them, do you want where, you can steer or make sure that it's doing the right thing?Akshay Nathan [00:18:46]: I think generally people should try whatever works for them. I think that like using Ultra or the like multi-agent setups are best for like when you have like tasks that are either incredibly complicated, like open explorations or very paralyzable. I think even for tasks using goal, I think is best for tasks that you'll be able to make consistent progress in a way that's verifiable over time. But I think for most tasks, they don't fall into either of those buckets. And so like at least when they're starting, and so that's why I think the best first step is like trying it with the default configuration and then seeing like where you wanna go from there.Swyx [00:19:29]: Right. You guys worked on a slider, which is super helpful for reducing the amount of panic.Vibhu [00:19:36]: It's nice on mobile at least. There's a nice slider there.Swyx [00:19:38]: It's nicer.Vibhu [00:19:39]: I haven't tried it.Swyx [00:19:40]: So you have the advanced view there, but if you click advanced view. Yeah.Vibhu [00:19:44]: Ooh, it's just a nice slider. Yeah.Swyx [00:19:46]: Very pretty, very colorful.Akshay Nathan [00:19:48]: Yeah. The idea was here was like reduce it to like one dimension even though there's multiple dimensions, right? Try to project it onto a single dimension for the user. Like, something from that represents like, speed and efficiency on one side and then like quality and thoroughness on the other side.Artifacts, Spreadsheets, and the Work LaunchSwyx [00:20:04]: I am just puzzled that it uses Sol so much, like the lowerVibhu [00:20:07]: NoSwyx [00:20:07]: Grounds I would've usedVibhu [00:20:08]: I think the slider, if I'm not mistaken, isSwyx [00:20:09]: Terra.Vibhu [00:20:10]: Oh, it is.Swyx [00:20:11]: Yeah. See? So they preset Terra to only be the light one. But like I think a lot of people would more people should use Terra. One, because Sol keeps running out of capacity.Vibhu [00:20:22]: I'm the reason. Here's ten minutes of ourSwyx [00:20:24]: There you goVibhu [00:20:25]: Retirement calculator.Swyx [00:20:26]: Oh, that's the Excel thing working for you.Vibhu [00:20:28]: This is,Swyx [00:20:28]: Oh my God. Look at thatVibhu [00:20:28]: This is work, and then Codex is still cooking, so we'll get back into it. I think it'll be interesting to see the thought process, the reasoning, and also, this is eight minutes on work. Codex is still cooking.Swyx [00:20:41]: Yeah. And by the way, so I've, do Gabriel Chua? He's part of the OpenAI Singapore team. He showed me this, and I was like pretty shocked that this looks like Excel. It edits Excel files. You never paid an Excel license, right? Like, but somehow this is like workable and it's agentic Excel.Akshay Nathan [00:21:01]: Yeah. one of the big like pushes that we made for this launch was like artifacts, right?Akshay Nathan [00:21:05]: Like both on the model side, like I think if you compare this with GPT-5.5 and GPT-5.4 before that, you'll see that there's been pretty dramatic improvements in the quality of these artifacts and then also on the product side.Vibhu [00:21:16]: The UX side is also crazy, like hosted sites and whatnot. No longer needing to host your own little webpage, like itSwyx [00:21:23]: Oh, I have a story about that. I can do, a separate thing. I'll need to take the visuals here, but we-we'll, we'll cut to that later. Was there co-training, because you were moving making this big move and you launched GPT-5.6 on the same day as ChatGPT Work? Was there influence between the model training teams and the harness teams, or did they did the launch dates just happen to line up the same day?Akshay Nathan [00:21:46]: I think the we collaborate heavily with the research teams, and I think that's like one of the most magical parts of the job, like the most fun parts of the job. But yeah, just using artifacts as an example. Like, a lot of what you're seeing, like underneath the hood, there's a lot of work that went into making sure that like, we had the right infra to be able to train the models to get better at this. And then on the product side, like had the right experience for users to be able to collaborate with the model on an artifact like this. In fact, like this whole viewer, like the intuition here is that like, it's not necessarily that you wouldn't need an Excel license. This is stage one, right? Like, this is probably not what you meant when you're like making a retirement calculator.Vibhu [00:22:24]: Yeah, you can iterate very easily. Yeah.Akshay Nathan [00:22:24]: You wanna iterate and like when you're seeing it, and if this thing is high fidelity to like what you would see in or what your coworkers would see if you were to send this to Sean, like that I think makes it so easier and makes you trust the product in terms of iteration.Vibhu [00:22:39]: When you say coworkers would see, do you see a multiplayer, multi-team collaboration with artifacts? Any things you guys think about that?Multiplayer Artifacts and CollaborationSwyx [00:22:46]: You can already share it, right?Akshay Nathan [00:22:48]: Yeah. It's inter It's something that, we're actively thinking about. one thing that, we've noticed internally without talking too much about the roadmap is that like there's many times when someone will ping me about something, and I will ask ChatGPT Work the question, and then I'll ping them back the answer.Akshay Nathan [00:23:04]: And then I'll be thinking likeVibhu [00:23:04]: Like the simplest would be, the three of us are just all on one hosted.Akshay Nathan [00:23:07]: Exactly. And I'll think about like was I required in this loop or and then maybe it was, rephrase like what they were asking or pulled from certain context or whatever. But like, when I gave them back the answer, that process was also lossy, right? Like I gave them just like my interpretation of what ChatGPT Work cooked up. But like underneath the hood, there's so much context like in the rollout and stuff that could be interesting.Vibhu [00:23:28]: Yeah, it'sSwyx [00:23:28]: So like the answer was preemptively respond to every inbound request?Akshay Nathan [00:23:33]: No, it was just like literally like this is what I do sometimes as my job.Swyx [00:23:36]: I know you copy-paste and then you're just a message forwarding serviceAkshay Nathan [00:23:39]: Yeah. Yeah, exactlySwyx [00:23:39]: From AI to AI.Vibhu [00:23:40]: But I think it's interesting, right? It helps people understand the capability of what you can ask and delegate that oftentimes people don't realize until they try or someone shows you, and then you're like, “Oh, okay. Okay, I see.”Swyx [00:23:52]: I think it's als there's also like a, light security issue, where like you're the permissions layer. Like yes, I could query everything that you query, and I could get an automated response, but maybe I'm not supposed to see it. And that there's no way I would know because I'm not supposed to know what I don't know.Akshay Nathan [00:24:07]: Especially as like, with ChatGPT Work, we're, we're asking you to connect your plug-ins and, it's pulling from your local files and stuff like that. Like the amount of context that the agent has access to is like- Deeply personal and like that's something I think we need to preserve, so that'll be definitely a challenge.Swyx [00:24:22]: There's Excel, there's PowerPoint, there's Docs, the, grand trio of work. What other formats of work do you think about? like you worked on Airtable. Is there a future where there's like OpenAI Airtable? Like what does that look like if you ever ended up doing it?Akshay Nathan [00:24:41]: It's a really good question. I think,Formats of Work: Sites as Knowledge ArtifactsAkshay Nathan [00:24:43]: one that you didn't bring up was Sites, and I think that wasSwyx [00:24:46]: SitesAkshay Nathan [00:24:46]: A core part of this launch. There's one side of Sites that I think people commonly talk about, especially on Twitter and stuff or X, of like, this like prototyping tool. And like we saw that happen with this launch even. The model slider that you guys were referencing earlier, like that was developed almost fully in a Site. Like, the collaboration between design and engineering and product on that was like on a site where we play with, the affordance and figure out how it feels and all of that. But the other aspect that I think is a little bit less talked about is like Sites as like an artifact for knowledge work. I was talking to someone the other day who's on like our corporate finance team, and like we were mentioning how like now when they have these reports that they're, they're working on as a team month to month, historically those things were in slide decks and in spreadsheets, and now they're just in Sites. And like Sites is the mechanism that they collaborate across the team. And the reason is ‘cause it's like, it's like somewhat higher bandwidth. Like, at these tools like PowerPoint and Excel are like infinitely flexible, but at some point you reach the boundary of like either as a human you may not know how to use some feature or something, or the product itself doesn't support it. But with a site you can do anything. You ask for anything and you can get that. once people see that magic, I think it's been really valuable.Swyx [00:26:02]: Yeah, let me show you my case study. this involves all the hot topics including ChatGPT Work, but also GPT-5.6 token billionaires and token maxing and Sites and auto research. I'm a fan of this game called Strata. It's, it's like a little board game that youSites, Auto Research, and Research DashboardsSwyx [00:26:17]: That you play with, physical blocks, that come on top of it like that. So over the weekend I took like thirty photos and just threw into ChatGPT. one point seven billion tokens later, out comes this site with a fully playable thingAkshay Nathan [00:26:32]: WowSwyx [00:26:32]: With 3D, block placement and everything. Because it requires physical blocks and I needed friends to train on it so they can get better, so I can play against them. But also, I could also, do things like train an AI on it and that's, thatAkshay Nathan [00:26:45]: That's your auto researchSwyx [00:26:46]: That gets into auto research. So, you want to train your own AIs, and then make sure they self-play against, each other. I need to set both AIs. So this is AI versus AI, and they're, they're gonna self-play. the AIs start out bad and then you want to define a loss function and get good. I wasn't gonna supervise all this. I was at, I was down in San Mateo, attending a conference. What I ended up doing was, auto researching and on this and creating benchmarks and that there was just way too many parameters for me to read. So I started asking it for a site, and it's created this lab, panel. Where is there a, is there a shortcut for a site that is created?Akshay Nathan [00:27:28]: You should be able to go in the sidebar to Sites, top of the sidebar. The left sidebar.Swyx [00:27:33]: This one? Oh, left?Akshay Nathan [00:27:35]: Yeah. Just scroll all the way to the top.Swyx [00:27:36]: Oh. Oh, it says Sites. Oh, there you go. Yeah.Akshay Nathan [00:27:39]: Ooh.Swyx [00:27:40]: So it create, it creates the sites. I don't, I don't think this is, it is exactly what I wanted, but let me show you what it popped up, right? Like I think as a research artifact, it is very important to communicate, exactly, what is being done. Outputs this thing which I eventually started publishing. So I moved it off of Sites because I wanted more, database and infrastructure than Sites afforded me. But this is like a research output that you can start to mess with and like try to think about like what hyperparameters are you tuning for training AIs. And like I was trying to make like scaling laws and everything and doing all sorts of like game optimization stuff. And the fact that you can just throw this up as a research artifact, like I no longer need to read ChatGPT output. I read Site output. But then there's also a huge sprawl. Like look at how long this thing is. There's so many numbers. It is pretty overwhelming, so then I have to start pruning it from there. But, it's an interesting transition from Markdown effectively that you're putting out to, you're putting out a whole functional site.Akshay Nathan [00:28:41]: I think Markdown just isn't that optimal for people to read, right? Might as well just write HTML website and I don't know. I think you can do a lot with customizing this, right? You have your skills that explain what you want. Like I noticed they're quite verbose. I don't need a lot of this information.Swyx [00:28:57]: It's very verbose.Akshay Nathan [00:28:58]: So and then the nice thing of having a site side by side is, you just iterate on what you want and what you don't, right?Swyx [00:29:05]: Yeah. I don't know if, any that triggers any stories for you of how it's run internally. Am I doing this right?Akshay Nathan [00:29:11]: Yeah. I think that this is like a workflow that we're seeing like all different types of teams use, where like the canonical artifact that was previously a deck or something is now becoming a site. And like with a site you, because it's just HTML, you can like. It's infinitely flexible. And so, if you want to give more prominence to a certain thing that like in a slide deck would, feel like it was buried, like you can do that. You can have it be like the hero image, right? And so I think that like, people are starting to see that. There's more work to be done to make these things like much more easier, easy to collaborate on. You mentioned that they're very, they're long and verbose, could be broken up. I'm sure that there's still something to do there.Swyx [00:29:53]: They're super long. Yeah.Akshay Nathan [00:29:54]: Yeah. But I think we're starting to see that like there is this aspect of this is a really interesting, format, for people to use, that's like much more flexible than what they ever had before.Swyx [00:30:07]: I think your job also comes becomes meta. You're not designing the products. You're designing a product to make products, and I'm curious how you manage that.Designing a Product That Makes ProductsAkshay Nathan [00:30:18]: I think one thing that we've been Like when we look at the UX, like that we've been thinking a lot about is how can we balance like simplicity with capability? Like if we're designing a product, like you said, that like is made to make up build other things, right? You can build so many different things. But we can't put that all in front of you because you'll get overwhelmed.Vibhu [00:30:41]: Yes.Akshay Nathan [00:30:41]: And so we had similar problem or similar challenges even Chat-with ChatGPT, but especially now, like when there's so much that can be done, I think the balance that we're constantly trying to strike is like, how can we give the user enough of a UI surface where, they can be expressive, they can tell the agent what they need, they can verify that it's using the right tools, it's pulling from the right sources, et cetera, but then it gets out of the way. And then how can we build the right system such that we can show them instead of telling them what can be done? Because so much of this is gonna be like, how do they discover the next use case and the next one after that if they really want to be super powered by the AI.Games, Private Evals, and Show-Don'TellVibhu [00:31:19]: Yeah. It's interesting. I feel like everyone also just has a different way to do it, right? I made a similar version of this same game. I didn't take any pictures of board or rule game. I threw in at goal eighteen minutes, fifty-three seconds later, a lot of tokens later, I've got a similar version. not with all the auto research and whatnot, butAkshay Nathan [00:31:39]: You gotta do all the latest trends.Vibhu [00:31:40]: And yeah, I did it with, did it with Codex, not Work, but it's interesting, right?Akshay Nathan [00:31:45]: Yeah. And this is GPT Image generating the pro avatars. Very good for game design. LikeVibhu [00:31:51]: AndAkshay Nathan [00:31:52]: A lot of game designers were like really into GPT Image for assets.Vibhu [00:31:54]: I will say like the broader takeaway probably is the reason that we do this is more so just to test the tools, right? Like, this was also a test for GPT-5.6 came out. I had done the game on GPT-5.5, right? The ability for me to no longer need it to. I had to feed it the rules. It's, it's a pretty niche game. It couldn't find how to do this on its own.Akshay Nathan [00:32:15]: Oh, yeah.Vibhu [00:32:15]: GPT-5.6Akshay Nathan [00:32:16]: It is out-of-distribution, which is why I was also very keen on testing the GPT-5.6 capability.Vibhu [00:32:21]: But, this is just as work comes out, as new things come out, these are just our side ways to test things, right?Akshay Nathan [00:32:27]: Yeah. It's some private eval. That is not this private.Vibhu [00:32:31]: But also valuable because now you can send this to your friends and I learned about this game through seeing this.Akshay Nathan [00:32:36]: It's a hard game. He's very good.Vibhu [00:32:39]: It's good to when no one is competing with you. But yes, it's a classic RL problem of like self-play, bootstrapping your game AI. yeah, you see how easily work becomes personal and personal becomes work because the thing I do for personal, it directly informs people I work with because I showed it to them. They were like, “Oh, you can do that with GPT?” Which like I imagine is the growth strategy.Akshay Nathan [00:33:02]: Yeah. The show not tell is a big piece that, I think we've we're not still not fully cracked of like, showing people all the things that they can do with the product versus like trying to teach that to them through like, articles or onboarding or whatever.Akshay Nathan [00:33:18]: So meeting them in the moment.Vibhu [00:33:19]: It's a career risk for me, because I used to be in developer relations, right? Where your job is to show, and then you're like, “What do you mean? You don't, you don't need.” your job is to tell. And then. But the product people are like, “Well, we don't need you if our product is intuitive enough.” SoAkshay Nathan [00:33:37]: Yeah. that's the magic of the models. So you can tailor the telling or the showing to like specifically what the user needs, like what they care about, what they've done in the past, exactly where they are on the adoption journey. So I think that's like gonna be a super big opportunity.Vibhu [00:33:50]: Seems easier and easier now to tailor custom showing, right? People have different use cases. As much as you said you don't wanna segment different people into different buckets, right? It's also not that hard to for people that are in different categories. But the question, is you said your team is more broadly on. What was the term you used? Productivity?From Developers to Knowledge Work to EveryoneAkshay Nathan [00:34:12]: Productivity.Vibhu [00:34:12]: Productivity. So howAkshay Nathan [00:34:12]: Which is now work.Vibhu [00:34:14]: Is it work? Is there another distribution that we're not hitting? Is there a group of people that will have something different than ChatGPT, Codex or Work? Is there more that the mass isn't targeting?Akshay Nathan [00:34:28]: I see it as like a sequencing, like. The vision is like bring useful agents to everyone. We started with like developers. Like developers historically are like early adopters that are willing to put up with more friction, set things up, et cetera. Like that's where, Codex started. I think the next opportunity is like what we call general knowledge work, all the other functions around developers. I think when you go from developers to this segment, like there's inherent challenges with like, this show not tell thing that we're talking about, making the product more understandable, bringing in new capabilities that matter more for this cohort than matter for developers, things like artifacts, things like computer use, et cetera. And then I think like the same learnings, like similarly how we took the learnings from developers and brought it to, general knowledge work, the next stage will be like taking the learnings from general knowledge work and bringing it to everyone no matter what they're doing in their lives. And we're already seeing that a little bit. Like this game example that you have is, something that's like on the border of like fun and personal life to, your professional life. I use ChatGPT Work full-time at home for everything, like for whatever I'm doing. I used it the other day to come up with a meal plan and like, save that on the like computer environment that it has and something that I can continue going back to. Like is everyone doing that yet? Probably not because the thing says work on it, but eventually, we wanna get people there.Vibhu [00:35:51]: ChatGPT life.Akshay Nathan [00:35:52]: Yeah, exactly. ChatGPT cooking. But I think there's a lot of, there's a lot of opportunity there, but I see it as like, we're, we're built we built a foundation in software engineering, and we're gonna take the same learnings that we take from software engineering to knowledge work to everyone.Vibhu [00:36:07]: Do you have any power user advice? I feel like, there's a group of people that will live it, use it for everything, stay on it twenty four-seven. And then there's a bit of a gap between that crew and people that, okay, I use it for work. I use it occasionally. Sometimes I type questions. any advice, any learnings, anything you recommend or just, takeaways that you've found that help bridge that gap?Power User Advice: Push the Frontier of ImaginationAkshay Nathan [00:36:30]: I think a couple things that I've seen is like, one, that it really helps to broaden your imagination of what's possible, and this has been a learning even for me. Like, the technology has progressed so fast that, something that, like, even three months ago, like, no way the models can do this. Like, now it's like, wow, it's like it can. Like,Swyx [00:36:52]: Give an exampleAkshay Nathan [00:36:52]: We're going through right now our, like, review cycle internally, and, people always talked about this as, like, a thing that the models are good at and like, there's a cliché of like: Okay, like, no one wants to be writing reviews and, like, we just use AI to do it. But in all seriousnessSwyx [00:37:09]: And it can evaluate it as well.Akshay Nathan [00:37:10]: Yeah, exactly. In all seriousness, before it was, like, just, like, slop and, like, I think it was helpful, but, not super productive. Now I've found that, like, the model can do a much better job than me, especially in this environment of, like, pulling context on, like, what people are up to, how they've like the things that they've done to make a difference, highlighting like, wins that they've had that, like, I might may not even have seen. It has access to, like, everything, right? Like the code, like, things that they've caught, reviews, Slack, everything. And so it's, like, incredibly powerful in that domain and, like, just like six months ago, the last time we did this cycle, like, I didn't even I tried using it, but it was not at all helpful. And this time it's been, like, incredibly helpful and, like, so I think continuing to push the frontier of imagination of what's possible, even if you tried something before, I think is maybe the my biggest piece of advice. The other, thing is, like, the more you put in, especially in this environment where, like, the model has access to everything on your computer or in ChatGPT Work, like you can create, artifacts over time and save them in your library and, like, the model will continue having access to those. Like, the more information you give it about whatever domain you're in, whether it's your life or your work, the more valuable it becomes, and it'll become valuable in, like, ways that might surprise you. Like, it might pull from context in a way that, may be proactive and that you might not even have thought about. But it needs to have access to those, to that those tools or that context first.Reviews, Agentic Search, and Context GatheringSwyx [00:38:27]: One thing I just wanna talk about the review stuff because I'm still that's a very sensitive thing and you're, you're a founder, you've managed people, you've hired people. As manager myself, I'm very reticent to put out any LLM-generated things especially when it comes to people, ‘cause it feels like you don't care.Swyx [00:38:46]: Presumably at OpenAI, people are more open to being eval rated by GPT. But are there any unofficial rules around this? Like, what's the etiquette?Akshay Nathan [00:38:57]: Oh, I think the etiquette is that, like, I would never write something via, like, well, solely via AI and, like, present it as, like, a review for someone. What I was talking about is more, like, gathering context. That's the place where it's incredibly helpful.Swyx [00:39:08]: So it's just search.Akshay Nathan [00:39:09]: Yeah, exactly.Swyx [00:39:09]: It's agentic search. Yeah.Akshay Nathan [00:39:10]: It's like agentic search, but, that you can tailor and steer much more capably than you could before, ‘cause, like, the thing is it's all there's a flywheel happening, right? Because of Codex, people are able to do, and because of ChatGPT, people are able to do so much more now than ever before. And if you're able to do so much more, it's easy to miss things as well. And so, like, I think we need to use these same tools to keep up with all the impact that people are having and understand, where we can be helpful.Swyx [00:39:39]: I think the thing, like, I run a small company, so easy to search, but at the scale of OpenAI with the amount of messages that you guys put in Slack, do you think that it misses things?Remembering What Humans MissAkshay Nathan [00:39:50]: Probably, but I think that I also miss things.Swyx [00:39:52]: Like, it doesn't matter, right?Vibhu [00:39:53]: I think sometimes it'sSwyx [00:39:53]: Like it's, as it needs to be human-levelAkshay Nathan [00:39:54]: It's all relative, right? Yeah.Vibhu [00:39:56]: Sometimes it's nice when it finds things you wouldn't, right? Like right now, my Codex system prompts, they're set up in such a way that every project I have has a secret- separate, notes MD, and it just writes learnings to there. And then the global one can pull from all these. So sometimes it'll be like: Oh, there's this project you did like four months ago. Here's a note that we had, and it randomly pulls it back into context that I would never do, I haven't thought about.Vibhu [00:40:20]: And I'm like, okay, this is quite superhuman, right? Like, stuff that would. And, it'll save like hours on chunking of stuff or find something that's already been done. I'm like, as much as it might miss stuff, I would too, but it's very useful when it finds stuff. And I have like a very, non-super engineered solution to this. It's just marked down files that get pulled whenever they want.Akshay Nathan [00:40:41]: Yeah. I have a funny anecdote about this. Like, recently gearing up to this launch, the team has been, really cooking on it for a couple months, and over that time, like there's so much conversation and chatter going on in Slack and Docs and elsewhere. And, one of the members of the team set up this, scheduled tasks, like automation to like look at everything that's going on and, like, come up with the best memes and then post it in one of our shared channels. And like, there are two cool things about this. Like, the first is, like, I think the models are, over time, like starting to become like funny.Swyx [00:41:13]: Funny. Nice.Akshay Nathan [00:41:13]: Whereas like, a year ago, like that was not at all the case. The second is, it was what you were saying, like they find things that in surprising ways that you may not have thought of and like create connections that you may not have thought of. And that really helps with like the meme generation because then you can see something that, genuinely surprises you and, is funny in that way. So yeah, that's like not like the most productive, use of this the technology, but it does it does uncover this, like this capability that's emerging, which is just like to find information that you otherwise would not know of.Launch Momentum and the 10 Million User MilestoneSwyx [00:41:43]: Talking about the launch, I think, I have pretty much said this is the most successful launch in a long time. I think even more successful personally than 5.0, and they're announcing ten million users. Does it feel different? You've been through a lot of launches.Akshay Nathan [00:41:58]: I think it feels like a culmination. Well, I think two things. One, it feels like a culmination, like I was mentioning earlier, like this like vision mission that we've been on for a long time. Like I said, we saw the magic of Codex internally, and then we're like extremely excited to bring this to many more people and to see it working, to like see us reach, the distribution goal, numbers that you mentioned, like I think that's like huge and super exciting. The flip side of that is like, there's so much more to do too. Like, that's also really exciting. Like, ChatGPT as a whole, like the this product that, everyone almost equates to AI and like loves, has hundreds of millions of users. And so like ten million is really cool, but like we need to get this to everyone. Like, we need everyone to feel this magic. And so that's the next step from here. But yeah, I think extremely pumped about how it's going so far and the opportunities.Swyx [00:42:46]: Awesome. I did want to also Because I've, I've, I've been tracking the number closely, it transitioned at some point from just Codex users to Codex plus ChatGPT Work, because they're same harness. The whole point is that you don't, you can't, count them separately. Do you have roughly a billion, ChatGPT users? Why did it just jump to one billion right away? Like, isn't that the default on ChatGPT or no?Codex, ChatGPT Work, and the Developer BrandAkshay Nathan [00:43:11]: We don't default you into ChatGPT Work if you're on ChatGPTSwyx [00:43:14]: If you're free. YeahAkshay Nathan [00:43:15]: It's also only available to paid users right now. And I think there's like a process of, educating users of what is the value of this product, having them try it, learning from their feedback, and making it better over time. But the goal is to, get as many of the people who love ChatGPT today to like feel the power of ChatGPT Work. But I think it'll be a journey.Swyx [00:43:36]: Yeah. And Codex will still be alive as a brand for the foreseeable future. And we'll just toggle between them as needed for UI stuff.Akshay Nathan [00:43:44]: Yeah, I think it's even stronger point than that. Like, I think we fully intend to like, treat developer. Like, developers have been, a core market for us for so long, and like there's, there's so much more that we can do to make Codex great specifically for, software development, and we'll continue to do that. This doesn't take away from that at all. If anything, it should increase the utility of something like Codex, because now you can move seamlessly between writing a diff to creating an artifact or, doing a search over your factor.Swyx [00:44:11]: I do wonder how much this terminology leaks to the non-technical user. Like, do they have to learn to say artifact if I want artifact? Or.Akshay Nathan [00:44:20]: It's funny, like we call it artifacts internally ‘cause that's what the teams call it.Swyx [00:44:23]: It's nice. Yeah.Akshay Nathan [00:44:23]: But like externally, like no one says that, no one calls it an artifact. But I think that people like often, like describe things, whatever they're used to, right? So if, ChatGPT Work is good at creating slides, they'll say ChatGPT Work is good at creating slides, and that's what we want.OpenClaw, Personal OS, and Persistent ComputersSwyx [00:44:38]: One big Another, it's July of twenty-six. One big thing that also happens in, for OpenAI was OpenClaw, and that's I think a lot of people's first time really maxing a agent for personal stuff, but also crossing over to work in essence same way. As far as I understand, OpenClaw is still independent, but did you go through your own OpenClaw moments? Were there any lessons you took from OpenClaw to Codex or back? Whatever.Akshay Nathan [00:45:06]: I think there's a lot of inspiration. I did go through my own OpenClaw moment. I,Swyx [00:45:10]: Yeah, tell the storyAkshay Nathan [00:45:10]: Me and my wife like set up an OpenClaw to like try to manage everything in our house. Not that there's like a ton, but it was like quite useful. We gave it a calendar. It started, creating events for us and stuff. At some point, the laptop that we were running on, it died and never got a chance to pick it back up. But there was a lot of inspiration there, like, in ChatGPT Work, in web and mobile, like you get access to this like persistent computer environment where, you can store files, and those files stay around between sessions. And the idea is to be able to enable use cases like this. one of the members of our team uses ChatGPT Work for what they used OpenClaw from before, and then feel like it has like completely transitioned, which is like, workout planning and like meal tracking. which again, it's like a work-related thing, right? It's like not work necessarily, but it's like in personal productivity space. But it has all the same primitives. So it has scheduled tasks. It has the ability to store files on a file system. It has the ability to like reference those things over time. And so you start to see the same types of use cases emerge, which has been really cool.Swyx [00:46:14]: Is there a point that ChatGPT Work completely replaces OpenClaw? they're independent, so.Akshay Nathan [00:46:20]: Yeah, I'm, I'm not close to it, so I can't speak to the OpenClaw roadmap, but I don't think so. I think that there's gonna be, there's always a need for like this like incredible, like open source technology that team has built. And I think that we can draw inspiration, in the product and, ChatGPT, I think many more people have like heard about and used ChatGPT than have used OpenClaw. And if we can take the magic from OpenClaw and bring it to them, I think that'll be a success. I think that like one thing on the ChatGPT Work side that we feel strongly about is that like the core experience is that you come to this product and you have a conversation, start a session, whatever you wanna call it, with this agent. And the magic of the product is that you can do anything in that moment. And we would like to create a product where you don't have to click a button or to go to a different place, whatever, and you can get whatever functionality exists in, your finances app or where or any other product like in this one place. And so that's the goal. It's like it we want an extensible system with plugins where you can connect to the tools that you need in order to be able to accomplish like a financial task, where you can, if you're doing like science work, like we have an ability to like extend the system in such that you can like write the tech and it performs well. There'll always be like products that we support that are best in class at those things, but we want as much of the magic as possible in that core experience.Swyx [00:47:45]: Yeah. Do you think that you can do everything you used to do with Wealthfront in ChatGPT Finance?Finance, Data Access, and Centralized ContextAkshay Nathan [00:47:50]: I tried it. like ChatGPT doesn't yet custody, cash and assets for me. So that part, no, not yet. But I, there was like a whole component of like retirement planning and, like financial planning and budgeting and stuff that, we were looking into when I was there. And like with the finances plugin, like that's all possible with ChatGPT today. So, I feel
After we covered World's Toughest Mudder we went to Paris to experience France for the first time! We then took a train to Geneva, Switzerland and drove down to cover the Spartan Ultra World Championship in Morzine, France! This is part 1 of 2 for our coverage which is everything from Friday! Some interviews were more difficult to conduct due to language barriers. That is the fun part of going to new countries but it makes it difficult when covering it as a podcast. Due to this, there is a lot of announcer audio in both English and French in addition to our interviews! Hope you enjoy hearing about this amazing event and consider checking out one of the most beautiful Spartan Races there is! Translation of Mike (M) and Gregory (G) Basilico's Interview: M: How did your race go today? G: It's my first Ultra, it was in a world championship. I was starting a bit in the unknown because I didn't know how to manage this type of race. The gap increased as the race went on. I really had a lot of difficulties on the second lap but I surged far far far away at the mental level and said let's do our best and I think that today it's my mind that made the difference to go and get this beautiful victory. I was really really really looking forward to this and I think that today it's my mind that made the difference to go and get this great victory with the first World Championship title and the 6th overall title M: How does it feel to take 1st, 2nd, and 3rd as French athletes in your country G: Well I am really happy that we can do a triplet. Especially since it has been two years since the Italian Luca Pescullderungg won. At least now we are putting things back in place. We are in France, three frenchmen. M: You're no stranger to World Championships, how does it feel to win the ultra? G: What it is, is an accomplishment. It is a lot of effort and a lot of work. Translation of Mike (M) and Jonathan (J) Garcia's Interview: M: How did your race go today? J: Very good, I finished third so I am very happy, in addition my French compatriots who were much stronger today, very happy with the race. M: How does it feel to take a podium on a big stage? J: It was the first time I have had a hard time doing it, and I wanted to but I wasn't mentally ready but I am happy M: Total sweep from France on the podium, how does it feel to have that in your country? J: Yeah, that is it, great! It is our home and we are on the podium, very great so we will enjoy it now M: What did you think about the course with the obstacles today? J: I found it a little easier than the other years. Maybe I was more fit but it felt easier. I just missed the multirig twice but otherwise everything went well M: What is next for you for the rest of the year? J: Other European Championships, and maybe the Trifecta World Championship at Sparta Start – 5:34 – Intro 5:34 – 13:12 – Quick News 13:12 – 14:08 – Content Preface 14:08 – 20:26 - Start Line Audio 20:26 – 1:11:20 - Finish Line Audio and Interviews 1:11:20 – End – Outro Next weekend we will be celebrating 500 episodes! ____ News Stories: Badass of the Week: Nathan Lambert Nicodemus Injury Support Group Spartan Elite License Beer Mile Road World Record Boston Marathon Qualifier Selection Alisa Petrova and Sergei Perelygin 3 Year Anniversary Josh Fiore Moves to Florida Spartan Series Races ARE Included in Spartan Season Passes Help Kris Rugloski Race Across Mongolia GoFundMe Neighborhood Ninjas Community Build Day DEKA FIT Boston Podiums DEKA FIT Manchester Podiums Two Face Secret Link Dance Battle Secret Link Falling Drink Secret Link Gay Brother Secret Link Chocolate Bike Secret Link ____ Related Episodes: 393. Luca Pescollderungg on Winning Spartan Ultra World Championship, Being Spartan European Champion, and More! ____ The OCR Report Patreon Supporters: Jason Dupree, Kim DeVoss, Samantha Thompson, Matt Puntin, Brad Kiehl, Charlotte Engelman, Erin Grindstaff, Hank Stefano, Arlene Stefano, Laura Ritter, Steven Ritter, Sofia Harnedy, Kenny West, Cheryl Miller, Jessica Johnson, Scott "The Fayne" Knowles, Nick Ryker, Christopher Hoover, Kevin Gregory Jr., Evan Eirich, Ashley Reis, Brent George, Justin Manning, Wendell Lagosh, Logan Nagle, Angela Bowers, Asa Coddington, Thomas Petersen, Seth Rinderknecht, Bonnie Wilson, Steve Bacon from The New England OCR Expo, Robert Landman, Shell Luccketta Jules Estes, and Alan "Muddy Duck" Moore. Sponsored Athletes: Javier Escobar, Kelly Sullivan, Ryan Brizzolara, Joshua Reid, and Kevin Gregory! Support us on Patreon for exclusive content and access to our Facebook group Check out our Threadless Shop Use coupon code "adventure" for 15% off MudGear products Use coupon code "ocrreport20" for 20% off Caterpy products Like us on Facebook: Obstacle Running Adventures Follow our podcast on Instagram: @ObstacleRunningAdventures Write us an email: obstaclerunningadventures@gmail.com Subscribe on Youtube: Obstacle Running Adventures Intro music - "Streaker" by: Straight Up Outro music - "Iron Paw" by: Dubbest
This show has been flagged as Clean by the host. Hello, again. This is Trey. Welcome to part 8 in my Cheap Yellow Display (CYD) Project series. If you wish to catch up on earlier episodes, you can find them on my HPR profile page https://www.hackerpublicradio.org/correspondents/0394.html It is hard to believe that I started this project and the HPR series to document it more than a year ago. Time flies. Life happens. I spent the last 8 months so focused on work related activities that I had to set the project aside. And once I set it aside, it was difficult to get back to again. The one time I tried, I found that my son's old Windows laptop, which I had commandeered to use for the project, was once and truly dead. We live in a different world now than we did when I began this project. Today, everything is about AI – how it is changing our world, increasing efficiencies, and even displacing certain types of jobs. "Vibe coding" is transforming the way we make software, and now everyone is a developer. Within my organization, we are all being strongly encouraged to learn more about AI and apply it in our daily work. We are blessed to have access to a wide range of training and to powerful tools which support the process. Several colleagues within my organization and outside my organization have recommended Claude Code -- for development, for organization, for brainstorming, and for much more. My role is not that of a developer, and I have had no need for Claude Code at work. There are plenty of other tools for me to use. But at home, I thought... I could install Claude Code at home to experiment with and to learn. And then it hit me. I wonder if I could use Claude Code to help me with my stalled CYD project. "Hello, my name is Trey, and I am a fraud." OK. I don't think I am a fraud, but having never used such a powerful tool to help me code, I feel a little bit like a fraud, with Claude doing the work for me. Let's talk through what we did. As I mentioned, I was unable to use the laptop on which I created the original GUI code. But no worries, because It was all on GitHub, right? So, I began by trying to install Claude Code on one of my Ubuntu machines. That failed miserably, and all the instructions I found online recommended running it on Windows. So I transitioned to installing Claude Code on a freshly built Windows 10 system using some old hardware which will not support Windows 11. Surprisingly, It seems that Claude wants to run within Ubuntu on Windows Subsystem for Linux (WSL). Once I went through all the hoops for installing and setting up my basic subscription, I got to work. I created a new directory to use for all my project files, and another one for Claude to write all its output files to. Everything I have read and heard about using Claude Code for a project like this recommended beginning by using Claude to create the project plan. So my first prompt was as follows: "I am building a project using an ESP32 cheap yellow display. The final goal is to have a device with a graphical user interface which will allow me store several text messages, each assigned to their own specific button. Then, when one of the buttons is pressed, the message will be converted into morse code, and the message will be sent by blinking an onboard LED. I already have the initial design for the GUI coded in my github repository. Please construct a detailed step by step plan for building this application" I wanted to keep it simple at the beginning, so even though I plan to use an opto-isolated relay for the output, I am starting out using the built in LED. Claude asked me for the URL for my Github repository, and I provided it. After thinking for a bit, it produced a project plan. CYD Morse Sender — Step-by-Step Build Plan What You Already Have - 3 fully designed LVGL screens (Send, Config, Keyboard) - 7 send buttons with green styling on the Send Screen - Speed slider (5–30 WPM) and program slot dropdown on Config Screen - Text area + LVGL keyboard widget on Keyboard Screen - Display driver and touchscreen hardware initialized (but touch read was stubbed out) --- Phase 1: Fix Touchscreen Input Initialize the XPT2046 on VSPI, replace the hardcoded touched = false with real touch data, calibrate raw ADC coordinates to screen pixels, and verify all three nav buttons transition screens correctly. Phase 2: Persistent Message Storage Use Preferences.h / NVS to store 7 messages ("msg0" – "msg6") that survive power cycles. Load on boot and populate send button labels. Phase 3: Config Screen — Slot Selection & Speed Wire the Program dropdown to g_selectedSlot, wire the Speed slider to g_wpm with a live WPM label, and wire the Set button to clear the text area and navigate to the Keyboard Screen. Phase 4: Keyboard Screen — Capture and Save Text On keyboard OK (LV_EVENT_READY): read the text area, save to NVS, update the send button label, navigate back. On Cancel: navigate back without saving. Phase 5: Morse Code Engine Build morse.h with the full A–Z / 0–9 lookup table, a textToMorse() converter, and Paris-standard timing (unit_ms = 1200 / wpm). Phase 6: Non-Blocking LED Transmission State machine (IDLE / LED_ON / LED_OFF) driven by millis() in a morseUpdate() function called every loop — no delay(). LED on GPIO 17 (blue). Phase 7: Wire the Send Buttons Each button calls startMorse(getMessage(slot)) if not already transmitting. Disable all send buttons during TX; re-enable when the state machine reaches the end. Phase 8: Integration & Polish Stop button, WPM persistence, empty-slot guard, serial debug output, final touch calibration, end-to-end test checklist. --- Recommended order: Phase 1 → 2 → 7 (partial) → 5 → 6 → 7 (full) → 3 → 4 → 8 This was wild! Claude determined exactly how far along I was in the project, and also alerted me to the fact that the "touch read was stubbed out". Ugh. This means that the files I had uploaded to GitHub were my original GUI files (Episode 05 – HPR4532 - https://hackerpublicradio.org/eps/hpr4532/index.html ) and not the ones that I finally got working properly (Episode 07 – HPR4624 - https://hackerpublicradio.org/eps/hpr4624/index.html ). That was my own fault. Did I mention that I don't get Git? I REALLY need to learn to properly use Git! But, we have a plan, broken down by eight numbered phases. And they seem to address all the functionality I wanted with a few additional things I had not thought about. Interestingly, even though these phases are sequentially numbered, Claud recommended that we approach them in a bizarre order: Phase 1 → 2 → 7 (partial) → 5 → 6 → 7 (full) → 3 → 4 → 8 . Alright. Let's see what we can do. The first phase is to fix the touchscreen input. Claude took me through it step-by-step, asking as it needed to read specific project files. Finally, it wrote a new ui.ino code file to my speficied output directory for me to test. I copied it into the correct file location, said a quick prayer, compiled in Arduino IDE, and downloaded to the CYD. Well, that is... interesting. The display looked nothing like it was supposed to. There were vertical green bars with smaller dashed green vertical stripes in them. I will include a picture in the show notes so that you can see what it looked like and why it was so difficult to describe. I spent the next hour or so trying to explain what I was seeing to a chat bot. Claude recommended potential fixes which either did nothing or made the situation worse. I began questioning whether this was a good idea, how people actually gained efficiencies talking to a bot, and even several life choices. Then I had a thought. I prompted Claude: If I were to take a picture of the screen on the cheap yellow display and copy it into the output folder, would you be able to analyze it to better determine what is wrong and how to fix it? Shockingly, Claude answered in the affirmative, and told me to copy the picture to the output folder and let it know when to proceed. It analyzed the picture and more of the supporting files it had copied from my GitHub, asking each time if it could access that file. It determined that my original code was written for a flavor of LVGL version 8 and I was now using LVGL 9.5. It recommended changes, and then asked permission to make those changes, file by file. .h files & .c files, Finally, I just gave it permission to edit the files in the project folder without asking for permission for each file each time. Claude was still explaining each change, showing me exactly what would be changed, and asking for permission, so that I could review all of the changes. But now it was not asking additional permission to write to each of the impacted files. Next, Code compiled and downloaded. Different screen, but not right. Again, I took a picture and gave it to Claude to analyze. So, Claude paused and altered the code to generate a specific test pattern overtop of the GUI. The test pattern was supposed to cover the entire rectangular screen. But parts of the pattern were in a square on the screen and parts were not. Another photograph and analysis, told Claude that there were some rotation/screensize issues. We repeated this several times. Some resulted in improvement, and others did not. This is the point where I noticed something interesting. Not about Claude, specifically, or about the app. But I noticed something interesting about myself and about the process. Previously, when I was working through some of these challenges without Claud, I found myself becoming more and more stressed, frustrated, and angry, until I found a solution. Then another problem would repeat the cycle. Success in the end was great, but the emotional extremes during the process were not always pleasant. Now, I was effectively managing the project, and relaying information to the resource responsible for fixing the problems -- a very different experience. But I also ran into another issue. Claude became absolutely certain that the problem revolved around the device not accurately knowing where the 4 corners of the screen were. But in reality, the output of the test pattern was rotated 90 degrees from the actual screen. It took several iterations of me insisting that the problem had to do with screen orientation and not corner coordinates. It was interesting to experience the tool doubling down on an obvious mistake, but we finally resolved that. Again, while it was frustrating, it was much less stressful. We proceeded to Phase 2: Persistent Message Storage where we ensured that the button labels on the send screen were stored in the devices persistent storage, so that, when they are edited to contain the message they should send, that information would survive a reboot. Next, we combined elements of Phase 5: Morse Code Engine , Phase 6: Non-Blocking LED Transmission , and Phase 7: Wire the Send Buttons together. Building the morse code engine was an area I had been thinking about for a while. I already had working parts of something similar in the Arduino practice oscillator I have referenced a few times in this series. The code for the practice oscillator may be found on my GitHub, but it was all based on original code from jmharvey1, with my only contribution being making pin assignments variables so that the code could easily be ported to different devices. So, I was happy that we were building the morse code engine directly. The code for it may be found in morse.h, which uses a constant character lookup table to define each character. Without any specific direction from me, Claude used the PARIS timing methods I have already described within Episode 6 of this series. It defines timing for DOT, DASH, LETTER_GAP, and WORD_GAP, and all are based on a simple calculation of 1200 ms / the number of words per minute (WPM) we wish to transmit. Along the way, we discovered that, if we tried to use the delay() function, it would crash the program due to a conflict with the LVGL timer used for touchscreen inputs. Claude altered all the delays accordingly. Then, Phase 3: Config Screen — Slot Selection & Speed allowed us to configure the WPM we wished to use in addition to selecting a specific Send button to reconfigure. This forced us to work on Phase 4: Keyboard Screen — Capture and Save Text which is used to type the entries for each Send button. At this point, I also decided that we would want to also use the Keyboard Screen to send ad hoc morse as we typed it. During this phase we discovered several bugs which seemed to cause random freezes. Careful troubleshooting with messages output to the Arduino IDE's serial console helped us narrow down the causes and remedy them. Finally all the tests worked and I am able to merrily pre-configure macro buttons with custom messages and use the CYD to send the morse code for those messages to the on-board LED at whichever rate I specify. I have noticed in my presentation of this narrative that I repeatedly slip into the first person plural terms "we" and "us" instead of the first person singular terms "I" and "me". I have unconsciously personified Claud and recognized it as an integral part of my (formerly one person) development team. I finally configured Claude to connect to my GitHub repo and upload all the files and documentation. We additionally created a CYD-Narrative.md file which describes in more detail all the work which was done on the project. I still do not 100% get git, but we are successfully using it. You can find all these files in my GitHub repo ( https://github.com/jttrey3/CYD_MorseSender ) where they are shared under a GPL 3.0 license. There are still several additional steps I plan to complete in the next few months. 1. I will be integrating an opto-isolated relay which will allow me to plug the device into the straight key input on any amateur radio. This will require a battery power source, charge controller, and more hardware. I... make that "We" (Claude & I) will be modifying the code to support an audio side tone through an attached speaker when sending code We will add an output selection switch to the config page to choose any combination of speaker, relay, or LED as output. We will develop a downloadable firmware which I hope to share with the Cheap Yellow Display community. If you can think of any additional features you would like to see integrated, please drop me an email using the address in my HPR profile. I may also work with a friend to attempt to 3d print a case for the entire contraption, and I will be sure to record additional episodes sharing the process. I have learned so much throughout this project, about the CYD, ESP32, GUIs, Claude Code, GitHub, and most of all, about myself. Does using AI to develop this code make me a fraud? It still feels like it in some ways. Does it make me more productive? ABSOLUTELY! I made consistent forward progress when I only had 30-60 minutes each day to work on it, and everything discussed in this episode was completed in less than a week. If I had been able to work on it for a few hours uninterrupted, it may have only taken me 3-5 hours. Does it empower and inspire me to do more projects like this? 100% I feel like I had support working with me the whole way. I was less stressed overall, and it had less of an impact on the amount of and quality of time I spent with my family. I will be wrapping up this series soon, without any more 6 month gaps, I hope. Until next time... Provide feedback on this episode.
Linus delivers a blunt verdict on AI in the Linux kernel, Chris finds the remote Linux desktop that finally works, and Brent gives his notes system a serious rebuild.Sponsored By:Jupiter Party Annual Membership: Put your support on automatic with our annual plan, and get one month of membership for free!Managed Nebula: Meet Managed Nebula from Defined Networking. A decentralized VPN built on the open-source Nebula platform that we love.Support LINUX UnpluggedLinks:Web Boost — Send us a boost via sats or USD
A bi-weekly news show informing you on the latest in Bitcoin, privacy and open source tech hosted by Ungovernables, Max and Q. AOBEnvoy 2.3.0Full 2.3.0 out of beta: redesigned Send flow with inter-account transfers, message signing, Address Explorer, sub-satoshi fee rates, QR-density adjustment for Passport signing.Passport Prime 1.3.0-betaVault imports, BIP85 passwords, mass 2FA imports, universal QR scanner and loads of bug fixesVisual improvements to the docs siteApp showcase is now liveNEWSEU "Chat Control" — scanning derogation survives Parliament, permanent client-side-scanning law stalls again - TFTC: EU Chat Control, private message scanning, and Bitcoin's open protocols / Patrick Breyer: Chat ControlRadar Chat launches: a Signal fork with self-custodial Lightning payments built in - Decrypt: Radar Chat wants to make sending Bitcoin as easy as firing off a text / Atlas21Bull Bitcoin sues the French Finance Ministry over DAC8/CARF crypto surveillance reporting - The Rage: French Finance Ministry sued over global surveillance databaseMiCA deadline forces a self-custody exodus: ~70% of departing Binance EU users chose self-custody over a licensed exchange - Blockonomi: Binance reveals 70% of EU users chose self-custody after MiCA / CoinDesk: Binance to stop EU services after failing to secure MiCA licenceCLARITY Act developer safe-harbor (BRCA / Section 604) goes to the wire as Wyden fights to keep it intact - TFTC: Wyden, CLARITY Act, Section 604 developer safe harbor / Coin Center: The BRCA survived CLARITY's markup, do not give it up nowBIP-110 data-filtering soft fork heads for its deadline with miner signaling near zero - CoinDesk: Bitcoin's BIP-110 fork deadline nears with miner support at zero / Bitcoin Optech #412RELEASESBitcoin core / protocolBitcoin Core 30.3 - 2026-07-10Point release on the current 30.x line. Grab binaries from bitcoincore.org (deterministic + signed), not GitHub attachments.Bitcoin Core 29.4 - 2026-07-10Maintenance release keeping the older stable branch patched for sovereign self-hosters.Hardware / signingSeedSigner 0.8.7 "Summer of SeedSigner" - 2026-07-0880 PRs from 20 contributors: localization to 22 languages (first RTL language, Persian), BBQr PSBT decoding, and a big codebase professionalization pass. Airgapped DIY signing for a much wider audience.BitBox02 Firmware 9.26.4 - 2026-07-09Small fix following the 9.26.3 security batch (out-of-bounds write fix, silent-payments and EIP-712 validation hardening). Paired with BitBoxApp 4.51.3.LightningCore Lightning 26.06.3 - 2026-07-09Latest in-window CLN (a coincurve dep bump in pyln-proto superseded 26.06.2 from 06-30).lnd 0.20.2-beta - 2026-07-10Maintenance release on the 0.20 branch, no migrations, built with go1.25.5. Follows the zero-timestamp DoS fix discussed last episode.LNbits 1.5.5 - 2026-07-08Revolut + Square payment options, better payment reliability across backends, faster theming, cached rates, improved CSV exports and OIDC/SSO fixes. (A same-day 1.5.6 followed.)Zeus 13.1.2 - 2026-07-02Bug fixes and UX polish: pasteable amount input, copy Lightning address, UTXO-picker label and LND address-generation fixes.EcashCashu TS 4.7.0 - 2026-07-09LTS release for the JS/TS Cashu library: NUT-29 batch quote checks plus fixes for malformed tokens and NUT-28 locking slots. Foundation layer for ecash wallets/mints.Cashu CDK 0.17.2 - 2026-06-29Exposes NUT-27 mint backup through the wallet bindings; Android 16KB page-size and Swift compatibility. (A 0.17.3 with NIP-47/NWC support shipped 07-13.)On-chain privacy / coinjoinAshigaru Desktop 1.1.0 - 2026-07-11Major redesign: dedicated Whirlpool mixing experience, private Electrum server discovery over Tor, card-based UTXO views with PayNym support, and a Whirlpool Stats tool. Post-Samourai sovereign coinjoin keeps shipping (this is a 1.0 -> 1.1 jump from last episode's launch).Wasabi Wallet 2.8.0 - 2026-06-27 [borderline, grace window]P2P sync of compact block filters (drops the central-server dependency), pay-in-coinjoin, sub-1 sat/vByte fees, payment batching, and arm64 Linux/Tails/Whonix support.P2P / no-KYCBull Bitcoin 6.12.8 - 2026-07-11Coins (UTXO) view, Coldcard NFC support, BitBox02 Nova Bluetooth on iOS, sub-1 sat/vByte fees, and swap recovery via mnemonic. Self-custody + non-KYC buy/sell.Aqua Wallet 0.5.1 - 2026-07-07OpenCryptoPay QR compatibility, broader LNURL support, more reliable Lightning via direct Boltz broadcasting.Bisq 1.10.3 - 2026-07-06Security update: disables filter-provided BTC nodes, hardens deposit-tx checks, and requires message signatures from the expected trade peer.Mostro Mobile 1.3.0 - 2026-07-03Transport-protocol v2 migration and more African payment methods (KES, MZN, TZS, UGX, ZAR, ZMW). Nostr-native P2P Bitcoin trading, no KYC.BasicSwap DEX 0.17.0 - 2026-07-09Cross-chain atomic-swap DEX. (A 0.17.1 patch followed 07-12.)Arkade 0.9.13 - 2026-07-07Small indexer fix. Ark self-custodial off-chain scaling.Self-hosting / infraumbrelOS 1.7.4 - 2026-07-10Fixes connectivity where remote access over Tor and Tor-using apps could fail to connect.StartOS start-wrt 1.0.0 - 2026-07-11First stable release of StartWRT, Start9's OpenWrt-based router OS. Sovereign networking layer to pair with a self-hosted server.Nostrngit-cli 2.6.3 - 2026-07-10ngit init now gives actionable account-setup guidance. Git-over-Nostr tooling, directly relevant to the GitHub-exodus / censorship-resistant-code thread.EDUCATIONEvolving Casa's Defenses Against Social Engineering -Practical writeup on how attackers social-engineer Bitcoin holders and how to defend. Pairs directly with the Lopp voice item for a self-custody-security segment listeners can act on.Bitcoin Privacy Tools Compared: CoinJoin vs PayJoin vs Silent Payments -Clean side-by-side of the main on-chain privacy techniques. Good "where do I actually start" pointer, topical given the Ashigaru and Wasabi releases and the ongoing Silent Payments rollout (BIP 352 reached Complete and the secp256k1 module merged in June; Sparrow shipped SP receiving last fortnight).Cove Wallet tutorial (BTC Sessions) -BTC Sessions walkthrough of the Cove wallet. Useful hands-on onboarding content if you want a "new self-custodian" education beat, which pairs with the MiCA self-custody-exodus news item.TO DONATE TO ROMAN'S DEFENSE FUND: https://freeromanstorm.com/donateHELP GET SAMOURAI A PARDONSIGN THE PETITION ----> https://www.change.org/p/stand-up-for-freedom-pardon-the-innocent-coders-jailed-for-building-privacy-tools DONATE TO THE FAMILIES ----> https://www.givesendgo.com/billandkeonneSUPPORT ON SOCIAL MEDIA ---> https://billandkeonne.org/VALUE FOR VALUEThanks for listening you Ungovernable Misfits, we appreciate your continued support and hope you enjoy the shows.You can support this episode using your time, talent or treasure.TIME:- create fountain clips for the show- create a meetup- help boost the signal on social mediaTALENT:- create ungovernable misfit inspired art, animation or music- design or implement some software that can make the podcast better- use whatever talents you have to make a contribution to the show!TREASURE:- BOOST IT OR STREAM SATS on the Podcasting 2.0 apps @ https://podcastapps.com- DONATE via Monero @ https://xmrchat.com/ugmf- BUY SOME STICKERS @ https://www.ungovernablemisfits.com/shop/FOUNDATIONhttps://foundation.xyz/ungovernableFoundation builds Bitcoin-centric tools that empower you to reclaim your digital sovereignty.As a sovereign computing company, Foundation is the antithesis of today's tech conglomerates. Returning to cypherpunk principles, they build open source technology that “can't be evil”.Thank you Foundation Devices for sponsoring the show!Use code: Ungovernable for $10 off of your purchaseCAKE WALLEThttps://cakewallet.comCake Wallet is an open-source, non-custodial wallet available on Android, iOS, macOS, and Linux.Features:- Built-in Exchange: Swap easily between Bitcoin and Monero.- User-Friendly: Simple interface for all users.Monero Users:- Batch Transactions: Send multiple payments at once.- Faster Syncing: Optimized syncing via specified restore heights- Proxy Support: Enhance privacy with proxy node options.
Welcome to episode 363 of The Cloud Pod, where the weather is always cloudy! Justin, Matt, and Ryan are in the studio this week to bring you all the latest in cloud and AI news, including Amazon SQS turning 20, Grok solving a Rubik's cube, and Cloudflare's new “spot the bot” tool, which harnesses *checks notes* monitoring mouse movements? Ok… It's been a busy week in the cloud, so let's get started! Titles we almost went with this week AI Speed Dating: Grok Wins, Cube Loses Grok, GPT, and Claude Walk Into a Rubik’s Cube One Gateway to Rule All the Claude Credentials AWS Puts a Bouncer on the Claude Code Party Claude Solves the Cube, GPT Just Sees Dark Faces Cloudflare Catches Bots by Their Shaky Hands GuardDuty Sniffs Out Bedrock Bandits at Last A big thanks to this week's sponsors: We're sponsorless! Want to get your brand, company, or service in front of a very enthusiastic group of cloud news seekers? You've come to the right place! Send us an email or hit us up on our Slack channel for more info. General News 01:36 Former GitHub CEO Unveils Distributed Git Network Built for AI Coding Agents Former GitHub.com CEO Thomas Dohmke has launched Entire, a startup building a distributed Git network aimed at reducing load on centralized hosting caused by AI coding agents. The company raised a $60 million seed round at a $300 million valuation. The core idea is to mirror GitHub repos across regions (US, Europe, and Australia currently) so AI agents pull from nearby mirrors instead of hitting a single central repo, which addresses rate-limiting and latency issues that come with high-volume automated cloning and pushing. Reported internal benchmarks include about 570,000 clones per hour on a single repo and 586 pushes per second, though these are self-reported and not yet independently verified; Entire says it plans to open source the Git backend and benchmarking tools for third-party validation. Beyond distribution, Entire is building a semantic layer on top of Git history, capturing agent prompts, reasoning, and tool calls, with features like Entire Blame tracing AI-generated code back to originating prompts, and Entire Review supporting multi-agent code review. Worth discussing: this treats AI agent traffic as a distinct infrastructure problem separate from human developer workflows, and the long-term roadmap includes data sovereignty features letting companies keep code within specific regions while staying connected to a global network. 03:31 Justin – “Get fired for having all these issues, and then solve the problem anyway. 06:03 Satya Nadella on X: “https://t.co/xv6csf1SbV” The problem: Microsoft CEO Satya Nadella coined the “Reverse Information Paradox”: AI flips Kenneth Arrow’s classic info paradox. Instead of sellers giving away value before being paid, buyers now have to feed proprietary knowledge into a model just to make it useful, paying twice: once in dollars, once in IP. The mechanism: Na
AI Chat with Maxime Lamothe-Brassard and Chris Luft.A new segment on the podcast: AI news in cybersecurity that is less than 24 hours old, discussed while it is still hot. Joining Chris for these conversations is LimaCharlie founder and CEO Maxime Lamothe-Brassard.In this episode:• Nipun Gupta (founder of Optimus Labs) reports that xAI's Grok Build CLI packaged and uploaded an entire local Git repository — commit history, branches and .env files with API keys — to a Google Cloud bucket; wire-level analysis via mitmproxy, a quiet server-side fix, and why you should rotate keys if you used the tool.• Fortinet's take (via Mexico Business News) on AI accelerating vulnerability discovery and exploitation: 24–48 hours from disclosure to active exploitation vs. 16 days to patch — and whether "virtual patching" is a real mitigation or a feat of marketing.• The AI distillation debate: after years of arguing fair use for scraping the internet, frontier labs now object to competitors training on their model outputs — Business Insider's look at the irony, shared by Pascal Hetzscholdt (Wiley).• Neon Cyber's survey on shadow AI rising with seniority: 14% of individual contributors use unapproved AI tools vs. 63.7% of managers and 70% of VPs and above — and why enforcement, not awareness, is the real challenge.Stories covered:• / guptanipun_my-spare-laptop-ran-completely-... • https://mexicobusiness.news/cybersecu...• / pascal-hetzscholdt_quote-heres-some-delici... • https://neoncyber.com/blog/shadow-ai-...Chapters:0:00 Intro — welcome to AI Chat0:45 Grok Build CLI uploading entire repos (Nipun Gupta / Optimus Labs)4:57 AI is outpacing patch management — is virtual patching the answer?12:32 The AI distillation debate: scraping irony at the frontier labs16:29 Shadow AI use rises with seniority (Neon Cyber)22:51 Wrap-upThe Cybersecurity Defenders Podcast — a podcast about cybersecurity and the people that keep the internet safe. New episodes drop weekly.Subscribe wherever you listen:• Spotify: https://open.spotify.com/show/6ep00ze...• Apple Podcasts: https://podcasts.apple.com/us/podcast...• YouTube: / @limacharlieio