Podcasts about Java

Indonesian island

  • 3,782PODCASTS
  • 12,563EPISODES
  • 43mAVG DURATION
  • 2DAILY NEW EPISODES
  • Mar 9, 2026LATEST
Java

POPULARITY

20192020202120222023202420252026

Categories



Best podcasts about Java

Show all podcasts related to java

Latest podcast episodes about Java

Java with Juli
The 5 Love Languages (& Why Your Spouse's Love Tank Is Still Empty), #599

Java with Juli

Play Episode Listen Later Mar 9, 2026 36:39


You know your spouse's love language, and you try to use it. So why is their love tank always running on empty? This week, we're expanding the classic framework to include personality nuances, seasonal shifts, overdoing it (yes, that's possible!), and love tank "leaks." Plus, you'll learn why gifts aren't always about money and why physical touch isn't always about sex.  Join us for a conversation about moving past formulas and becoming a better student of the one you love. Guests: Drs. Les & Leslie Parrott   Follow-up Resources: Listen to Dr. Gary Chapman talk about the Five Love Languages on Java #592 The Love Language that Matters Most. Take the free relationship assessment at myheartchart.com  The Five Love Languages Premium Assessment The Love Language That Matters Most by Dr. Gary Chapman, Drs. Les and Leslie Parrott  Follow Les & Leslie at @lesandleslie Follow Authentic Intimacy at @authenticintimacy    

javaswag
#88 - Руслан Ибрагимов - о будущем Kotlin и архитектуре Snowflake

javaswag

Play Episode Listen Later Mar 8, 2026 89:56


В гостях Руслан Ибрагимов — Kotlin-разработчик и архитектор. Обсуждаем эволюцию языка, замену шардированных баз на Snowflake и модернизацию легаси с помощью ИИ. 00:00 — Интро 03:00 — Путь Руслана в Kotlin 06:00 — Преимущества Kotlin перед Java 11:00 — Новая обработка ошибок 16:00 — Проблемы Kotlin Multiplatform 18:00 — Тренды в Kotlin-сообществе 22:00 — Выбор бэкенд-фреймворков 31:00 — Обзор новых библиотек 36:00 — Работа со Snowflake 45:00 — Модернизация легаси через ИИ 51:00 — Автоматизация и Argo Workflows 01:24:00 — Поломка обратной совместимости Ссылки: Ktor Snowflake Argo Workflows Temporal jOOQ Koin Awesome Kotlin Kotlin MCP @kotlin_lang @TheDailyKotlin Ссылки на подкаст: Сайт - https://javaswag.github.io/ Телеграм - https://t.me/javaswag Youtube - https://www.youtube.com/@javaswag Linkedin - https://www.linkedin.com/in/volyihin/ X - https://x.com/javaswagpodcast

The Gestalt Gardener
The Gestalt Gardener | Mosquito Hawks and Praying Mantises

The Gestalt Gardener

Play Episode Listen Later Mar 6, 2026 90:44


This week, Felder calls us from Chicago while Abram fills in for Java, which means Felder can tell him (and you) fun facts about praying mantises, mosquito hawks, and explain what an azalea actually looks like. Let's Get Dirty!Email Felder anytime at FelderRushing.Blog and listen Friday and Saturday mornings at 9 to The Gestalt Gardener on MPB Think Radio. In the meantime, in Felder's words, "get out and get dirty."If you enjoyed listening to this podcast, please consider contributing to MPB: https://donate.mpbfoundation.org/mspb/podcast Hosted on Acast. See acast.com/privacy for more information.

Inside Java
"LazyConstants in JDK 26" [IJN]

Inside Java

Play Episode Listen Later Mar 6, 2026 10:30


Lazily initializing fields in Java is error-prone and undermines constant-folding. JDK 26 comes with JEP 526, which previews LazyConstant, a type that lazily initializes a value through a given Supplier. It executes that supplier at most once successfully and then assigns the value to a field annotated with @Stable, which allows constant folding. This API is also a poster child for how OpenJDK develops and evolves features.

Woven Well
Ep. 209: The Meaning of Sex for Singles and Married Couples, with Dr. Juli Slattery

Woven Well

Play Episode Listen Later Mar 6, 2026 17:53 Transcription Available


Does the Bible say anything more about sex than "thou shalt not"? From married couples using natural family planning or struggling with infertility to single women noticing elevated estrogen and sexual desire around ovulation, it's worth it to explore what role sex could play in our lives not only physically but spiritually. Today, Dr. Juli Slattery from Authentic Intimacy joins Caitlin to talk about these things and describe the beautiful narrative around sex laid out for us in Scripture. This episode is not just for married couples or those who are sexually active, but all believers who want to dive deeper into understanding how our sexuality reflects our faith. NOTE: This episode may not be appropriate for all audiences due to the topic, which openly discusses sex and sexuality. GUEST BIO: Dr. Juli Slattery is the president and co-founder of Authentic Intimacy, a ministry helping women and people overall make sense of God and sexuality. She's the host of a weekly podcast, Java with Juli, and has authored or co-authored 14 books, including God, Sex, and Your Marriage and Rethinking Sexuality.SHOW NOTES:Authentic Intimacy websiteJava with Juli podcastEp. 29: Should we think theologically about fertility? with Dr. Cameron JorgensonEp. 18: Nurturing Intimacy while practicing NFP and beyondEp. 80: Intimacy with NFP (Natural Family Planning)Send a textSupport the showOther great ways to connect with Woven Natural Fertility Care: Learn the Creighton Model System with us! Register here! Get our monthly newsletter: Get the updates! Chat about issues of fertility + faith: Substack Follow us on Instagram: @wovenfertility Watch our episodes on YouTube: @wovenfertility Love the content? The biggest gift you could give is to click a 5 star review and write why it was so meaningful! This podcast is provided for educational and informational purposes only and does not constitute providing medical advice or professional services. The information provided should not be used for diagnosing or treating a health problem or disease, and those seeking personal medical advice should consult with a licensed physician. Always seek the advice of your doctor or other qualified health provider regarding a medical condition. If you think you may have a medical emergency, call 911 or go to the nearest emergency room immediately. Neither Woven nor its staff, nor any contributor to this podcast, makes any represe...

Next Stop, Mississippi
Next Stop MS | Java Birthday Shenanigans & The Little Mercies @ Urban Foxes

Next Stop, Mississippi

Play Episode Listen Later Mar 6, 2026 47:51


Today, it's birthday shenanigans for Java Chatman, then we'll check out what's happening around your neck of the woods, before a final stop at Urban Foxes in Jackson to sit down with multi-instrumentalist songwriters, Bronwyn Chelette, Shanice Richards, and Rosalee Walsh of The Little Mercies! Stay tuned, buckle up and hold on tight for your Next Stop, Mississippi!"What's Happening Around Your Neck of the Woods" Event Listing:Sapphire Anniversary Exhibit: Celebrating 45 Years of The Chimneyville Weavers & Spinners GuildAli Siddiq: In The ShadowsWe Them One's Comedy Tour: MemphisWe Them One's Comedy Tour: BiloxiGulf Coast Walk for DiabetesGrammy Museum Mississippi 10 Year CelebrationWatch this episode on MPB's YouTube Channel: Next Stop Mississippi - Java's Birthday Shenanigans & The Little Mercies @ Urban Foxes Hosted on Acast. See acast.com/privacy for more information.

4:13 Podcast
#392: Jennifer's Sons Interview Her [Part 2]

4:13 Podcast

Play Episode Listen Later Mar 5, 2026 26:29


Last week, we flipped the mic and you got to hear my two sons interview me! If you joined us, you know this conversation only scratched the surface about ministry, blindness, writing, and speaking. So today, we're picking right back up where we left off and going deeper into the story behind the ministry and the heart behind the microphone! In Part Two of this special miniseries, the questions turn more personal as we talk about how C.S. Lewis found his way into my life during a season of depression—and how his words helped shape my faith, my thinking, and my writing.  We also rewind to some surprising beginnings: my first exposure to audiobooks, why I wasn't a reader growing up (yes, really!), and the unexpected author who helped me come alive inside. Then we fast-forward to what may be on the horizon—a book I'm prayerfully considering writing next. SHOW NOTES: 413Podcast.com/392  Read the episode TRANSCRIPT in the show notes. Get my weekly email, Java with Jennifer, to be notified when a new podcast episode releases. Subscribe HERE.

Coffey & Code
The Future of Learning: AI, Robotics & Creative Solutions

Coffey & Code

Play Episode Listen Later Mar 5, 2026 33:22


This episode kicks off with a look at the unconventional path of Steve Goodgame, whose journey from agriculture to the Executive Director of the KISS Institute for Practical Robotics (KIPR) proves that the best tech leaders often come from diverse backgrounds. Steve and Ashley discuss the fundamental shift needed in STEM: moving away from "Lego-style" instruction manuals and toward Inquiry-Based Learning. At KIPR, the goal isn't just to build a robot; it's to build a problem-solver who can handle the frustration of a failing sensor or a bug in the code. The heart of the technical discussion centers on Botball, KIPR's flagship program. For the tech crowd, the "hook" here is autonomy. Unlike typical RC-style competitions, Botball robots are fully autonomous, requiring students to write sophisticated code in C, C++, or Java. Steve explains how this creates a high-stakes environment where the robot must "think" for itself on the game board. They also touch on the Junior Botball Challenge, which scales these complex engineering concepts down for younger students without losing the technical rigor. As the conversation turns toward the future, Ashley and Steve tackle the "elephant in the room": Generative AI. They explore how AI is being integrated into the KIPR ecosystem, not as a way to "cheat," but as a high-level tutor that helps students debug embedded systems and refine their logic. This leads into a preview of the 2026 "Stack Attack" season and the upcoming Global Conference on Educational Robotics (GCER) in Norman, Oklahoma.  Whether you are a developer, an educator, or a tech enthusiast, this episode is a masterclass in how we can use robotics to bridge the gap between classroom theory and real-world execution. Quick Links & Resources The Organization: KISS Institute for Practical Robotics (KIPR) The Programs: Botball Robotics and the Junior Botball Challenge The Tech: Virtual Botball Academy (Simulator and Online IDE) The Event: Global Conference on Educational Robotics (GCER) 2026 EPISODE CREDITS:Produced and edited by Ashley Coffey. Cover art designed by Ashley Coffey.Headshot by Brandlink MediaIntroduction music composed and produced by Ashley Coffey LINKSFollow Coffey & Code on Instagram, Facebook, Linkedin, and YouTube for the latest emerging tech updates! Subscribe to the Coffey & Code Podcast wherever you get your podcasts to be notified when new episodes go live. © 2026 Coffey & Code Podcast. All rights reserved. The content of this podcast, including but not limited to text, graphics, audio, and images, is the property of Ashley Coffey and may not be reproduced, redistributed, or used in any manner without the express written consent of the owner. Hosted by Simplecast, an AdsWizz company. See pcm.adswizz.com for information about our collection and use of personal data for advertising.

PodDev
Programmez! podcast 82 : contribuer à l'open source et l'initiative Merge Forward

PodDev

Play Episode Listen Later Mar 5, 2026 23:19


La rédaction de Programmez! échange avec Donia Chaiehloudj sur comment contribuer à un projet open source et l'initiative Merge Forward de la CNCFSite CNCF : https://www.linkedin.com/company/merge-forward-community/Hébergé par Ausha. Visitez ausha.co/politique-de-confidentialite pour plus d'informations.

airhacks.fm podcast with adam bien
From Gorillas to AWS CDK

airhacks.fm podcast with adam bien

Play Episode Listen Later Mar 4, 2026 53:53


An airhacks.fm conversation with Thorsten Hoeger (@hoegertn) about: first computer experience with an IBM 8086 and learning programming by modifying the QBasic Gorilla game, early programming journey from QBasic to Visual Basic and the discovery of event-driven programming, building a password security script for autoexec.bat as a childhood project, transition from Visual Basic to Java around 2005 starting with Java 1.4.2, working at a small bank in Stuttgart building a core banking system, experience with Eclipse RCP rich client platform and the overhead of plugin architecture in business software, migration from Swing to Eclipse RCP frontend with JBoss application server backend, building a custom Spring-based microservice framework called Dwallin (Icelandic for dwarf) before Spring Boot existed, using Apache CXF for REST and RPC over messaging with ActiveMQ, comparison of Java development trajectories between annotation-based and XML-heavy approaches, discussion of the infamous Java and XML O'Reilly book that popularized XML configuration, xdoclet as a precursor to Java annotations, contrasting approaches of JBoss-based thin WAR deployments versus Spring-based embedded server microservices, university experience learning Ada programming language and its strict compiler as excellent for learning programming, PL/SQL's Ada-based origins, brief experience with OSGi and strong criticism of its complexity and poor developer experience, comparison of OSGi with Java Platform Module System (JPMS), founding Taimos consulting company 10 years ago originally building BlackBerry enterprise software, pivoting to AWS migration consulting for regulated industries including banks and insurance companies, strong preference for serverless architecture with lambda Step Functions API Gateway and DynamoDB, criticism of running kubernetes on AWS versus using native services like ECS Fargate, the distinction between running "in the cloud" versus "on the cloud", detailed discussion of why GraalVM native images are unnecessary on AWS Lambda due to compliance overhead and memory allocation model, quarkus and SnapStart as solutions for Lambda cold start problems, Java's cost efficiency on Lambda due to fast execution times, involvement with AWS CDK since 2018-2019 including building L2 constructs for EC2 and AppSync, shift from code contributions to community organizing and prioritization work with the CDK team, launching CDK Terrain as successor to CDK for Terraform, nuanced discussion of open source economics when the project primarily benefits a paid cloud provider, using GitHub as a personal index and dashboard for reusable project templates, consulting perspective on contributing to open source for code reuse across multiple clients, teaser for a future deep-dive episode on CDK internals and promoting Java usage with CDK Thorsten Hoeger on twitter: @hoegertn

Spring Office Hours
S5E08 - DevNexus Preview with Glenn Renfro

Spring Office Hours

Play Episode Listen Later Mar 3, 2026 65:36


Join Dan Vega and DaShaun Carter for the latest updates from the Spring Ecosystem. In this episode, Dan and DaShaun are joined by Glenn Renfro to preview Devnexus, one of the largest Java and developer conferences in North America. They'll discuss what attendees can look forward to, must-see sessions, and the latest Spring-related talks on the schedule. Whether you're attending in person or following along remotely, this episode will get you up to speed on what's happening at Devnexus. You can participate in our live stream to ask questions or catch the replay on your preferred podcast platform.Show Notes:DevNexusVMWare Tanzu at DevNexus 2026

Top Albania Radio
Nga kunja e ‘Vrenozit' për Monika Kryemadhin, te fushata e ‘Endrit' për ‘Stefin'!

Top Albania Radio

Play Episode Listen Later Mar 3, 2026 53:24


Të informohesh dhe të argëtohesh… duket si mision i pamundur! Por jo për Julian Hurdha dhe Anxhelo Shkreli! Dyshja sjellin për publikun “Top Fare”, një emision humoristik ku nuk do të mungojnë të qeshurat, por as aktualiteti. Java nis me programin më provokues dhe që nuk kursen askënd. Më pak sarkazëm, ironi e pak ‘spec djegës', pasditet tuaja në Top Albania Radio nuk do jenë kurrë të mërzitshme!

java top albania radio
AWS Morning Brief
The AI Broke Production But Please Don't Tell Anyone

AWS Morning Brief

Play Episode Listen Later Mar 2, 2026 7:21


AWS Morning Brief for the week of March 2nd, with Corey Quinn. Links:Amazon Aurora DSQL launches Playground for interactive database exploration Amazon Redshift Serverless introduces 3-year Serverless ReservationsAmazon S3 now provides AWS source region information in server access logs AWS Compute Optimizer now applies AWS-generated tags to EBS snapshots created during automationAWS Lambda Durable Execution SDK for Java now available in Developer PreviewAWS Trusted Advisor now delivers more accurate unused NAT Gateway checks powered by AWS Compute Optimizer6,000 AWS accounts, three people, one platform: Lessons learnedPetabyte-Scale Cost Optimization: How a Video Hosting Platform Saved 70% on S3Transform live video for mobile audiences with AWS Elemental Inference Migrate Amazon EC2 to ECS Express Mode using Kiro CLI and MCP servers AI-augmented threat actor accesses FortiGate devices at scaleAWS posts “correct the record” piece on AI bot outage

Selected by | Top Albania Radio
Selected By Dj Keddos 01/03/2026 – Part 1

Selected by | Top Albania Radio

Play Episode Listen Later Mar 2, 2026 46:18


Përzgjedhur nga Dee Jay-it e Top Albania Radios, mbrëmja e të dielës është e gjitha për t'u shijiuar. Java mbyllet me muzikë të mirë dhe përzgjidhet nga DJ resident të Top Albania Radio.

dj java deejay top albania radio
Top Albania Radio
Selected By Dj Keddos 01/03/2026 – Part 1

Top Albania Radio

Play Episode Listen Later Mar 2, 2026 46:18


Përzgjedhur nga Dee Jay-it e Top Albania Radios, mbrëmja e të dielës është e gjitha për t'u shijiuar. Java mbyllet me muzikë të mirë dhe përzgjidhet nga DJ resident të Top Albania Radio.

dj java deejay top albania radio
Top Albania Radio
Selected By Dj Keddos 01/03/2026 – Part 2

Top Albania Radio

Play Episode Listen Later Mar 2, 2026 47:14


Përzgjedhur nga Dee Jay-it e Top Albania Radios, mbrëmja e të dielës është e gjitha për t'u shijiuar. Java mbyllet me muzikë të mirë dhe përzgjidhet nga DJ resident të Top Albania Radio.

dj java deejay top albania radio
Selected by | Top Albania Radio
Selected By Dj Keddos 01/03/2026 – Part 2

Selected by | Top Albania Radio

Play Episode Listen Later Mar 2, 2026 47:14


Përzgjedhur nga Dee Jay-it e Top Albania Radios, mbrëmja e të dielës është e gjitha për t'u shijiuar. Java mbyllet me muzikë të mirë dhe përzgjidhet nga DJ resident të Top Albania Radio.

dj java deejay top albania radio
The U.S. Navy History Podcast
Battle of Badung Strait: ABDA's Night Counterattack at Bali

The U.S. Navy History Podcast

Play Episode Listen Later Mar 1, 2026 99:05


Dale and Christophe discuss the February 1942 Battle of Badung ("Bong/Barong") Strait in the Netherlands East Indies, framing it within Japan's rapid early-Pacific-War offensives after Pearl Harbor and the sinking of HMS Prince of Wales and HMS Repulse, and Japan's drive to seize oil and strategic airfields. They explain ABDA Command under Dutch Rear Admiral Karel Doorman as a multinational, unevenly coordinated force facing Japanese air superiority, refined night-fighting doctrine, and Type 93 “Long Lance” torpedoes. Japan lands troops from the 48th Infantry Division on Bali on February 19 and moves to secure Denpasar airfield, prompting Allied surface counterattacks in confined waters. U.S. Clemson-class destroyers fire torpedoes without confirmed hits and withdraw; Dutch cruisers De Ruyter and Java with destroyers fight Japanese escorts, suffer damage, evade torpedoes, and also withdraw, leaving Bali secured and foreshadowing the Battle of the Java Sea. The episode closes honoring Medal of Honor recipient PFC Charles N. DeGlopper (killed June 9, 1944, near La Fière, France).

Software Sessions
Bryan Cantrill on Oxide Computer

Software Sessions

Play Episode Listen Later Feb 27, 2026 89:58


Bryan Cantrill is the co-founder and CTO of Oxide Computer Company. We discuss why the biggest cloud providers don't use off the shelf hardware, how scaling data centers at samsung's scale exposed problems with hard drive firmware, how the values of NodeJS are in conflict with robust systems, choosing Rust, and the benefits of Oxide Computer's rack scale approach. This is an extended version of an interview posted on Software Engineering Radio. Related links Oxide Computer Oxide and Friends Illumos Platform as a Reflection of Values RFD 26 bhyve CockroachDB Heterogeneous Computing with Raja Koduri Transcript You can help correct transcripts on GitHub. Intro [00:00:00] Jeremy: Today I am talking to Bryan Cantrill. He's the co-founder and CTO of Oxide computer company, and he was previously the CTO of Joyent and he also co-authored the DTrace Tracing framework while he was at Sun Microsystems. [00:00:14] Jeremy: Bryan, welcome to Software Engineering radio. [00:00:17] Bryan: Uh, awesome. Thanks for having me. It's great to be here. [00:00:20] Jeremy: You're the CTO of a company that makes computers. But I think before we get into that, a lot of people who built software, now that the actual computer is abstracted away, they're using AWS or they're using some kind of cloud service. So I thought we could start by talking about, data centers. [00:00:41] Jeremy: 'cause you were. Previously working at Joyent, and I believe you got bought by Samsung and you've previously talked about how you had to figure out, how do I run things at Samsung's scale. So how, how, how was your experience with that? What, what were the challenges there? Samsung scale and migrating off the cloud [00:01:01] Bryan: Yeah, I mean, so at Joyent, and so Joyent was a cloud computing pioneer. Uh, we competed with the likes of AWS and then later GCP and Azure. Uh, and we, I mean, we were operating at a scale, right? We had a bunch of machines, a bunch of dcs, but ultimately we know we were a VC backed company and, you know, a small company by the standards of, certainly by Samsung standards. [00:01:25] Bryan: And so when, when Samsung bought the company, I mean, the reason by the way that Samsung bought Joyent is Samsung's. Cloud Bill was, uh, let's just say it was extremely large. They were spending an enormous amount of money every year on, on the public cloud. And they realized that in order to secure their fate economically, they had to be running on their own infrastructure. [00:01:51] Bryan: It did not make sense. And there's not, was not really a product that Samsung could go buy that would give them that on-prem cloud. Uh, I mean in that, in that regard, like the state of the market was really no different. And so they went looking for a company, uh, and bought, bought Joyent. And when we were on the inside of Samsung. [00:02:11] Bryan: That we learned about Samsung scale. And Samsung loves to talk about Samsung scale. And I gotta tell you, it is more than just chest thumping. Like Samsung Scale really is, I mean, just the, the sheer, the number of devices, the number of customers, just this absolute size. they really wanted to take us out to, to levels of scale, certainly that we had not seen. [00:02:31] Bryan: The reason for buying Joyent was to be able to stand up on their own infrastructure so that we were gonna go buy, we did go buy a bunch of hardware. Problems with server hardware at scale [00:02:40] Bryan: And I remember just thinking, God, I hope Dell is somehow magically better. I hope the problems that we have seen in the small, we just. You know, I just remember hoping and hope is hope. It was of course, a terrible strategy and it was a terrible strategy here too. Uh, and the we that the problems that we saw at the large were, and when you scale out the problems that you see kind of once or twice, you now see all the time and they become absolutely debilitating. [00:03:12] Bryan: And we saw a whole series of really debilitating problems. I mean, many ways, like comically debilitating, uh, in terms of, of showing just how bad the state-of-the-art. Yes. And we had, I mean, it should be said, we had great software and great software expertise, um, and we were controlling our own system software. [00:03:35] Bryan: But even controlling your own system software, your own host OS, your own control plane, which is what we had at Joyent, ultimately, you're pretty limited. You go, I mean, you got the problems that you can obviously solve, the ones that are in your own software, but the problems that are beneath you, the, the problems that are in the hardware platform, the problems that are in the componentry beneath you become the problems that are in the firmware. IO latency due to hard drive firmware [00:04:00] Bryan: Those problems become unresolvable and they are deeply, deeply frustrating. Um, and we just saw a bunch of 'em again, they were. Comical in retrospect, and I'll give you like a, a couple of concrete examples just to give, give you an idea of what kinda what you're looking at. one of the, our data centers had really pathological IO latency. [00:04:23] Bryan: we had a very, uh, database heavy workload. And this was kind of right at the period where you were still deploying on rotating media on hard drives. So this is like, so. An all flash buy did not make economic sense when we did this in, in 2016. This probably, it'd be interesting to know like when was the, the kind of the last time that that actual hard drives made sense? [00:04:50] Bryan: 'cause I feel this was close to it. So we had a, a bunch of, of a pathological IO problems, but we had one data center in which the outliers were actually quite a bit worse and there was so much going on in that system. It took us a long time to figure out like why. And because when, when you, when you're io when you're seeing worse io I mean you're naturally, you wanna understand like what's the workload doing? [00:05:14] Bryan: You're trying to take a first principles approach. What's the workload doing? So this is a very intensive database workload to support the, the object storage system that we had built called Manta. And that the, the metadata tier was stored and uh, was we were using Postgres for that. And that was just getting absolutely slaughtered. [00:05:34] Bryan: Um, and ultimately very IO bound with these kind of pathological IO latencies. Uh, and as we, you know, trying to like peel away the layers to figure out what was going on. And I finally had this thing. So it's like, okay, we are seeing at the, at the device layer, at the at, at the disc layer, we are seeing pathological outliers in this data center that we're not seeing anywhere else. [00:06:00] Bryan: And that does not make any sense. And the thought occurred to me. I'm like, well, maybe we are. Do we have like different. Different rev of firmware on our HGST drives, HGST. Now part of WD Western Digital were the drives that we had everywhere. And, um, so maybe we had a different, maybe I had a firmware bug. [00:06:20] Bryan: I, this would not be the first time in my life at all that I would have a drive firmware issue. Uh, and I went to go pull the firmware, rev, and I'm like, Toshiba makes hard drives? So we had, I mean. I had no idea that Toshiba even made hard drives, let alone that they were our, they were in our data center. [00:06:38] Bryan: I'm like, what is this? And as it turns out, and this is, you know, part of the, the challenge when you don't have an integrated system, which not to pick on them, but Dell doesn't, and what Dell would routinely put just sub make substitutes, and they make substitutes that they, you know, it's kind of like you're going to like, I don't know, Instacart or whatever, and they're out of the thing that you want. [00:07:03] Bryan: So, you know, you're, someone makes a substitute and like sometimes that's okay, but it's really not okay in a data center. And you really want to develop and validate a, an end-to-end integrated system. And in this case, like Toshiba doesn't, I mean, Toshiba does make hard drives, but they are a, or the data they did, uh, they basically were, uh, not competitive and they were not competitive in part for the reasons that we were discovering. [00:07:29] Bryan: They had really serious firmware issues. So the, these were drives that would just simply stop a, a stop acknowledging any reads from the order of 2,700 milliseconds. Long time, 2.7 seconds. Um. And that was a, it was a drive firmware issue, but it was highlighted like a much deeper issue, which was the simple lack of control that we had over our own destiny. [00:07:53] Bryan: Um, and it's an, it's, it's an example among many where Dell is making a decision. That lowers the cost of what they are providing you marginally, but it is then giving you a system that they shouldn't have any confidence in because it's not one that they've actually designed and they leave it to the customer, the end user, to make these discoveries. [00:08:18] Bryan: And these things happen up and down the stack. And for every, for whether it's, and, and not just to pick on Dell because it's, it's true for HPE, it's true for super micro, uh, it's true for your switch vendors. It's, it's true for storage vendors where the, the, the, the one that is left actually integrating these things and trying to make the the whole thing work is the end user sitting in their data center. AWS / Google are not buying off the shelf hardware but you can't use it [00:08:42] Bryan: There's not a product that they can buy that gives them elastic infrastructure, a cloud in their own DC The, the product that you buy is the public cloud. Like when you go in the public cloud, you don't worry about the stuff because that it's, it's AWS's issue or it's GCP's issue. And they are the ones that get this to ground. [00:09:02] Bryan: And they, and this was kind of, you know, the eye-opening moment. Not a surprise. Uh, they are not Dell customers. They're not HPE customers. They're not super micro customers. They have designed their own machines. And to varying degrees, depending on which one you're looking at. But they've taken the clean sheet of paper and the frustration that we had kind of at Joyent and beginning to wonder and then Samsung and kind of wondering what was next, uh, is that, that what they built was not available for purchase in the data center. [00:09:35] Bryan: You could only rent it in the public cloud. And our big belief is that public cloud computing is a really important revolution in infrastructure. Doesn't feel like a different, a deep thought, but cloud computing is a really important revolution. It shouldn't only be available to rent. You should be able to actually buy it. [00:09:53] Bryan: And there are a bunch of reasons for doing that. Uh, one in the one we we saw at Samsung is economics, which I think is still the dominant reason where it just does not make sense to rent all of your compute in perpetuity. But there are other reasons too. There's security, there's risk management, there's latency. [00:10:07] Bryan: There are a bunch of reasons why one might wanna to own one's own infrastructure. But, uh, that was very much the, the, so the, the genesis for oxide was coming out of this very painful experience and a painful experience that, because, I mean, a long answer to your question about like what was it like to be at Samsung scale? [00:10:27] Bryan: Those are the kinds of things that we, I mean, in our other data centers, we didn't have Toshiba drives. We only had the HDSC drives, but it's only when you get to this larger scale that you begin to see some of these pathologies. But these pathologies then are really debilitating in terms of those who are trying to develop a service on top of them. [00:10:45] Bryan: So it was, it was very educational in, in that regard. And you're very grateful for the experience at Samsung in terms of opening our eyes to the challenge of running at that kind of scale. [00:10:57] Jeremy: Yeah, because I, I think as software engineers, a lot of times we, we treat the hardware as a, as a given where, [00:11:08] Bryan: Yeah. [00:11:08] Bryan: Yeah. There's software in chard drives [00:11:09] Jeremy: It sounds like in, in this case, I mean, maybe the issue is not so much that. Dell or HP as a company doesn't own every single piece that they're providing you, but rather the fact that they're swapping pieces in and out without advertising them, and then when it becomes a problem, they're not necessarily willing to, to deal with the, the consequences of that. [00:11:34] Bryan: They just don't know. I mean, I think they just genuinely don't know. I mean, I think that they, it's not like they're making a deliberate decision to kind of ship garbage. It's just that they are making, I mean, I think it's exactly what you said about like, not thinking about the hardware. It's like, what's a hard drive? [00:11:47] Bryan: Like what's it, I mean, it's a hard drive. It's got the same specs as this other hard drive and Intel. You know, it's a little bit cheaper, so why not? It's like, well, like there's some reasons why not, and one of the reasons why not is like, uh, even a hard drive, whether it's rotating media or, or flash, like that's not just hardware. [00:12:05] Bryan: There's software in there. And that the software's like not the same. I mean, there are components where it's like, there's actually, whether, you know, if, if you're looking at like a resistor or a capacitor or something like this Yeah. If you've got two, two parts that are within the same tolerance. Yeah. [00:12:19] Bryan: Like sure. Maybe, although even the EEs I think would be, would be, uh, objecting that a little bit. But the, the, the more complicated you get, and certainly once you get to the, the, the, the kind of the hardware that we think of like a, a, a microprocessor, a a network interface card, a a, a hard driver, an NVME drive. [00:12:38] Bryan: Those things are super complicated and there's a whole bunch of software inside of those things, the firmware, and that's the stuff that, that you can't, I mean, you say that software engineers don't think about that. It's like you, no one can really think about that because it's proprietary that's kinda welded shut and you've got this abstraction into it. [00:12:55] Bryan: But the, the way that thing operates is very core to how the thing in aggregate will behave. And I think that you, the, the kind of, the, the fundamental difference between Oxide's approach and the approach that you get at a Dell HP Supermicro, wherever, is really thinking holistically in terms of hardware and software together in a system that, that ultimately delivers cloud computing to a user. [00:13:22] Bryan: And there's a lot of software at many, many, many, many different layers. And it's very important to think about, about that software and that hardware holistically as a single system. [00:13:34] Jeremy: And during that time at Joyent, when you experienced some of these issues, was it more of a case of you didn't have enough servers experiencing this? So if it would happen, you might say like, well, this one's not working, so maybe we'll just replace the hardware. What, what was the thought process when you were working at that smaller scale and, and how did these issues affect you? UEFI / Baseboard Management Controller [00:13:58] Bryan: Yeah, at the smaller scale, you, uh, you see fewer of them, right? You just see it's like, okay, we, you know, what you might see is like, that's weird. We kinda saw this in one machine versus seeing it in a hundred or a thousand or 10,000. Um, so you just, you just see them, uh, less frequently as a result, they are less debilitating. [00:14:16] Bryan: Um, I, I think that it's, when you go to that larger scale, those things that become, that were unusual now become routine and they become debilitating. Um, so it, it really is in many regards a function of scale. Uh, and then I think it was also, you know, it was a little bit dispiriting that kind of the substrate we were building on really had not improved. [00:14:39] Bryan: Um, and if you look at, you know, the, if you buy a computer server, buy an x86 server. There is a very low layer of firmware, the BIOS, the basic input output system, the UEFI BIOS, and this is like an abstraction layer that has, has existed since the eighties and hasn't really meaningfully improved. Um, the, the kind of the transition to UEFI happened with, I mean, I, I ironically with Itanium, um, you know, two decades ago. [00:15:08] Bryan: but beyond that, like this low layer, this lowest layer of platform enablement software is really only impeding the operability of the system. Um, you look at the baseboard management controller, which is the kind of the computer within the computer, there is a, uh, there is an element in the machine that needs to handle environmentals, that needs to handle, uh, operate the fans and so on. [00:15:31] Bryan: Uh, and that traditionally has this, the space board management controller, and that architecturally just hasn't improved in the last two decades. And, you know, that's, it's a proprietary piece of silicon. Generally from a company that no one's ever heard of called a Speed, uh, which has to be, is written all on caps, so I guess it needs to be screamed. [00:15:50] Bryan: Um, a speed has a proprietary part that has a, there is a root password infamously there, is there, the root password is encoded effectively in silicon. So, uh, which is just, and for, um, anyone who kind of goes deep into these things, like, oh my God, are you kidding me? Um, when we first started oxide, the wifi password was a fraction of the a speed root password for the bmc. [00:16:16] Bryan: It's kinda like a little, little BMC humor. Um, but those things, it was just dispiriting that, that the, the state-of-the-art was still basically personal computers running in the data center. Um, and that's part of what, what was the motivation for doing something new? [00:16:32] Jeremy: And for the people using these systems, whether it's the baseboard management controller or it's the The BIOS or UF UEFI component, what are the actual problems that people are seeing seen? Security vulnerabilities and poor practices in the BMC [00:16:51] Bryan: Oh man, I, the, you are going to have like some fraction of your listeners, maybe a big fraction where like, yeah, like what are the problems? That's a good question. And then you're gonna have the people that actually deal with these things who are, did like their heads already hit the desk being like, what are the problems? [00:17:06] Bryan: Like what are the non problems? Like what, what works? Actually, that's like a shorter answer. Um, I mean, there are so many problems and a lot of it is just like, I mean, there are problems just architecturally these things are just so, I mean, and you could, they're the problems spread to the horizon, so you can kind of start wherever you want. [00:17:24] Bryan: But I mean, as like, as a really concrete example. Okay, so the, the BMCs that, that the computer within the computer that needs to be on its own network. So you now have like not one network, you got two networks that, and that network, by the way, it, that's the network that you're gonna log into to like reset the machine when it's otherwise unresponsive. [00:17:44] Bryan: So that going into the BMC, you can are, you're able to control the entire machine. Well it's like, alright, so now I've got a second net network that I need to manage. What is running on the BMC? Well, it's running some. Ancient, ancient version of Linux it that you got. It's like, well how do I, how do I patch that? [00:18:02] Bryan: How do I like manage the vulnerabilities with that? Because if someone is able to root your BMC, they control the system. So it's like, this is not you've, and now you've gotta go deal with all of the operational hair around that. How do you upgrade that system updating the BMC? I mean, it's like you've got this like second shadow bad infrastructure that you have to go manage. [00:18:23] Bryan: Generally not open source. There's something called open BMC, um, which, um, you people use to varying degrees, but you're generally stuck with the proprietary BMC, so you're generally stuck with, with iLO from HPE or iDRAC from Dell or, or, uh, the, uh, su super micros, BMC, that H-P-B-M-C, and you are, uh, it is just excruciating pain. [00:18:49] Bryan: Um, and that this is assuming that by the way, that everything is behaving correctly. The, the problem is that these things often don't behave correctly, and then the consequence of them not behaving correctly. It's really dire because it's at that lowest layer of the system. So, I mean, I'll give you a concrete example. [00:19:07] Bryan: a customer of theirs reported to me, so I won't disclose the vendor, but let's just say that a well-known vendor had an issue with their, their temperature sensors were broken. Um, and the thing would always read basically the wrong value. So it was the BMC that had to like, invent its own ki a different kind of thermal control loop. [00:19:28] Bryan: And it would index on the, on the, the, the, the actual inrush current. It would, they would look at that at the current that's going into the CPU to adjust the fan speed. That's a great example of something like that's a, that's an interesting idea. That doesn't work. 'cause that's actually not the temperature. [00:19:45] Bryan: So like that software would crank the fans whenever you had an inrush of current and this customer had a workload that would spike the current and by it, when it would spike the current, the, the, the fans would kick up and then they would slowly degrade over time. Well, this workload was spiking the current faster than the fans would degrade, but not fast enough to actually heat up the part. [00:20:08] Bryan: And ultimately over a very long time, in a very painful investigation, it's customer determined that like my fans are cranked in my data center for no reason. We're blowing cold air. And it's like that, this is on the order of like a hundred watts, a server of, of energy that you shouldn't be spending and like that ultimately what that go comes down to this kind of broken software hardware interface at the lowest layer that has real meaningful consequence, uh, in terms of hundreds of kilowatts, um, across a data center. So this stuff has, has very, very, very real consequence and it's such a shadowy world. Part of the reason that, that your listeners that have dealt with this, that our heads will hit the desk is because it is really aggravating to deal with problems with this layer. [00:21:01] Bryan: You, you feel powerless. You don't control or really see the software that's on them. It's generally proprietary. You are relying on your vendor. Your vendor is telling you that like, boy, I don't know. You're the only customer seeing this. I mean, the number of times I have heard that for, and I, I have pledged that we're, we're not gonna say that at oxide because it's such an unaskable thing to say like, you're the only customer saying this. [00:21:25] Bryan: It's like, it feels like, are you blaming me for my problem? Feels like you're blaming me for my problem? Um, and what you begin to realize is that to a degree, these folks are speaking their own truth because the, the folks that are running at real scale at Hyperscale, those folks aren't Dell, HP super micro customers. [00:21:46] Bryan: They're actually, they've done their own thing. So it's like, yeah, Dell's not seeing that problem, um, because they're not running at the same scale. Um, but when you do run, you only have to run at modest scale before these things just become. Overwhelming in terms of the, the headwind that they present to people that wanna deploy infrastructure. The problem is felt with just a few racks [00:22:05] Jeremy: Yeah, so maybe to help people get some perspective at, at what point do you think that people start noticing or start feeling these problems? Because I imagine that if you're just have a few racks or [00:22:22] Bryan: do you have a couple racks or the, or do you wonder or just wondering because No, no, no. I would think, I think anyone who deploys any number of servers, especially now, especially if your experience is only in the cloud, you're gonna be like, what the hell is this? I mean, just again, just to get this thing working at all. [00:22:39] Bryan: It is so it, it's so hairy and so congealed, right? It's not designed. Um, and it, it, it, it's accreted it and it's so obviously accreted that you are, I mean, nobody who is setting up a rack of servers is gonna think to themselves like, yes, this is the right way to go do it. This all makes sense because it's, it's just not, it, I, it feels like the kit, I mean, kit car's almost too generous because it implies that there's like a set of plans to work to in the end. [00:23:08] Bryan: Uh, I mean, it, it, it's a bag of bolts. It's a bunch of parts that you're putting together. And so even at the smallest scales, that stuff is painful. Just architecturally, it's painful at the small scale then, but at least you can get it working. I think the stuff that then becomes debilitating at larger scale are the things that are, are worse than just like, I can't, like this thing is a mess to get working. [00:23:31] Bryan: It's like the, the, the fan issue that, um, where you are now seeing this over, you know, hundreds of machines or thousands of machines. Um, so I, it is painful at more or less all levels of scale. There's, there is no level at which the, the, the pc, which is really what this is, this is a, the, the personal computer architecture from the 1980s and there is really no level of scale where that's the right unit. Running elastic infrastructure is the hardware but also, hypervisor, distributed database, api, etc [00:23:57] Bryan: I mean, where that's the right thing to go deploy, especially if what you are trying to run. Is elastic infrastructure, a cloud. Because the other thing is like we, we've kinda been talking a lot about that hardware layer. Like hardware is, is just the start. Like you actually gotta go put software on that and actually run that as elastic infrastructure. [00:24:16] Bryan: So you need a hypervisor. Yes. But you need a lot more than that. You, you need to actually, you, you need a distributed database, you need web endpoints. You need, you need a CLI, you need all the stuff that you need to actually go run an actual service of compute or networking or storage. I mean, and for, for compute, even for compute, there's a ton of work to be done. [00:24:39] Bryan: And compute is by far, I would say the simplest of the, of the three. When you look at like networks, network services, storage services, there's a whole bunch of stuff that you need to go build in terms of distributed systems to actually offer that as a cloud. So it, I mean, it is painful at more or less every LE level if you are trying to deploy cloud computing on. What's a control plane? [00:25:00] Jeremy: And for someone who doesn't have experience building or working with this type of infrastructure, when you talk about a control plane, what, what does that do in the context of this system? [00:25:16] Bryan: So control plane is the thing that is, that is everything between your API request and that infrastructure actually being acted upon. So you go say, Hey, I, I want a provision, a vm. Okay, great. We've got a whole bunch of things we're gonna provision with that. We're gonna provision a vm, we're gonna get some storage that's gonna go along with that, that's got a network storage service that's gonna come out of, uh, we've got a virtual network that we're gonna either create or attach to. [00:25:39] Bryan: We've got a, a whole bunch of things we need to go do for that. For all of these things, there are metadata components that need, we need to keep track of this thing that, beyond the actual infrastructure that we create. And then we need to go actually, like act on the actual compute elements, the hostos, what have you, the switches, what have you, and actually go. [00:25:56] Bryan: Create these underlying things and then connect them. And there's of course, the challenge of just getting that working is a big challenge. Um, but getting that working robustly, getting that working is, you know, when you go to provision of vm, um, the, all the, the, the steps that need to happen and what happens if one of those steps fails along the way? [00:26:17] Bryan: What happens if, you know, one thing we're very mindful of is these kind of, you get these long tails of like, why, you know, generally our VM provisioning happened within this time, but we get these long tails where it takes much longer. What's going on? What, where in this process are we, are we actually spending time? [00:26:33] Bryan: Uh, and there's a whole lot of complexity that you need to go deal with that. There's a lot of complexity that you need to go deal with this effectively, this workflow that's gonna go create these things and manage them. Um, we use a, a pattern that we call, that are called sagas, actually is a, is a database pattern from the eighties. [00:26:51] Bryan: Uh, Katie McCaffrey is a, is a database reCrcher who, who, uh, I, I think, uh, reintroduce the idea of, of sagas, um, in the last kind of decade. Um, and this is something that we picked up, um, and I've done a lot of really interesting things with, um, to allow for, to this kind of, these workflows to be, to be managed and done so robustly in a way that you can restart them and so on. [00:27:16] Bryan: Uh, and then you guys, you get this whole distributed system that can do all this. That whole distributed system, that itself needs to be reliable and available. So if you, you know, you need to be able to, what happens if you, if you pull a sled or if a sled fails, how does the system deal with that? [00:27:33] Bryan: How does the system deal with getting an another sled added to the system? Like how do you actually grow this distributed system? And then how do you update it? How do you actually go from one version to the next? And all of that has to happen across an air gap where this is gonna run as part of the computer. [00:27:49] Bryan: So there are, it, it is fractally complicated. There, there is a lot of complexity here in, in software, in the software system and all of that. We kind of, we call the control plane. Um, and it, this is the what exists at AWS at GCP, at Azure. When you are hitting an endpoint that's provisioning an EC2 instance for you. [00:28:10] Bryan: There is an AWS control plane that is, is doing all of this and has, uh, some of these similar aspects and certainly some of these similar challenges. Are vSphere / Proxmox / Hyper-V in the same category? [00:28:20] Jeremy: And for people who have run their own servers with something like say VMware or Hyper V or Proxmox, are those in the same category? [00:28:32] Bryan: Yeah, I mean a little bit. I mean, it kind of like vSphere Yes. Via VMware. No. So it's like you, uh, VMware ESX is, is kind of a key building block upon which you can build something that is a more meaningful distributed system. When it's just like a machine that you're provisioning VMs on, it's like, okay, well that's actually, you as the human might be the control plane. [00:28:52] Bryan: Like, that's, that, that's, that's a much easier problem. Um, but when you've got, you know, tens, hundreds, thousands of machines, you need to do it robustly. You need something to coordinate that activity and you know, you need to pick which sled you land on. You need to be able to move these things. You need to be able to update that whole system. [00:29:06] Bryan: That's when you're getting into a control plane. So, you know, some of these things have kind of edged into a control plane, certainly VMware. Um, now Broadcom, um, has delivered something that's kind of cloudish. Um, I think that for folks that are truly born on the cloud, it, it still feels somewhat, uh, like you're going backwards in time when you, when you look at these kind of on-prem offerings. [00:29:29] Bryan: Um, but, but it, it, it's got these aspects to it for sure. Um, and I think that we're, um, some of these other things when you're just looking at KVM or just looks looking at Proxmox you kind of need to, to connect it to other broader things to turn it into something that really looks like manageable infrastructure. [00:29:47] Bryan: And then many of those projects are really, they're either proprietary projects, uh, proprietary products like vSphere, um, or you are really dealing with open source projects that are. Not necessarily aimed at the same level of scale. Um, you know, you look at a, again, Proxmox or, uh, um, you'll get an OpenStack. [00:30:05] Bryan: Um, and you know, OpenStack is just a lot of things, right? I mean, OpenStack has got so many, the OpenStack was kind of a, a free for all, for every infrastructure vendor. Um, and I, you know, there was a time people were like, don't you, aren't you worried about all these companies together that, you know, are coming together for OpenStack? [00:30:24] Bryan: I'm like, haven't you ever worked for like a company? Like, companies don't get along. By the way, it's like having multiple companies work together on a thing that's bad news, not good news. And I think, you know, one of the things that OpenStack has definitely struggled with, kind of with what, actually the, the, there's so many different kind of vendor elements in there that it's, it's very much not a product, it's a project that you're trying to run. [00:30:47] Bryan: But that's, but that very much is in, I mean, that's, that's similar certainly in spirit. [00:30:53] Jeremy: And so I think this is kind of like you're alluding to earlier, the piece that allows you to allocate, compute, storage, manage networking, gives you that experience of I can go to a web console or I can use an API and I can spin up machines, get them all connected. At the end of the day, the control plane. Is allowing you to do that in hopefully a user-friendly way. [00:31:21] Bryan: That's right. Yep. And in the, I mean, in order to do that in a modern way, it's not just like a user-friendly way. You really need to have a CLI and a web UI and an API. Those all need to be drawn from the same kind of single ground truth. Like you don't wanna have any of those be an afterthought for the other. [00:31:39] Bryan: You wanna have the same way of generating all of those different endpoints and, and entries into the system. Building a control plane now has better tools (Rust, CockroachDB) [00:31:46] Jeremy: And if you take your time at Joyent as an example. What kind of tools existed for that versus how much did you have to build in-house for as far as the hypervisor and managing the compute and all that? [00:32:02] Bryan: Yeah, so we built more or less everything in house. I mean, what you have is, um, and I think, you know, over time we've gotten slightly better tools. Um, I think, and, and maybe it's a little bit easier to talk about the, kind of the tools we started at Oxide because we kind of started with a, with a clean sheet of paper at oxide. [00:32:16] Bryan: We wanted to, knew we wanted to go build a control plane, but we were able to kind of go revisit some of the components. So actually, and maybe I'll, I'll talk about some of those changes. So when we, at, For example, at Joyent, when we were building a cloud at Joyent, there wasn't really a good distributed database. [00:32:34] Bryan: Um, so we were using Postgres as our database for metadata and there were a lot of challenges. And Postgres is not a distributed database. It's running. With a primary secondary architecture, and there's a bunch of issues there, many of which we discovered the hard way. Um, when we were coming to oxide, you have much better options to pick from in terms of distributed databases. [00:32:57] Bryan: You know, we, there was a period that now seems maybe potentially brief in hindsight, but of a really high quality open source distributed databases. So there were really some good ones to, to pick from. Um, we, we built on CockroachDB on CRDB. Um, so that was a really important component. That we had at oxide that we didn't have at Joyent. [00:33:19] Bryan: Um, so we were, I wouldn't say we were rolling our own distributed database, we were just using Postgres and uh, and, and dealing with an enormous amount of pain there in terms of the surround. Um, on top of that, and, and, you know, a, a control plane is much more than a database, obviously. Uh, and you've gotta deal with, uh, there's a whole bunch of software that you need to go, right. [00:33:40] Bryan: Um, to be able to, to transform these kind of API requests into something that is reliable infrastructure, right? And there, there's a lot to that. Uh, especially when networking gets in the mix, when storage gets in the mix, uh, there are a whole bunch of like complicated steps that need to be done, um, at Joyent. [00:33:59] Bryan: Um, we, in part because of the history of the company and like, look. This, this just is not gonna sound good, but it just is what it is and I'm just gonna own it. We did it all in Node, um, at Joyent, which I, I, I know it sounds really right now, just sounds like, well, you, you built it with Tinker Toys. You Okay. [00:34:18] Bryan: Uh, did, did you think it was, you built the skyscraper with Tinker Toys? Uh, it's like, well, okay. We actually, we had greater aspirations for the Tinker Toys once upon a time, and it was better than, you know, than Twisted Python and Event Machine from Ruby, and we weren't gonna do it in Java. All right. [00:34:32] Bryan: So, but let's just say that that experiment, uh, that experiment did ultimately end in a predictable fashion. Um, and, uh, we, we decided that maybe Node was not gonna be the best decision long term. Um, Joyent was the company behind node js. Uh, back in the day, Ryan Dahl worked for Joyent. Uh, and then, uh, then we, we, we. [00:34:53] Bryan: Uh, landed that in a foundation in about, uh, what, 2015, something like that. Um, and began to consider our world beyond, uh, beyond Node. Rust at Oxide [00:35:04] Bryan: A big tool that we had in the arsenal when we started Oxide is Rust. Um, and so indeed the name of the company is, is a tip of the hat to the language that we were pretty sure we were gonna be building a lot of stuff in. [00:35:16] Bryan: Namely Rust. And, uh, rust is, uh, has been huge for us, a very important revolution in programming languages. you know, there, there, there have been different people kind of coming in at different times and I kinda came to Rust in what I, I think is like this big kind of second expansion of rust in 2018 when a lot of technologists were think, uh, sick of Node and also sick of Go. [00:35:43] Bryan: And, uh, also sick of C++. And wondering is there gonna be something that gives me the, the, the performance, of that I get outta C. The, the robustness that I can get out of a C program but is is often difficult to achieve. but can I get that with kind of some, some of the velocity of development, although I hate that term, some of the speed of development that you get out of a more interpreted language. [00:36:08] Bryan: Um, and then by the way, can I actually have types, I think types would be a good idea? Uh, and rust obviously hits the sweet spot of all of that. Um, it has been absolutely huge for us. I mean, we knew when we started the company again, oxide, uh, we were gonna be using rust in, in quite a, quite a. Few places, but we weren't doing it by fiat. [00:36:27] Bryan: Um, we wanted to actually make sure we're making the right decision, um, at, at every different, at every layer. Uh, I think what has been surprising is the sheer number of layers at which we use rust in terms of, we've done our own embedded firmware in rust. We've done, um, in, in the host operating system, which is still largely in C, but very big components are in rust. [00:36:47] Bryan: The hypervisor Propolis is all in rust. Uh, and then of course the control plane, that distributed system on that is all in rust. So that was a very important thing that we very much did not need to build ourselves. We were able to really leverage, uh, a terrific community. Um. We were able to use, uh, and we've done this at Joyent as well, but at Oxide, we've used Illumos as a hostos component, which, uh, our variant is called Helios. [00:37:11] Bryan: Um, we've used, uh, bhyve um, as a, as as that kind of internal hypervisor component. we've made use of a bunch of different open source components to build this thing, um, which has been really, really important for us. Uh, and open source components that didn't exist even like five years prior. [00:37:28] Bryan: That's part of why we felt that 2019 was the right time to start the company. And so we started Oxide. The problems building a control plane in Node [00:37:34] Jeremy: You had mentioned that at Joyent, you had tried to build this in, in Node. What were the, what were the, the issues or the, the challenges that you had doing that? [00:37:46] Bryan: Oh boy. Yeah. again, we, I kind of had higher hopes in 2010, I would say. When we, we set on this, um, the, the, the problem that we had just writ large, um. JavaScript is really designed to allow as many people on earth to write a program as possible, which is good. I mean, I, I, that's a, that's a laudable goal. [00:38:09] Bryan: That is the goal ultimately of such as it is of JavaScript. It's actually hard to know what the goal of JavaScript is, unfortunately, because Brendan Ike never actually wrote a book. so that there is not a canonical, you've got kind of Doug Crockford and other people who've written things on JavaScript, but it's hard to know kind of what the original intent of JavaScript is. [00:38:27] Bryan: The name doesn't even express original intent, right? It was called Live Script, and it was kind of renamed to JavaScript during the Java Frenzy of the late nineties. A name that makes no sense. There is no Java in JavaScript. that is kind of, I think, revealing to kind of the, uh, the unprincipled mess that is JavaScript. [00:38:47] Bryan: It, it, it's very pragmatic at some level, um, and allows anyone to, it makes it very easy to write software. The problem is it's much more difficult to write really rigorous software. So, uh, and this is what I should differentiate JavaScript from TypeScript. This is really what TypeScript is trying to solve. [00:39:07] Bryan: TypeScript is like. How can, I think TypeScript is a, is a great step forward because TypeScript is like, how can we bring some rigor to this? Like, yes, it's great that it's easy to write JavaScript, but that's not, we, we don't wanna do that for Absolutely. I mean that, that's not the only problem we solve. [00:39:23] Bryan: We actually wanna be able to write rigorous software and it's actually okay if it's a little harder to write rigorous software that's actually okay if it gets leads to, to more rigorous artifacts. Um, but in JavaScript, I mean, just a concrete example. You know, there's nothing to prevent you from referencing a property that doesn't actually exist in JavaScript. [00:39:43] Bryan: So if you fat finger a property name, you are relying on something to tell you. By the way, I think you've misspelled this because there is no type definition for this thing. And I don't know that you've got one that's spelled correctly, one that's spelled incorrectly, that's often undefined. And then the, when you actually go, you say you've got this typo that is lurking in your what you want to be rigorous software. [00:40:07] Bryan: And if you don't execute that code, like you won't know that's there. And then you do execute that code. And now you've got a, you've got an undefined object. And now that's either gonna be an exception or it can, again, depends on how that's handled. It can be really difficult to determine the origin of that, of, of that error, of that programming. [00:40:26] Bryan: And that is a programmer error. And one of the big challenges that we had with Node is that programmer errors and operational errors, like, you know, I'm out of disk space as an operational error. Those get conflated and it becomes really hard. And in fact, I think the, the language wanted to make it easier to just kind of, uh, drive on in the event of all errors. [00:40:53] Bryan: And it's like, actually not what you wanna do if you're trying to build a reliable, robust system. So we had. No end of issues. [00:41:01] Bryan: We've got a lot of experience developing rigorous systems, um, again coming out of operating systems development and so on. And we want, we brought some of that rigor, if strangely, to JavaScript. So one of the things that we did is we brought a lot of postmortem, diagnos ability and observability to node. [00:41:18] Bryan: And so if, if one of our node processes. Died in production, we would actually get a core dump from that process, a core dump that we could actually meaningfully process. So we did a bunch of kind of wild stuff. I mean, actually wild stuff where we could actually make sense of the JavaScript objects in a binary core dump. JavaScript values ease of getting started over robustness [00:41:41] Bryan: Um, and things that we thought were really important, and this is the, the rest of the world just looks at this being like, what the hell is this? I mean, it's so out of step with it. The problem is that we were trying to bridge two disconnected cultures of one developing really. Rigorous software and really designing it for production, diagnosability and the other, really designing it to software to run in the browser and for anyone to be able to like, you know, kind of liven up a webpage, right? [00:42:10] Bryan: Is kinda the origin of, of live script and then JavaScript. And we were kind of the only ones sitting at the intersection of that. And you begin when you are the only ones sitting at that kind of intersection. You just are, you're, you're kind of fighting a community all the time. And we just realized that we are, there were so many things that the community wanted to do that we felt are like, no, no, this is gonna make software less diagnosable. It's gonna make it less robust. The NodeJS split and why people left [00:42:36] Bryan: And then you realize like, I'm, we're the only voice in the room because we have got, we have got desires for this language that it doesn't have for itself. And this is when you realize you're in a bad relationship with software. It's time to actually move on. And in fact, actually several years after, we'd already kind of broken up with node. [00:42:55] Bryan: Um, and it was like, it was a bit of an acrimonious breakup. there was a, uh, famous slash infamous fork of node called IoJS Um, and this was viewed because people, the community, thought that Joyent was being what was not being an appropriate steward of node js and was, uh, not allowing more things to come into to, to node. [00:43:19] Bryan: And of course, the reason that we of course, felt that we were being a careful steward and we were actively resisting those things that would cut against its fitness for a production system. But it's some way the community saw it and they, and forked, um, and, and I think the, we knew before the fork that's like, this is not working and we need to get this thing out of our hands. Platform is a reflection of values node summit talk [00:43:43] Bryan: And we're are the wrong hands for this? This needs to be in a foundation. Uh, and so we kind of gone through that breakup, uh, and maybe it was two years after that. That, uh, friend of mine who was um, was running the, uh, the node summit was actually, it's unfortunately now passed away. Charles er, um, but Charles' venture capitalist great guy, and Charles was running Node Summit and came to me in 2017. [00:44:07] Bryan: He is like, I really want you to keynote Node Summit. And I'm like, Charles, I'm not gonna do that. I've got nothing nice to say. Like, this is the, the, you don't want, I'm the last person you wanna keynote. He's like, oh, if you have nothing nice to say, you should definitely keynote. You're like, oh God, okay, here we go. [00:44:22] Bryan: He's like, no, I really want you to talk about, like, you should talk about the Joyent breakup with NodeJS. I'm like, oh man. [00:44:29] Bryan: And that led to a talk that I'm really happy that I gave, 'cause it was a very important talk for me personally. Uh, called Platform is a reflection of values and really looking at the values that we had for Node and the values that Node had for itself. And they didn't line up. [00:44:49] Bryan: And the problem is that the values that Node had for itself and the values that we had for Node are all kind of positives, right? Like there's nobody in the node community who's like, I don't want rigor, I hate rigor. It's just that if they had the choose between rigor and making the language approachable. [00:45:09] Bryan: They would choose approachability every single time. They would never choose rigor. And, you know, that was a, that was a big eye-opener. I do, I would say, if you watch this talk. [00:45:20] Bryan: because I knew that there's, like, the audience was gonna be filled with, with people who, had been a part of the fork in 2014, I think was the, the, the, the fork, the IOJS fork. And I knew that there, there were, there were some, you know, some people that were, um, had been there for the fork and. [00:45:41] Bryan: I said a little bit of a trap for the audience. But the, and the trap, I said, you know what, I, I kind of talked about the values that we had and the aspirations we had for Node, the aspirations that Node had for itself and how they were different. [00:45:53] Bryan: And, you know, and I'm like, look in, in, in hindsight, like a fracture was inevitable. And in 2014 there was finally a fracture. And do people know what happened in 2014? And if you, if you, you could listen to that talk, everyone almost says in unison, like IOJS. I'm like, oh right. IOJS. Right. That's actually not what I was thinking of. [00:46:19] Bryan: And I go to the next slide and is a tweet from a guy named TJ Holloway, Chuck, who was the most prolific contributor to Node. And it was his tweet also in 2014 before the fork, before the IOJS fork explaining that he was leaving Node and that he was going to go. And you, if you turn the volume all the way up, you can hear the audience gasp. [00:46:41] Bryan: And it's just delicious because the community had never really come, had never really confronted why TJ left. Um, there. And I went through a couple folks, Felix, bunch of other folks, early Node folks. That were there in 2010, were leaving in 2014, and they were going to go primarily, and they were going to go because they were sick of the same things that we were sick of. [00:47:09] Bryan: They, they, they had hit the same things that we had hit and they were frustrated. I I really do believe this, that platforms do reflect their own values. And when you are making a software decision, you are selecting value. [00:47:26] Bryan: You should select values that align with the values that you have for that software. That is, those are, that's way more important than other things that people look at. I think people look at, for example, quote unquote community size way too frequently, community size is like. Eh, maybe it can be fine. [00:47:44] Bryan: I've been in very large communities, node. I've been in super small open source communities like AUMs and RAs, a bunch of others. there are strengths and weaknesses to both approaches just as like there's a strength to being in a big city versus a small town. Me personally, I'll take the small community more or less every time because the small community is almost always self-selecting based on values and just for the same reason that I like working at small companies or small teams. [00:48:11] Bryan: There's a lot of value to be had in a small community. It's not to say that large communities are valueless, but again, long answer to your question of kind of where did things go south with Joyent and node. They went south because the, the values that we had and the values the community had didn't line up and that was a very educational experience, as you might imagine. [00:48:33] Jeremy: Yeah. And, and given that you mentioned how, because of those values, some people moved from Node to go, and in the end for much of what oxide is building. You ended up using rust. What, what would you say are the, the values of go and and rust, and how did you end up choosing Rust given that. Go's decisions regarding generics, versioning, compilation speed priority [00:48:56] Bryan: Yeah, I mean, well, so the value for, yeah. And so go, I mean, I understand why people move from Node to Go, go to me was kind of a lateral move. Um, there were a bunch of things that I, uh, go was still garbage collected, um, which I didn't like. Um, go also is very strange in terms of there are these kind of like. [00:49:17] Bryan: These autocratic kind of decisions that are very bizarre. Um, there, I mean, generics is kind of a famous one, right? Where go kind of as a point of principle didn't have generics, even though go itself actually the innards of go did have generics. It's just that you a go user weren't allowed to have them. [00:49:35] Bryan: And you know, it's kind of, there was, there was an old cartoon years and years ago about like when a, when a technologist is telling you that something is technically impossible, that actually means I don't feel like it. Uh, and there was a certain degree of like, generics are technically impossible and go, it's like, Hey, actually there are. [00:49:51] Bryan: And so there was, and I just think that the arguments against generics were kind of disingenuous. Um, and indeed, like they ended up adopting generics and then there's like some super weird stuff around like, they're very anti-assertion, which is like, what, how are you? Why are you, how is someone against assertions, it doesn't even make any sense, but it's like, oh, nope. [00:50:10] Bryan: Okay. There's a whole scree on it. Nope, we're against assertions and the, you know, against versioning. There was another thing like, you know, the Rob Pike has kind of famously been like, you should always just run on the way to commit. And you're like, does that, is that, does that make sense? I mean this, we actually built it. [00:50:26] Bryan: And so there are a bunch of things like that. You're just like, okay, this is just exhausting and. I mean, there's some things about Go that are great and, uh, plenty of other things that I just, I'm not a fan of. Um, I think that the, in the end, like Go cares a lot about like compile time. It's super important for Go Right? [00:50:44] Bryan: Is very quick, compile time. I'm like, okay. But that's like compile time is not like, it's not unimportant, it's doesn't have zero importance. But I've got other things that are like lots more important than that. Um, what I really care about is I want a high performing artifact. I wanted garbage collection outta my life. Don't think garbage collection has good trade offs [00:51:00] Bryan: I, I gotta tell you, I, I like garbage collection to me is an embodiment of this like, larger problem of where do you put cognitive load in the software development process. And what garbage collection is saying to me it is right for plenty of other people and the software that they wanna develop. [00:51:21] Bryan: But for me and the software that I wanna develop, infrastructure software, I don't want garbage collection because I can solve the memory allocation problem. I know when I'm like, done with something or not. I mean, it's like I, whether that's in, in C with, I mean it's actually like, it's really not that hard to not leak memory in, in a C base system. [00:51:44] Bryan: And you can. give yourself a lot of tooling that allows you to diagnose where memory leaks are coming from. So it's like that is a solvable problem. There are other challenges with that, but like, when you are developing a really sophisticated system that has garbage collection is using garbage collection. [00:51:59] Bryan: You spend as much time trying to dork with the garbage collector to convince it to collect the thing that you know is garbage. You are like, I've got this thing. I know it's garbage. Now I need to use these like tips and tricks to get the garbage collector. I mean, it's like, it feels like every Java performance issue goes to like minus xx call and use the other garbage collector, whatever one you're using, use a different one and using a different, a different approach. [00:52:23] Bryan: It's like, so you're, you're in this, to me, it's like you're in the worst of all worlds where. the reason that garbage collection is helpful is because the programmer doesn't have to think at all about this problem. But now you're actually dealing with these long pauses in production. [00:52:38] Bryan: You're dealing with all these other issues where actually you need to think a lot about it. And it's kind of, it, it it's witchcraft. It, it, it's this black box that you can't see into. So it's like, what problem have we solved exactly? And I mean, so the fact that go had garbage collection, it's like, eh, no, I, I do not want, like, and then you get all the other like weird fatwahs and you know, everything else. [00:52:57] Bryan: I'm like, no, thank you. Go is a no thank you for me, I, I get it why people like it or use it, but it's, it's just, that was not gonna be it. Choosing Rust [00:53:04] Bryan: I'm like, I want C. but I, there are things I didn't like about C too. I was looking for something that was gonna give me the deterministic kind of artifact that I got outta C. But I wanted library support and C is tough because there's, it's all convention. you know, there's just a bunch of other things that are just thorny. And I remember thinking vividly in 2018, I'm like, well, it's rust or bust. Ownership model, algebraic types, error handling [00:53:28] Bryan: I'm gonna go into rust. And, uh, I hope I like it because if it's not this, it's gonna like, I'm gonna go back to C I'm like literally trying to figure out what the language is for the back half of my career. Um, and when I, you know, did what a lot of people were doing at that time and people have been doing since of, you know, really getting into rust and really learning it, appreciating the difference in the, the model for sure, the ownership model people talk about. [00:53:54] Bryan: That's also obviously very important. It was the error handling that blew me away. And the idea of like algebraic types, I never really had algebraic types. Um, and the ability to, to have. And for error handling is one of these really, uh, you, you really appreciate these things where it's like, how do you deal with a, with a function that can either succeed and return something or it can fail, and the way c deals with that is bad with these kind of sentinels for errors. [00:54:27] Bryan: And, you know, does negative one mean success? Does negative one mean failure? Does zero mean failure? Some C functions, zero means failure. Traditionally in Unix, zero means success. And like, what if you wanna return a file descriptor, you know, it's like, oh. And then it's like, okay, then it'll be like zero through positive N will be a valid result. [00:54:44] Bryan: Negative numbers will be, and like, was it negative one and I said airo, or is it a negative number that did not, I mean, it's like, and that's all convention, right? People do all, all those different things and it's all convention and it's easy to get wrong, easy to have bugs, can't be statically checked and so on. Um, and then what Go says is like, well, you're gonna have like two return values and then you're gonna have to like, just like constantly check all of these all the time. Um, which is also kind of gross. Um, JavaScript is like, Hey, let's toss an exception. If, if we don't like something, if we see an error, we'll, we'll throw an exception. [00:55:15] Bryan: There are a bunch of reasons I don't like that. Um, and you look, you'll get what Rust does, where it's like, no, no, no. We're gonna have these algebra types, which is to say this thing can be a this thing or that thing, but it, but it has to be one of these. And by the way, you don't get to process this thing until you conditionally match on one of these things. [00:55:35] Bryan: You're gonna have to have a, a pattern match on this thing to determine if it's a this or a that, and if it in, in the result type that you, the result is a generic where it's like, it's gonna be either the thing that you wanna return. It's gonna be an okay that contains the thing you wanna return, or it's gonna be an error that contains your error and it forces your code to deal with that. [00:55:57] Bryan: And what that does is it shifts the cognitive load from the person that is operating this thing in production to the, the actual developer that is in development. And I think that that, that to me is like, I, I love that shift. Um, and that shift to me is really important. Um, and that's what I was missing, that that's what Rust gives you. [00:56:23] Bryan: Rust forces you to think about your code as you write it, but as a result, you have an artifact that is much more supportable, much more sustainable, and much faster. Prefer to frontload cognitive load during development instead of at runtime [00:56:34] Jeremy: Yeah, it sounds like you would rather take the time during the development to think about these issues because whether it's garbage collection or it's error handling at runtime when you're trying to solve a problem, then it's much more difficult than having dealt with it to start with. [00:56:57] Bryan: Yeah, absolutely. I, and I just think that like, why also, like if it's software, if it's, again, if it's infrastructure software, I mean the kinda the question that you, you should have when you're writing software is how long is this software gonna live? How many people are gonna use this software? Uh, and if you are writing an operating system, the answer for this thing that you're gonna write, it's gonna live for a long time. [00:57:18] Bryan: Like, if we just look at plenty of aspects of the system that have been around for a, for decades, it's gonna live for a long time and many, many, many people are gonna use it. Why would we not expect people writing that software to have more cognitive load when they're writing it to give us something that's gonna be a better artifact? [00:57:38] Bryan: Now conversely, you're like, Hey, I kind of don't care about this. And like, I don't know, I'm just like, I wanna see if this whole thing works. I've got, I like, I'm just stringing this together. I don't like, no, the software like will be lucky if it survives until tonight, but then like, who cares? Yeah. Yeah. [00:57:52] Bryan: Gar garbage clock. You know, if you're prototyping something, whatever. And this is why you really do get like, you know, different choices, different technology choices, depending on the way that you wanna solve the problem at hand. And for the software that I wanna write, I do like that cognitive load that is upfront. With LLMs maybe you can get the benefit of the robust artifact with less cognitive load [00:58:10] Bryan: Um, and although I think, I think the thing that is really wild that is the twist that I don't think anyone really saw coming is that in a, in an LLM age. That like the cognitive load upfront almost needs an asterisk on it because so much of that can be assisted by an LLM. And now, I mean, I would like to believe, and maybe this is me being optimistic, that the the, in the LLM age, we will see, I mean, rust is a great fit for the LLMH because the LLM itself can get a lot of feedback about whether the software that's written is correct or not. [00:58:44] Bryan: Much more so than you can for other environments. [00:58:48] Jeremy: Yeah, that is a interesting point in that I think when people first started trying out the LLMs to code, it was really good at these maybe looser languages like Python or JavaScript, and initially wasn't so good at something like Rust. But it sounds like as that improves, if. It can write it then because of the rigor or the memory management or the error handling that the language is forcing you to do, it might actually end up being a better choice for people using LLMs. [00:59:27] Bryan: absolutely. I, it, it gives you more certainty in the artifact that you've delivered. I mean, you know a lot about a Rust program that compiles correctly. I mean, th there are certain classes of errors that you don't have, um, that you actually don't know on a C program or a GO program or a, a JavaScript program. [00:59:46] Bryan: I think that's gonna be really important. I think we are on the cusp. Maybe we've already seen it, this kind of great bifurcation in the software that we writ

4:13 Podcast
#391: Jennifer's Sons Interview Her [Part 1]

4:13 Podcast

Play Episode Listen Later Feb 26, 2026 28:30


For the last five years on the 4:13—and for the last eighteen years at Fresh Grounded Faith conferences—you've heard me spill the beans and interview incredible guests! But today, we're doing something we have never done before! My two sons asked if they could turn the tables and interview me—to talk about the story behind the ministry and the heart behind the microphone. They wanted to unpack my life, my calling, and the journey that led us here. So, in this two-part miniseries, we're officially flipping the mic.  As my boys ask the questions, you'll hear a candid, curious, revealing conversation about ministry, blindness, writing, speaking, and legacy.  In Part One, we look back at how this ministry got started. Plus, I take you behind the scenes of writing and speaking—sharing some of my funniest moments along the way and what I've learned about reading the audience … especially without being able to see them. SHOW NOTES: 413Podcast.com/391 Read the episode TRANSCRIPT in the show notes. Get my weekly email, Java with Jennifer, to be notified when a new podcast episode releases. Subscribe HERE.

Inside Java
"HTTP/3 in Java" [ATA]

Inside Java

Play Episode Listen Later Feb 26, 2026 42:43


HTTP/3 is the next version of the internet's most important application layer protocol. But, somewhat surprisingly, it uses UDP (via the new QUIC protocol) instead of TCP/IP, which has implications for the number of initial round trips, HTTP version selection, and time to first byte, but also adoption and evolution. Java 26 supports HTTP/3 out of the box. Nicolai Parlog talks to Daniel Fuchs and Daniel Jelinski, both Consulting Members of Technical Staff at Oracle and OpenJDK committers, about Java's HTTP client. They start by briefly retracing its introduction in Java 11 and its support for HTTP/2 before diving deeper into HTTP/3 to learn about the motivation, technical underpinnings like the QUIC protocol, and challenges for its adoption before discussing its integration into Java 26 Note: Sorry for the minor audio issues, thank you for your understanding.

oracle java tcp ip udp quic technical staff openjdk daniel fuchs
Spring Office Hours
S5E07 - Copilot CLI and Java SDK with Bruno Borges

Spring Office Hours

Play Episode Listen Later Feb 24, 2026 71:49


Join Dan Vega and DaShaun Carter for an insightful session with Bruno Borges, Principal Product Manager at Microsoft, as we dive into the next generation of AI-assisted development. In this episode, we explore the GitHub Copilot CLI and the new Copilot Java SDK, uncovering how these tools are transforming the terminal into a powerful environment for Spring developers. Learn how to go beyond simple autocomplete, using agentic workflows to automate complex tasks like upgrading Spring Boot versions, refactoring legacy code, and streamlining Azure deployments. We'll also discuss how the Copilot Java SDK allows developers to embed AI capabilities directly into their own JVM-based tooling and CI/CD pipelines. You can participate in our live stream to ask questions or catch the replay on your preferred podcast platform.Show Notes: Bruno on X/TwitterBruno on LinkedInGitHub CopilotCopilot SDK

Top Albania Radio
Nga profesionet e yjeve të BBV që nuk i dinim te intervista ekskluzive e Salsano Rrapit!

Top Albania Radio

Play Episode Listen Later Feb 24, 2026 68:10


Të informohesh dhe të argëtohesh… duket si mision i pamundur! Por jo për Julian Hurdha dhe Anxhelo Shkreli! Dyshja sjellin për publikun “Top Fare”, një emision humoristik ku nuk do të mungojnë të qeshurat, por as aktualiteti. Java nis me programin më provokues dhe që nuk kursen askënd. Më pak sarkazëm, ironi e pak ‘spec djegës', pasditet tuaja në Top Albania Radio nuk do jenë kurrë të mërzitshme!

java intervista top albania radio
GOTO - Today, Tomorrow and the Future
Effect Oriented Programming • Bill Frasure, Bruce Eckel, James Ward & Andrew Harmel-Law

GOTO - Today, Tomorrow and the Future

Play Episode Listen Later Feb 24, 2026 38:11


This interview was recorded for the GOTO Book Club.http://gotopia.tech/bookclubCheck out more here:https://gotopia.tech/episodes/420Bill Frasure - Co-Author of  "Effect Oriented Programming"Bruce Eckel - Author of many books such as "Thinking in Java", "Thinking in C++" & Atomic Kotlin & Co-Author of  "Effect Oriented Programming"James Ward - Principal Developer Advocate at AWS & Co-Author of  "Effect Oriented Programming"Andrew Harmel-Law - Technical Principal at Thoughtworks & Author of "Facilitating Software Architecture"RESOURCESBillhttps://github.com/swoogleshttps://x.com/bill_frasureBrucehttps://bsky.app/profile/bruceeckel.bsky.socialhttps://x.com/BruceEckelhttps://github.com/BruceEckelhttps://www.linkedin.com/in/bruceeckelJameshttps://bsky.app/profile/jamesward.comhttps://twitter.com/_JamesWardhttps://github.com/jameswardhttps://www.linkedin.com/in/jameswardAndrewhttps://bsky.app/profile/andrewhl.bsky.socialhttps://twit.social/@ahlhttps://x.com/al94781https://github.com/andrewharmellawhttps://www.linkedin.com/in/andrewharmellawhttps://andrewharmellaw.github.ioLinkshttps://effectorientedprogramming.comhttps://happypathprogramming.comhttps://zio.devhttps://www.unison-lang.orghttps://www.roc-lang.orgDESCRIPTIONAndrew Harmel-Law explores the core concepts of effect oriented programming with authors Bill Frasure, Bruce Eckel, and James Ward. The discussion reveals that effects are composable operations that encapsulate side effects and defer execution, giving developers the right handles to manage unpredictability through compiler-checked types.The authors explain how ZIO tracks three critical types: outputs, failures, and environmental requirements, enabling better testing with mock clocks and random number generators.They share their intentional avoidance of intimidating functional programming terminology like "monads" proving you don't need mathematical foundations to understand effects. The conversation covers effect systems' expansion beyond Scala into TypeScript, Kotlin, and new languages like Unison and Roc, and how their collaborative writing process with strict constraints like 47-character line limits - created a coherent 100-page book readable in portrait mode on your phone.RECOMMENDED BOOKSBill Frasure, Bruce Eckel, James Ward • Effect Oriented Programming • https://amzn.to/4sO6wLVBruce Eckel & Svetlana Isakova • Atomic Kotlin • https://amzn.to/4qT1gEQBruce Eckel • Thinking in C++ • https://amzn.to/4qnrIGWAndrew Harmel-Law • Facilitating Software Architecture • https://amzn.eu/d/5kZKVfUSam Keen • Clean Architecture with Python • https://amzn.to/4pBT5g0Eric Evans • Domain-Driven Design • https://amzn.to/3tnGhwmBlueskyTwitterInstagramLinkedInFacebookCHANNEL MEMBERSHIP BONUSJoin this channel to get early access to videos & other perks:https://www.youtube.com/channel/UCs_tLP3AiwYKwdUHpltJPuA/joinLooking for a unique learning experience?Attend the next GOTO conference near you! Get your ticket: gotopia.techSUBSCRIBE TO OUR YOUTUBE CHANNEL - new videos posted daily!

Inside Java
"Carrier Classes" [IJN]

Inside Java

Play Episode Listen Later Feb 23, 2026 10:14


This episode presents Project Amber lead Brian Goetz's recent email "Data Oriented Programming, Beyond Records", wherein he describes plans to improve Java's data handling capabilities by introducing carrier classes, a generalization of records. Like them, carrier classes describe their state through a component list that defines the type's external API: accessors, a constructor, and matching deconstructor - this allows carrier classes to participate in pattern matching and reconstruction. Unlike records, the implementation of this API remains the developer's task although component fields offer a shortcut for the common case where the API does map to a field. Carrier classes don't have to be final (and can hence participate in inheritance) and neither do their fields (so they can be mutable data carriers). The email also mentions carrier interfaces, allowing records to be abstract as well as a relaxation of deconstruction patterns that make them more amenable to evolution of the matched type. This episode also briefly touches on Gavin Bierman's mail to the Project Amber mailing list that announces pattern assignments and constant patterns.

Selected by | Top Albania Radio
Selected By Dj Danko 22/02/2026 – Part 2

Selected by | Top Albania Radio

Play Episode Listen Later Feb 23, 2026 24:16


Përzgjedhur nga Dee Jay-it e Top Albania Radios, mbrëmja e të dielës është e gjitha për t'u shijiuar. Java mbyllet me muzikë të mirë dhe përzgjidhet nga DJ resident të Top Albania Radio.

dj java deejay danko top albania radio
Top Albania Radio
Selected By Dj Danko 22/02/2026 – Part 1

Top Albania Radio

Play Episode Listen Later Feb 23, 2026 24:57


Përzgjedhur nga Dee Jay-it e Top Albania Radios, mbrëmja e të dielës është e gjitha për t'u shijiuar. Java mbyllet me muzikë të mirë dhe përzgjidhet nga DJ resident të Top Albania Radio.

dj java deejay danko top albania radio
Selected by | Top Albania Radio
Selected By Dj Danko 22/02/2026 – Part 1

Selected by | Top Albania Radio

Play Episode Listen Later Feb 23, 2026 24:57


Përzgjedhur nga Dee Jay-it e Top Albania Radios, mbrëmja e të dielës është e gjitha për t'u shijiuar. Java mbyllet me muzikë të mirë dhe përzgjidhet nga DJ resident të Top Albania Radio.

dj java deejay danko top albania radio
Top Albania Radio
Selected By Dj Danko 22/02/2026 – Part 2

Top Albania Radio

Play Episode Listen Later Feb 23, 2026 24:16


Përzgjedhur nga Dee Jay-it e Top Albania Radios, mbrëmja e të dielës është e gjitha për t'u shijiuar. Java mbyllet me muzikë të mirë dhe përzgjidhet nga DJ resident të Top Albania Radio.

dj java deejay danko top albania radio
airhacks.fm podcast with adam bien
Agent-to-Agent Protocol (A2A) and the Java SDK

airhacks.fm podcast with adam bien

Play Episode Listen Later Feb 22, 2026 60:02


An airhacks.fm conversation with Kabir Khan (@kabirkhan) about: Discussion about the A2A (Agent-to-Agent) protocol initiated by Google and donated to the Linux Foundation, the A2A Java SDK reference implementation using quarkus, the Java SDK development accepted by Google, comparison of python and Java expressiveness and coding practices, the concept of an agent as a stateful process versus a tool as a stateless function call, the agent card as a JSON document advertising capabilities including supported protocols and descriptions and input/output modes and examples, the three wire protocols supported: JSON RPC and HTTP+JSON (REST) and grpc, the proto file becoming the single source of truth for the upcoming 1.0 spec, the facade/adapter pattern for the unified client across protocols, the agent executor interface with request context and event queue parameters, the distinction between simple message interactions and long-running multi-turn tasks, tasks as Java Records containing conversation history with messages and artifacts, message parts including text parts and data parts and file parts, task lifecycle with task IDs and context IDs for stateful conversations, the event queue as internal plumbing for propagating task updates, the separation between spec package (wire protocol entities) and server package (implementation details), the task store as a CRUD interface with in-memory default and database-backed implementations in extras, replicated queue manager using microprofile reactive messaging with Kafka for kubernetes environments, building A2A agents without any LLM involvement for simple use cases like backup systems, the role of LLMs in creating prompts from task messages and context, the agentic loop and the challenge of deciding when an agent's work is complete, the relationship between MCP (Model Context Protocol) for tool access and A2A for agent-to-agent communication, the possibility of wrapping agent calls as MCP tools, memory management considerations with short-term and long-term memory and prompt size affecting LLM quality, the distinction between the bare reference implementation and Quarkus-specific enhancements like annotations and dependency injection, upcoming 1.0 release with standardized Java records for all API classes and improved JavaDoc, protocol extensions including the agent payment protocol and GUI snippet extensions using template engines, authentication support with OAuth2 tokens and API keys and bearer tokens, the authenticated agent card containing more information than the public agent card, authorization hooks being discussed for task-level access control, the API and SPI segregation suggestion for better clarity between spec and implementation Kabir Khan on twitter: @kabirkhan

Vroege Vogels
Dubois, lelieteelt en blauwe reigers

Vroege Vogels

Play Episode Listen Later Feb 22, 2026 134:52


Rechtszaak heeft een betere bescherming van Natura 2000-gebieden op de Noordzee tegen schadelijke activiteiten afgedwongen. We starten met het volgen van een blauwe reigerkolonie in het Amsterdamse bos. Deze wereldberoemde fossielen, ontdekt door de Nederlander Eugène Dubois, zijn recent teruggegeven aan Indonesië. Binnenkort volgen ook zo'n dertigduizend andere fossielen die de Nederlander verzamelde op Java en Sumatra.  En verder: lelieteelt in Midden-Drenthe, snijden in dode vogels, kakapo van Nieuw-Zeeland,  kleine beestjes en kleurvariatie bij buizerds. De column is van Patrick Jansen. Presentatie: Menno Bentveld

javaswag
#87 - Дмитрий Соломенников — О разработке компиляторов, Java и языках выходного дня

javaswag

Play Episode Listen Later Feb 20, 2026 117:12


В 87 выпуске подкаста Javaswag обсуждаем внутреннюю кухню создания языков, почему Java упрощает исходники и зачем крупным компаниям вроде Huawei свои языки программирования. 00:00 — Интро 01:58 — ZX Spectrum 48/128 и Basic 04:12 — Путь от анализа к компиляторам 06:56 — Красота и сложность разработки компиляторов 09:37 — Противостояние: Язык против Компилятора 13:00 — Зачем компаниям собственные языки? 22:17 — Инструменты и процесс раскрутки компиляторов 26:05 — Специфика OCaml и Lisp 31:22 — Huawei: Создание языка ArkTS 41:50 — Контроль кода и лекция Томпсона 45:55 — Психология фич: важность отказа 55:30 — Различия парсера и компилятора 01:00:09 — Обзор Javac 01:04:27 — Плюсы лямбд против минусов Java 01:09:24 — Язык Ficus: массивы и производительность 01:13:29 — Java 25 01:27:05 — Проект Axiom JDK 01:34:51 — Возможно ли ускорить Javac? 01:45:16 — Сообщество создателей языков программирования 01:48:32 — Применение ИИ в компиляторах 01:53:13 — Непопулярное мнение Гость: https://www.linkedin.com/in/dmitrysolomennikov/ Ссылки: Язык для разработки UI и обучающих систем Flow9 https://github.com/area9innovation/flow9/ Участие в разработке ArkTS (Раздел Contributors, стр. 333) Язык Тривиль https://compiler-potion-faculty.sourcecraft.site/trivil/ Язык Фикус https://compiler-potion-faculty.sourcecraft.site/ficus/ Проект “Языки выходного дня” преобразовался в “Факультет компилятороварения” https://compiler-potion-faculty.sourcecraft.site/ Упрощенные исходники (JEP-512) https://openjdk.org/jeps/512 https://habr.com/ru/companies/axiomjdk/articles/952826/ Запуск Java как скрипта https://openjdk.org/jeps/330 Причины делать новые языки https://habr.com/ru/articles/790422/ Проблемы импортозамещения (статья 2022 года) Импортозамещай это Видео выступления Упрощенные исходники (JEP-512) https://vkvideo.ru/playlist/-195063478_1/video-195063478_456239155?linked=1 Королевства Delphi давно нет, а статья сохранилась https://citforum.ru/programming/delphi/tpl_yacc/ Ссылки на подкаст: Сайт - https://javaswag.github.io/ Телеграм - https://t.me/javaswag Youtube - https://www.youtube.com/@javaswag Linkedin - https://www.linkedin.com/in/volyihin/ X - https://x.com/javaswagpodcast

4:13 Podcast
#390: Can I Learn From C.S. Lewis and J.R.R. Tolkien's Friendship? With Joseph Loconte

4:13 Podcast

Play Episode Listen Later Feb 19, 2026 44:13


On today's episode, historian Joseph Loconte takes us inside the lives and friendship of J.R.R. Tolkien and C.S. Lewis, two of the most influential Christian writers of the last century.  Amid the devastation of World War II, their imaginative writing provided a vision of reality—one grounded in truth, valor, and virtue. It's through their stories that Tolkien and Lewis offered far more than escape, but a blueprint for resilience in times of crisis. Joseph shares how looking at the world through the eyes of these two men can reveal the beauty and divine goodness that serve as an antidote to the lies, division, and hatred of our day. Now… I may be a C.S. Lewis junkie, so I'll confess I nerded out a little in this conversation! But whether you've read every word they wrote or barely know their names, you'll enjoy this life-giving and thoughtful conversation about friendship, faith, and the power of story. SHOW NOTES: 413Podcast.com/390  Enter to win the GIVEAWAY and read the episode TRANSCRIPT in the show notes. Get my weekly email, Java with Jennifer, to be notified when a new podcast episode releases. Subscribe HERE.

Coffee Sprudgecast
The One With Scenery Coffee And Balam Coffee's Vandola

Coffee Sprudgecast

Play Episode Listen Later Feb 19, 2026 27:12


In the 175 episodes of the Coffee Sprudgecast, only a few are truly dedicated and earnestly focused on that most imporant of concepts: Proof of Taste. And on the latest episode, we take proof of taste to 100. Only the flavors matter. Only the best brew will do. Are you on the list? Are you ready to prove your taste once and for all?? On this week's episode of the Coffee Sprudgecast, hosts Jordan Michelman and Zachary Carlsen start by brewing coffee using a gorgeous ceramic Vandola that was thrown, glazed, and fired in Costa Rica. Then we dive into the world of Scenery Coffee, the London-based coffee company that just took home top honors in the Notable Roaster category at the 17th Annual Sprudgie Awards. Experimental processing, traditional brewing methods, coffee and coffee gear from near and far: truly this episode has it all…and then some! A little more on this incredible vessel you see above, courtesy of Coffee Balam, who sent us their beautiful Vandola Coffee Brewer designed by Minor Alfaro Alpízar along with their Alfaro Master Roast coffee blend of Catuai and Caturra grown and processed on Costa Rica's Nicoya Peninsula. Together they made a gorgeous, smooth, and beautiful brew. Coffee Balam donates five percent of proceeds to support cultural preservation projects in the Chorotega community. Trying this brewer + roaster combo was a total surprise to us, and we were thrilled to have such a cool concept come in through the general contact form at Sprudge. If you out there in Sprudge land reading this have something incredible you'd like to send our way for future consideration on the pod, get in touch! Meanwhile, Scenery Coffee took home top honors at our global voted Sprudgie Awards, and were kind enough to send along some coffees to sample at Sprudge HQ, with which everyone on team Sprudge was quite impressed. We brewed two of their lovely coffees on this week's episode—India Ratnagiri Estate LAB-6 and Costa Rica Corazón de Jesús "Los Toños" Java—and spent time learning more about both (Scenery's website is excellent). We brewed those coffees this week with the Miir Coffee Hand Grinder, Miir Pourigami brewer, an Acaia Pearl coffee scale, and enjoyed from Slow Pour Supply 2-Way Cups. Check out these coffee tools and other coffee gear at our popular gear hub Coffee Gear! At the end of the day, taste was well and truly proven. Because that's what it's all about. We really can't say it enough. It's all about…proof of taste. 

coffee taste costa rica experimental java scenery balam nicoya peninsula sprudge jordan michelman zachary carlsen sprudgie awards
Inside Java
"Java's Plans for 2026" [IJN]

Inside Java

Play Episode Listen Later Feb 19, 2026 9:05


In 2026, Java keeps evolving: Project Valhalla is gunning for merging its value types preview in the second half of this year; Babylon wants to incubate code reflection; Loom will probably finalize the structured concurrency API; Leyden plans to ship AOT code compilation; and Amber hopes to present JEPs on constant patterns and pattern assignments. And those are just the most progressed features - more are in the pipeline and discussed in this episode of the Inside Java Newscast.

A Bootiful Podcast
Glenn Renfro: Java and Spring community legend and my friend - on Devnexus and more

A Bootiful Podcast

Play Episode Listen Later Feb 19, 2026 64:20


Hi, Spring fans! In this installment I talk to the amazing Glenn Renfro about Spring Batch, Spring Integration, Spring AI, and much more — plus why you should definitely register to attend the amazing Devnexus event in Atlanta, GA!

SpaceTime with Stuart Gary | Astronomy, Space & Science News
Exploring Life's Potential on the Red Planet and Saturn's Tiny Moon

SpaceTime with Stuart Gary | Astronomy, Space & Science News

Play Episode Listen Later Feb 18, 2026 24:54 Transcription Available


SpaceTime with Stuart Gary Gary - Series 29 Episode 21In this episode of SpaceTime, we explore intriguing revelations about the search for life on Mars, the surprising effects of Saturn's moon Enceladus on its planet, and the monumental volcanic events that reshaped Earth's tectonic landscape.Life on Mars: A New PerspectiveRecent findings suggest that non-biological processes cannot fully explain the organic compounds found in Martian regolith samples collected by NASA's Curiosity rover. Published in the journal Astrobiology, the study indicates that life may have contributed to some of these compounds, challenging previous assumptions. The research involved evaluating potential non-biological sources and concluded that the abundance of organics on Mars could hint at past life, sparking renewed interest in the Red Planet's potential habitability.Enceladus' Electromagnetic InfluenceA fascinating study reveals that Saturn's icy moon Enceladus trails a wake of electromagnetic ripples extending over half a million kilometers, significantly influencing its giant host planet. Data from NASA's Cassini mission demonstrated how Enceladus' geysers contribute to energy and momentum circulation within Saturn's magnetic environment, marking a crucial discovery about the moon's role in the Saturnian system.Earth's Volcanic HistoryNew research highlights how Earth's largest volcanic event, associated with the Ontong Java Plateau, dramatically altered a major tectonic plate. The findings suggest that extensive volcanic activity led to significant physiochemical modifications within the oceanic plate, enhancing our understanding of plate formation processes and the environmental impacts of such massive eruptions.www.spacetimewithstuartgary.com✍️ Episode ReferencesAstrobiology, Geophysical Research Space Physics, Geophysical Research LettersBecome a supporter of this podcast: https://www.spreaker.com/podcast/spacetime-with-stuart-gary--2458531/support.

Top Albania Radio
Nga “Pilula e kuqe dhe blu” tek intervista me Frank Ibrahimi – Top Fare 16/02/2026

Top Albania Radio

Play Episode Listen Later Feb 17, 2026 63:39


Të informohesh dhe të argëtohesh… duket si mision i pamundur! Por jo për Julian Hurdha dhe Anxhelo Shkreli! Dyshja sjellin për publikun “Top Fare”, një emision humoristik ku nuk do të mungojnë të qeshurat, por as aktualiteti. Java nis me programin më provokues dhe që nuk kursen askënd. Më pak sarkazëm, ironi e pak ‘spec djegës', pasditet tuaja në Top Albania Radio nuk do jenë kurrë të mërzitshme!

fare java intervista top albania radio
Selected by | Top Albania Radio
Selected By Dj Wizii 14/02/2026

Selected by | Top Albania Radio

Play Episode Listen Later Feb 16, 2026 54:43


Përzgjedhur nga Dee Jay-it e Top Albania Radios, mbrëmja e të dielës është e gjitha për t'u shijiuar. Java mbyllet me muzikë të mirë dhe përzgjidhet nga DJ resident të Top Albania Radio.

dj java deejay top albania radio
Top Albania Radio
Selected By Dj Wizii 14/02/2026

Top Albania Radio

Play Episode Listen Later Feb 16, 2026 54:43


Përzgjedhur nga Dee Jay-it e Top Albania Radios, mbrëmja e të dielës është e gjitha për t'u shijiuar. Java mbyllet me muzikë të mirë dhe përzgjidhet nga DJ resident të Top Albania Radio.

dj java deejay top albania radio
Les Cast Codeurs Podcast
LCC 337 - Datacenters Carrier Class dans l'espace

Les Cast Codeurs Podcast

Play Episode Listen Later Feb 16, 2026 94:19


Emmanuel et Guillaume discutent de divers sujets liés à la programmation, notamment les systèmes de fichiers en Java, le Data Oriented Programming, les défis de JPA avec Kotlin, et les nouvelles fonctionnalités de Quarkus. Ils explorent également des sujets un peu fous comme la création de datacenters dans l'espace. Pas mal d'architecture aussi. Enregistré le 13 février 2026 Téléchargement de l'épisode LesCastCodeurs-Episode-337.mp3 ou en vidéo sur YouTube. News Langages Comment implémenter un file system en Java https://foojay.io/today/bootstrapping-a-java-file-system/ Créer un système de fichiers Java personnalisé avec NIO.2 pour des usages variés (VCS, archives, systèmes distants). Évolution Java: java.io.File (1.0) -> NIO (1.4) -> NIO.2 (1.7) pour personnalisation via FileSystem. Recommander conception préalable; API Java est orientée POSIX. Composants clés à considérer: Conception URI (scheme unique, chemin). Gestion de l'arborescence (BD, métadonnées, efficacité). Stockage binaire (emplacement, chiffrement, versions). Minimum pour démarrer (4 composants): Implémenter Path (représente fichier/répertoire). Étendre FileSystem (instance du système). Étendre FileSystemProvider (moteur, enregistré par scheme). Enregistrer FileSystemProvider via META-INF/services. Étapes suivantes: Couche BD (arborescence), opérations répertoire/fichier de base, stockage, tests. Processus long et exigeant, mais gratifiant.   Un article de brian goetz sur le futur du data oriented programming en Java https://openjdk.org/projects/amber/design-notes/beyond-records Le projet Amber de Java introduit les "carrier classes", une évolution des records qui permet plus de flexibilité tout en gardant les avantages du pattern matching et de la reconstruction Les records imposent des contraintes strictes (immutabilité, représentation exacte de l'état) qui limitent leur usage pour des classes avec état muable ou dérivé Les carrier classes permettent de déclarer une state description complète et canonique sans imposer que la représentation interne corresponde exactement à l'API publique Le modificateur "component" sur les champs permet au compilateur de dériver automatiquement les accesseurs pour les composants alignés avec la state description Les compact constructors sont généralisés aux carrier classes, générant automatiquement l'initialisation des component fields Les carrier classes supportent la déconstruction via pattern matching comme les records, rendant possible leur usage dans les instanceof et switch Les carrier interfaces permettent de définir une state description sur une interface, obligeant les implémentations à fournir les accesseurs correspondants L'extension entre carrier classes est possible, avec dérivation automatique des appels super() quand les composants parent sont subsumés par l'enfant Les records deviennent un cas particulier de carrier classes avec des contraintes supplémentaires (final, extends Record, component fields privés et finaux obligatoires) L'évolution compatible des records est améliorée en permettant l'ajout de composants en fin de liste et la déconstruction partielle par préfixe Comment éviter les pièges courants avec JPA et Kotlin - https://blog.jetbrains.com/idea/2026/01/how-to-avoid-common-pitfalls-with-jpa-and-kotlin/ JPA est une spécification Java pour la persistance objet-relationnel, mais son utilisation avec Kotlin présente des incompatibilités dues aux différences de conception des deux langages Les classes Kotlin sont finales par défaut, ce qui empêche la création de proxies par JPA pour le lazy loading et les opérations transactionnelles Le plugin kotlin-jpa génère automatiquement des constructeurs sans argument et rend les classes open, résolvant les problèmes de compatibilité Les data classes Kotlin ne sont pas adaptées aux entités JPA car elles génèrent equals/hashCode basés sur tous les champs, causant des problèmes avec les relations lazy L'utilisation de lateinit var pour les relations peut provoquer des exceptions si on accède aux propriétés avant leur initialisation par JPA Les types non-nullables Kotlin peuvent entrer en conflit avec le comportement de JPA qui initialise les entités avec des valeurs null temporaires Le backing field direct dans les getters/setters personnalisés peut contourner la logique de JPA et casser le lazy loading IntelliJ IDEA 2024.3 introduit des inspections pour détecter automatiquement ces problèmes et propose des quick-fixes L'IDE détecte les entités finales, les data classes inappropriées, les problèmes de constructeurs et l'usage incorrect de lateinit Ces nouvelles fonctionnalités aident les développeurs à éviter les bugs subtils liés à l'utilisation de JPA avec Kotlin Librairies Guide sur MapStruct @IterableMapping - https://www.baeldung.com/java-mapstruct-iterablemapping MapStruct est une bibliothèque Java pour générer automatiquement des mappers entre beans, l'annotation @IterableMapping permet de configurer finement le mapping de collections L'attribut dateFormat permet de formater automatiquement des dates lors du mapping de listes sans écrire de boucle manuelle L'attribut qualifiedByName permet de spécifier quelle méthode custom appliquer sur chaque élément de la collection à mapper Exemple d'usage : filtrer des données sensibles comme des mots de passe en mappant uniquement certains champs via une méthode dédiée L'attribut nullValueMappingStrategy permet de contrôler le comportement quand la collection source est null (retourner null ou une collection vide) L'annotation fonctionne pour tous types de collections Java (List, Set, etc.) et génère le code de boucle nécessaire Possibilité d'appliquer des formats numériques avec numberFormat pour convertir des nombres en chaînes avec un format spécifique MapStruct génère l'implémentation complète du mapper au moment de la compilation, éliminant le code boilerplate L'annotation peut être combinée avec @Named pour créer des méthodes de mapping réutilisables et nommées Le mapping des collections supporte les conversions de types complexes au-delà des simples conversions de types primitifs Accès aux fichiers Samba depuis Java avec JCIFS - https://www.baeldung.com/java-samba-jcifs JCIFS est une bibliothèque Java permettant d'accéder aux partages Samba/SMB sans monter de lecteur réseau, supportant le protocole SMB3 on pense aux galériens qui doivent se connecter aux systèmes dit legacy La configuration nécessite un contexte CIFS (CIFSContext) et des objets SmbFile pour représenter les ressources distantes L'authentification se fait via NtlmPasswordAuthenticator avec domaine, nom d'utilisateur et mot de passe La bibliothèque permet de lister les fichiers et dossiers avec listFiles() et vérifier leurs propriétés (taille, date de modification) Création de fichiers avec createNewFile() et de dossiers avec mkdir() ou mkdirs() pour créer toute une arborescence Suppression via delete() qui peut parcourir et supprimer récursivement des arborescences entières Copie de fichiers entre partages Samba avec copyTo(), mais impossibilité de copier depuis le système de fichiers local Pour copier depuis le système local, utilisation des streams SmbFileInputStream et SmbFileOutputStream Les opérations peuvent cibler différents serveurs Samba et différents partages (anonymes ou protégés par mot de passe) La bibliothèque s'intègre dans des blocs try-with-resources pour une gestion automatique des ressources Quarkus 3.31 - Support complet Java 25, nouveau packaging Maven et Panache Next - https://quarkus.io/blog/quarkus-3-31-released/ Support complet de Java 25 avec images runtime et native Nouveau packaging Maven de type quarkus avec lifecycle optimisé pour des builds plus rapides voici un article complet pour plus de detail https://quarkus.io/blog/building-large-applications/ Introduction de Panache Next, nouvelle génération avec meilleure expérience développeur et API unifiée ORM/Reactive Mise à jour vers Hibernate ORM 7.2, Reactive 3.2, Search 8.2 Support de Hibernate Spatial pour les données géospatiales Passage à Testcontainers 2 et JUnit 6 Annotations de sécurité supportées sur les repositories Jakarta Data Chiffrement des tokens OIDC pour les implémentations custom TokenStateManager Support OAuth 2.0 Pushed Authorization Requests dans l'extension OIDC Maven 3.9 maintenant requis minimum pour les projets Quarkus A2A Java SDK 1.0.0.Alpha1 - Alignement avec la spécification 1.0 du protocole Agent2Agent - https://quarkus.io/blog/a2a-java-sdk-1-0-0-alpha1/ Le SDK Java A2A implémente le protocole Agent2Agent qui permet la communication standardisée entre agents IA pour découvrir des capacités, déléguer des tâches et collaborer Passage à la version 1.0 de la spécification marque la transition d'expérimental à production-ready avec des changements cassants assumés Modernisation complète du module spec avec des Java records partout remplaçant le mix précédent de classes et records pour plus de cohérence Adoption de Protocol Buffers comme source de vérité avec des mappers MapStruct pour la conversion et Gson pour JSON-RPC Les builders utilisent maintenant des méthodes factory statiques au lieu de constructeurs publics suivant les best practices Java modernes Introduction de trois BOMs Maven pour simplifier la gestion des dépendances du SDK core, des extensions et des implémentations de référence Quarkus AgentCard évolue avec une liste supportedInterfaces remplaçant url et preferredTransport pour plus de flexibilité dans la déclaration des protocoles Support de la pagination ajouté pour ListTasks et les endpoints de configuration des notifications push avec des wrappers Result appropriés Interface A2AHttpClient pluggable permettant des implémentations HTTP personnalisées avec une implémentation Vert.x fournie Travail continu vers la conformité complète avec le TCK 1.0 en cours de développement parallèlement à la finalisation de la spécification Pourquoi Quarkus finit par "cliquer" : les 10 questions que se posent les développeurs Java - https://www.the-main-thread.com/p/quarkus-java-developers-top-questions-2025 un article qui revele et repond aux questions des gens qui ont utilisé Quarkus depuis 4-6 mois, les non noob questions Quarkus est un framework Java moderne optimisé pour le cloud qui propose des temps de démarrage ultra-rapides et une empreinte mémoire réduite Pourquoi Quarkus démarre si vite ? Le framework effectue le travail lourd au moment du build (scanning, indexation, génération de bytecode) plutôt qu'au runtime Quand utiliser le mode réactif plutôt qu'impératif ? Le réactif est pertinent pour les workloads avec haute concurrence et dominance I/O, l'impératif reste plus simple dans les autres cas Quelle est la différence entre Dev Services et Testcontainers ? Dev Services utilise Testcontainers en gérant automatiquement le cycle de vie, les ports et la configuration sans cérémonie Comment la DI de Quarkus diffère de Spring ? CDI est un standard basé sur la sécurité des types et la découverte au build-time, différent de l'approche framework de Spring Comment gérer la configuration entre environnements ? Quarkus permet de scaler depuis le développement local jusqu'à Kubernetes avec des profils, fichiers multiples et configuration externe Comment tester correctement les applications Quarkus ? @QuarkusTest démarre l'application une fois pour toute la suite de tests, changeant le modèle mental par rapport à Spring Boot Que fait vraiment Panache en coulisses ? Panache est du JPA avec des opinions fortes et des défauts propres, enveloppant Hibernate avec un style Active Record Doit-on utiliser les images natives et quand ? Les images natives brillent pour le serverless et l'edge grâce au démarrage rapide et la faible empreinte mémoire, mais tous les apps n'en bénéficient pas Comment Quarkus s'intègre avec Kubernetes ? Le framework génère automatiquement les ressources Kubernetes, gère les health checks et métriques comme s'il était nativement conçu pour cet écosystème Comment intégrer l'IA dans une application Quarkus ? LangChain4j permet d'ajouter embeddings, retrieval, guardrails et observabilité directement en Java sans passer par Python Infrastructure Les alternatives à MinIO https://rmoff.net/2026/01/14/alternatives-to-minio-for-single-node-local-s3/ MinIO a abandonné le support single-node fin 2025 pour des raisons commerciales, cassant de nombreuses démos et pipelines CI/CD qui l'utilisaient pour émuler S3 localement L'auteur cherche un remplacement simple avec image Docker, compatibilité S3, licence open source, déploiement mono-nœud facile et communauté active S3Proxy est très léger et facile à configurer, semble être l'option la plus simple mais repose sur un seul contributeur RustFS est facile à utiliser et inclut une GUI, mais c'est un projet très récent en version alpha avec une faille de sécurité majeure récente SeaweedFS existe depuis 2012 avec support S3 depuis 2018, relativement facile à configurer et dispose d'une interface web basique Zenko CloudServer remplace facilement MinIO mais la documentation et le branding (cloudserver/zenko/scality) peuvent prêter à confusion Garage nécessite une configuration complexe avec fichier TOML et conteneur d'initialisation séparé, pas un simple remplacement drop-in Apache Ozone requiert au minimum quatre nœuds pour fonctionner, beaucoup trop lourd pour un usage local simple L'auteur recommande SeaweedFS et S3Proxy comme remplaçants viables, RustFS en maybe, et élimine Garage et Ozone pour leur complexité Garage a une histoire tres associative, il vient du collectif https://deuxfleurs.fr/ qui offre un cloud distribué sans datacenter C'est certainement pas une bonne idée, les datacenters dans l'espace https://taranis.ie/datacenters-in-space-are-a-terrible-horrible-no-good-idea/ Avis d'expert (ex-NASA/Google, Dr en électronique spatiale) : Centres de données spatiaux, une "terrible" idée. Incompatibilité fondamentale : L'électronique (surtout IA/GPU) est inadaptée à l'environnement spatial. Énergie : Accès limité. Le solaire (type ISS) est insuffisant pour l'échelle de l'IA. Le nucléaire (RTG) est trop faible. Refroidissement : L'espace n'est pas "froid" ; absence de convection. Nécessite des radiateurs gigantesques (ex: 531m² pour 200kW). Radiations : Provoque erreurs (SEU, SEL) et dommages. Les GPU sont très vulnérables. Blindage lourd et inefficace. Les puces "durcies" sont très lentes. Communications : Bande passante très limitée (1Gbps radio vs 100Gbps terrestre). Le laser est tributaire des conditions atmosphériques. Conclusion : Projet extrêmement difficile, coûteux et aux performances médiocres. Data et Intelligence Artificielle Guillaume a développé un serveur MCP pour arXiv (le site de publication de papiers de recherche) en Java avec le framework Quarkus https://glaforge.dev/posts/2026/01/18/implementing-an-arxiv-mcp-server-with-quarkus-in-java/ Implémentation d'un serveur MCP (Model Context Protocol) arXiv en Java avec Quarkus. Objectif : Accéder aux publications arXiv et illustrer les fonctionnalités moins connues du protocole MCP. Mise en œuvre : Utilisation du framework Quarkus (Java) et son support MCP étendu. Assistance par Antigravity (IDE agentique) pour le développement et l'intégration de l'API arXiv. Interaction avec l'API arXiv : requêtes HTTP, format XML Atom pour les résultats, parser XML Jackson. Fonctionnalités MCP exposées : Outils (@Tool) : Recherche de publications (search_papers). Ressources (@Resource, @ResourceTemplate) : Taxonomie des catégories arXiv, métadonnées des articles (via un template d'URI). Prompts (@Prompt) : Exemples pour résumer des articles ou construire des requêtes de recherche. Configuration : Le serveur peut fonctionner en STDIO (local) ou via HTTP Streamable (local ou distant), avec une configuration simple dans des clients comme Gemini CLI. Conclusion : Quarkus simplifie la création de serveurs MCP riches en fonctionnalités, rendant les données et services "prêts pour l'IA" avec l'aide d'outils d'IA comme Antigravity. Anthropic ne mettra pas de pub dans Claude https://www.anthropic.com/news/claude-is-a-space-to-think c'est en reaction au plan non public d'OpenAi de mettre de la pub pour pousser les gens au mode payant OpenAI a besoin de cash et est probablement le plus utilisé pour gratuit au monde Anthropic annonce que Claude restera sans publicité pour préserver son rôle d'assistant conversationnel dédié au travail et à la réflexion approfondie. Les conversations avec Claude sont souvent sensibles, personnelles ou impliquent des tâches complexes d'ingénierie logicielle où les publicités seraient inappropriées. L'analyse des conversations montre qu'une part significative aborde des sujets délicats similaires à ceux évoqués avec un conseiller de confiance. Un modèle publicitaire créerait des incitations contradictoires avec le principe fondamental d'être "genuinely helpful" inscrit dans la Constitution de Claude. Les publicités introduiraient un conflit d'intérêt potentiel où les recommandations pourraient être influencées par des motivations commerciales plutôt que par l'intérêt de l'utilisateur. Le modèle économique d'Anthropic repose sur les contrats entreprise et les abonnements payants, permettant de réinvestir dans l'amélioration de Claude. Anthropic maintient l'accès gratuit avec des modèles de pointe et propose des tarifs réduits pour les ONG et l'éducation dans plus de 60 pays. Le commerce "agentique" sera supporté mais uniquement à l'initiative de l'utilisateur, jamais des annonceurs, pour préserver la confiance. Les intégrations tierces comme Figma, Asana ou Canva continueront d'être développées en gardant l'utilisateur aux commandes. Anthropic compare Claude à un cahier ou un tableau blanc : des espaces de pensée purs, sans publicité. Infinispan 16.1 est sorti https://infinispan.org/blog/2026/02/04/infinispan-16-1 déjà le nom de la release mérite une mention Le memory bounded par cache et par ensemble de cache s est pas facile à faire en Java Une nouvelle api OpenAPI AOT caché dans les images container Un serveur MCP local juste avec un fichier Java ? C'est possible avec LangChain4j et JBang https://glaforge.dev/posts/2026/02/11/zero-boilerplate-java-stdio-mcp-servers-with-langchain4j-and-jbang/ Création rapide de serveurs MCP Java sans boilerplate. MCP (Model Context Protocol): standard pour connecter les LLM à des outils et données. Le tutoriel répond au manque d'options simples pour les développeurs Java, face à une prédominance de Python/TypeScript dans l'écosystème MCP. La solution utilise: LangChain4j: qui intègre un nouveau module serveur MCP pour le protocole STDIO. JBang: permet d'exécuter des fichiers Java comme des scripts, éliminant les fichiers de build (pom.xml, Gradle). Implémentation: se fait via un seul fichier .java. JBang gère automatiquement les dépendances (//DEPS). L'annotation @Tool de LangChain4j expose les méthodes Java aux LLM. StdioMcpServerTransport gère la communication JSON-RPC via l'entrée/sortie standard (STDIO). Point crucial: Les logs doivent impérativement être redirigés vers System.err pour éviter de corrompre System.out, qui est réservé à la communication MCP (messages JSON-RPC). Facilite l'intégration locale avec des outils comme Gemini CLI, Claude Code, etc. Reciprocal Rank Fusion : un algorithme utile et souvent utilisé pour faire de la recherche hybride, pour mélanger du RAG et des recherches par mots-clé https://glaforge.dev/posts/2026/02/10/advanced-rag-understanding-reciprocal-rank-fusion-in-hybrid-search/ RAG : Qualité LLM dépend de la récupération. Recherche Hybride : Combiner vectoriel et mots-clés (BM25) est optimal. Défi : Fusionner des scores d'échelles différentes. Solution : Reciprocal Rank Fusion (RRF). RRF : Algorithme robuste qui fusionne des listes de résultats en se basant uniquement sur le rang des documents, ignorant les scores. Avantages RRF : Pas de normalisation de scores, scalable, excellente première étape de réorganisation. Architecture RAG fréquente : RRF (large sélection) + Cross-Encoder / modèle de reranking (précision fine). RAG-Fusion : Utilise un LLM pour générer plusieurs variantes de requête, puis RRF agrège tous les résultats pour renforcer le consensus et réduire les hallucinations. Implémentation : LangChain4j utilise RRF par défaut pour agréger les résultats de plusieurs retrievers. Les dernières fonctionnalités de Gemini et Nano Banana supportées dans LangChain4j https://glaforge.dev/posts/2026/02/06/latest-gemini-and-nano-banana-enhancements-in-langchain4j/ Nouveaux modèles d'images Nano Banana (Gemini 2.5/3.0) pour génération et édition (jusqu'à 4K). "Grounding" via Google Search (pour images et texte) et Google Maps (localisation, Gemini 2.5). Outil de contexte URL (Gemini 3.0) pour lecture directe de pages web. Agents multimodaux (AiServices) capables de générer des images. Configuration de la réflexion (profondeur Chain-of-Thought) pour Gemini 3.0. Métadonnées enrichies : usage des tokens et détails des sources de "grounding". Comment configurer Gemini CLI comment agent de code dans IntelliJ grâce au protocole ACP https://glaforge.dev/posts/2026/02/01/how-to-integrate-gemini-cli-with-intellij-idea-using-acp/ But : Intégrer Gemini CLI à IntelliJ IDEA via l'Agent Client Protocol (ACP). Prérequis : IntelliJ IDEA 2025.3+, Node.js (v20+), Gemini CLI. Étapes : Installer Gemini CLI (npm install -g @google/gemini-cli). Localiser l'exécutable gemini. Configurer ~/.jetbrains/acp.json (chemin exécutable, --experimental-acp, use_idea_mcp: true). Redémarrer IDEA, sélectionner "Gemini CLI" dans l'Assistant IA. Usage : Gemini interagit avec le code et exécute des commandes (contexte projet). Important : S'assurer du flag --experimental-acp dans la configuration. Outillage PipeNet, une alternative (open source aussi) à LocalTunnel, mais un plus évoluée https://pipenet.dev/ pipenet: Alternative open-source et moderne à localtunnel (client + serveur). Usages: Développement local (partage, webhooks), intégration SDK, auto-hébergement sécurisé. Fonctionnalités: Client (expose ports locaux, sous-domaines), Serveur (déploiement, domaines personnalisés, optimisé cloud mono-port). Avantages vs localtunnel: Déploiement cloud sur un seul port, support multi-domaines, TypeScript/ESM, maintenance active. Protocoles: HTTP/S, WebSocket, SSE, HTTP Streaming. Intégration: CLI ou SDK JavaScript. JSON-IO — une librairie comme Jackson ou GSON, supportant JSON5, TOON, et qui pourrait être utile pour l'utilisation du "structured output" des LLMs quand ils ne produisent pas du JSON parfait https://github.com/jdereg/json-io json-io : Librairie Java pour la sérialisation et désérialisation JSON/TOON. Gère les graphes d'objets complexes, les références cycliques et les types polymorphes. Support complet JSON5 (lecture et écriture), y compris des fonctionnalités non prises en charge par Jackson/Gson. Format TOON : Notation orientée token, optimisée pour les LLM, réduisant l'utilisation de tokens de 40 à 50% par rapport au JSON. Légère : Aucune dépendance externe (sauf java-util), taille de JAR réduite (~330K). Compatible JDK 1.8 à 24, ainsi qu'avec les environnements JPMS et OSGi. Deux modes de conversion : vers des objets Java typés (toJava()) ou vers des Map (toMaps()). Options de configuration étendues via ReadOptionsBuilder et WriteOptionsBuilder. Optimisée pour les déploiements cloud natifs et les architectures de microservices. Utiliser mailpit et testcontainer pour tester vos envois d'emails https://foojay.io/today/testing-emails-with-testcontainers-and-mailpit/ l'article montre via SpringBoot et sans. Et voici l'extension Quarkus https://quarkus.io/extensions/io.quarkiverse.mailpit/quarkus-mailpit/?tab=docs Tester l'envoi d'emails en développement est complexe car on ne peut pas utiliser de vrais serveurs SMTP Mailpit est un serveur SMTP de test qui capture les emails et propose une interface web pour les consulter Testcontainers permet de démarrer Mailpit dans un conteneur Docker pour les tests d'intégration L'article montre comment configurer une application SpringBoot pour envoyer des emails via JavaMail Un module Testcontainers dédié à Mailpit facilite son intégration dans les tests Le conteneur Mailpit expose un port SMTP (1025) et une API HTTP (8025) pour vérifier les emails reçus Les tests peuvent interroger l'API HTTP de Mailpit pour valider le contenu des emails envoyés Cette approche évite d'utiliser des mocks et teste réellement l'envoi d'emails Mailpit peut aussi servir en développement local pour visualiser les emails sans les envoyer réellement La solution fonctionne avec n'importe quel framework Java supportant JavaMail Architecture Comment scaler un système de 0 à 10 millions d'utilisateurs https://blog.algomaster.io/p/scaling-a-system-from-0-to-10-million-users Philosophie : Scalabilité incrémentale, résoudre les goulots d'étranglement sans sur-ingénierie. 0-100 utilisateurs : Serveur unique (app, DB, jobs). 100-1K : Séparer app et DB (services gérés, pooling). 1K-10K : Équilibreur de charge, multi-serveurs d'app (stateless via sessions partagées). 10K-100K : Caching, réplicas de lecture DB, CDN (réduire charge DB). 100K-500K : Auto-scaling, applications stateless (authentification JWT). 500K-10M : Sharding DB, microservices, files de messages (traitement asynchrone). 10M+ : Déploiement multi-régions, CQRS, persistance polyglotte, infra personnalisée. Principes clés : Simplicité, mesure, stateless essentiel, cache/asynchrone, sharding prudent, compromis (CAP), coût de la complexité. Patterns d'Architecture 2026 - Du Hype à la Réalité du Terrain (Part 1/2) - https://blog.ippon.fr/2026/01/30/patterns-darchitecture-2026-part-1/ L'article présente quatre patterns d'architecture logicielle pour répondre aux enjeux de scalabilité, résilience et agilité business dans les systèmes modernes Il présentent leurs raisons et leurs pièges Un bon rappel L'Event-Driven Architecture permet une communication asynchrone entre systèmes via des événements publiés et consommés, évitant le couplage direct Les bénéfices de l'EDA incluent la scalabilité indépendante des composants, la résilience face aux pannes et l'ajout facile de nouveaux cas d'usage Le pattern API-First associé à un API Gateway centralise la sécurité, le routage et l'observabilité des APIs avec un catalogue unifié Le Backend for Frontend crée des APIs spécifiques par canal (mobile, web, partenaires) pour optimiser l'expérience utilisateur CQRS sépare les modèles de lecture et d'écriture avec des bases optimisées distinctes, tandis que l'Event Sourcing stocke tous les événements plutôt que l'état actuel Le Saga Pattern gère les transactions distribuées via orchestration centralisée ou chorégraphie événementielle pour coordonner plusieurs microservices Les pièges courants incluent l'explosion d'événements granulaires, la complexité du debugging distribué, et la mauvaise gestion de la cohérence finale Les technologies phares sont Kafka pour l'event streaming, Kong pour l'API Gateway, EventStoreDB pour l'Event Sourcing et Temporal pour les Sagas Ces patterns nécessitent une maturité technique et ne sont pas adaptés aux applications CRUD simples ou aux équipes junior Patterns d'architecture 2026 : du hype à la réalité terrain part. 2 - https://blog.ippon.fr/2026/02/04/patterns-darchitecture-2026-part-2/ Deuxième partie d'un guide pratique sur les patterns d'architecture logicielle et système éprouvés pour moderniser et structurer les applications en 2026 Strangler Fig permet de migrer progressivement un système legacy en l'enveloppant petit à petit plutôt que de tout réécrire d'un coup (70% d'échec pour les big bang) Anti-Corruption Layer protège votre nouveau domaine métier des modèles externes et legacy en créant une couche de traduction entre les systèmes Service Mesh gère automatiquement la communication inter-services dans les architectures microservices (sécurité mTLS, observabilité, résilience) Architecture Hexagonale sépare le coeur métier des détails techniques via des ports et adaptateurs pour améliorer la testabilité et l'évolutivité Chaque pattern est illustré par un cas client concret avec résultats mesurables et liste des pièges à éviter lors de l'implémentation Les technologies 2026 mentionnées incluent Istio, Linkerd pour service mesh, LaunchDarkly pour feature flags, NGINX et Kong pour API gateway Tableau comparatif final aide à choisir le bon pattern selon la complexité, le scope et le use case spécifique du projet L'article insiste sur une approche pragmatique : ne pas utiliser un pattern juste parce qu'il est moderne mais parce qu'il résout un problème réel Pour les systèmes simples type CRUD ou avec peu de services, ces patterns peuvent introduire une complexité inutile qu'il faut savoir éviter Méthodologies Le rêve récurrent de remplacer voire supprimer les développeurs https://www.caimito.net/en/blog/2025/12/07/the-recurring-dream-of-replacing-developers.html Depuis 1969, chaque décennie voit une tentative de réduire le besoin de développeurs (de COBOL, UML, visual builders… à IA). Motivation : frustration des dirigeants face aux délais et coûts de développement. La complexité logicielle est intrinsèque et intellectuelle, non pas une question d'outils. Chaque vague technologique apporte de la valeur mais ne supprime pas l'expertise humaine. L'IA assiste les développeurs, améliore l'efficacité, mais ne remplace ni le jugement ni la gestion de la complexité. La demande de logiciels excède l'offre car la contrainte majeure est la réflexion nécessaire pour gérer cette complexité. Pour les dirigeants : les outils rendent-ils nos développeurs plus efficaces sur les problèmes complexes et réduisent-ils les tâches répétitives ? Le "rêve" de remplacer les développeurs, irréalisable, est un moteur d'innovation créant des outils précieux. Comment creuser des sujets à l'ère de l'IA générative. Quid du partage et la curation de ces recherches ? https://glaforge.dev/posts/2026/02/04/researching-topics-in-the-age-of-ai-rock-solid-webhooks-case-study/ Recherche initiale de l'auteur sur les webhooks en 2019, processus long et manuel. L'IA (Deep Research, Gemini, NotebookLM) facilite désormais la recherche approfondie, l'exploration de sujets et le partage des résultats. L'IA a identifié et validé des pratiques clés pour des déploiements de webhooks résilients, en grande partie les mêmes que celles trouvées précédemment par l'auteur. Génération d'artefacts par l'IA : rapport détaillé, résumé concis, illustration sketchnote, et même une présentation (slide deck). Guillaume s'interroge sur le partage public de ces rapports de recherche générés par l'IA, tout en souhaitant éviter le "AI Slop". Loi, société et organisation Le logiciel menacé par le vibe coding https://www.techbuzz.ai/articles/we-built-a-monday-com-clone-in-under-an-hour-with-ai Deux journalistes de CNBC sans expérience de code ont créé un clone fonctionnel de Monday.com en moins de 60 minutes pour 5 à 15 dollars. L'expérience valide les craintes des investisseurs qui ont provoqué une baisse de 30% des actions des entreprises SaaS. L'IA a non seulement reproduit les fonctionnalités de base mais a aussi recherché Monday.com de manière autonome pour identifier et recréer ses fonctionnalités clés. Cette technique appelée "vibe-coding" permet aux non-développeurs de construire des applications via des instructions en anglais courant. Les entreprises les plus vulnérables sont celles offrant des outils "qui se posent sur le travail" comme Atlassian, Adobe, HubSpot, Zendesk et Smartsheet. Les entreprises de cybersécurité comme CrowdStrike et Palo Alto sont considérées plus protégées grâce aux effets de réseau et aux barrières réglementaires. Les systèmes d'enregistrement comme Salesforce restent plus difficiles à répliquer en raison de leur profondeur d'intégration et de données d'entreprise. Le coût de 5 à 15 dollars par construction permet aux entreprises de prototyper plusieurs solutions personnalisées pour moins cher qu'une seule licence Monday.com. L'expérience soulève des questions sur la pérennité du marché de 5 milliards de dollars des outils de gestion de projet face à l'IA générative. Conférences En complément de l'agenda des conférences de Aurélie Vache, il y a également le site https://javaconferences.org/ (fait par Brian Vermeer) avec toutes les conférences Java à venir ! La liste des conférences provenant de Developers Conferences Agenda/List par Aurélie Vache et contributeurs : 12-13 février 2026 : Touraine Tech #26 - Tours (France) 12-13 février 2026 : World Artificial Intelligence Cannes Festival - Cannes (France) 19 février 2026 : ObservabilityCON on the Road - Paris (France) 6 mars 2026 : WordCamp Nice 2026 - Nice (France) 18 mars 2026 : Jupyter Workshops: AI in Jupyter: Building Extensible AI Capabilities for Interactive Computing - Saint-Maur-des-Fossés (France) 18-19 mars 2026 : Agile Niort 2026 - Niort (France) 20 mars 2026 : Atlantique Day 2026 - Nantes (France) 26 mars 2026 : Data Days Lille - Lille (France) 26-27 mars 2026 : SymfonyLive Paris 2026 - Paris (France) 26-27 mars 2026 : REACT PARIS - Paris (France) 27-29 mars 2026 : Shift - Nantes (France) 31 mars 2026 : ParisTestConf - Paris (France) 31 mars 2026-1 avril 2026 : FlowCon France 2026 - Paris (France) 1 avril 2026 : AWS Summit Paris - Paris (France) 2 avril 2026 : Pragma Cannes 2026 - Cannes (France) 2-3 avril 2026 : Xen Spring Meetup 2026 - Grenoble (France) 7 avril 2026 : PyTorch Conference Europe - Paris (France) 9-10 avril 2026 : Android Makers by droidcon 2026 - Paris (France) 9-11 avril 2026 : Drupalcamp Grenoble 2026 - Grenoble (France) 16-17 avril 2026 : MiXiT 2026 - Lyon (France) 17-18 avril 2026 : Faiseuses du Web 5 - Dinan (France) 22-24 avril 2026 : Devoxx France 2026 - Paris (France) 23-25 avril 2026 : Devoxx Greece - Athens (Greece) 6-7 mai 2026 : Devoxx UK 2026 - London (UK) 12 mai 2026 : Lead Innovation Day - Leadership Edition - Paris (France) 19 mai 2026 : La Product Conf Paris 2026 - Paris (France) 21-22 mai 2026 : Flupa UX Days 2026 - Paris (France) 22 mai 2026 : AFUP Day 2026 Lille - Lille (France) 22 mai 2026 : AFUP Day 2026 Paris - Paris (France) 22 mai 2026 : AFUP Day 2026 Bordeaux - Bordeaux (France) 22 mai 2026 : AFUP Day 2026 Lyon - Lyon (France) 28 mai 2026 : DevCon 27 : I.A. & Vibe Coding - Paris (France) 28 mai 2026 : Cloud Toulouse 2026 - Toulouse (France) 29 mai 2026 : NG Baguette Conf 2026 - Paris (France) 29 mai 2026 : Agile Tour Strasbourg 2026 - Strasbourg (France) 2-3 juin 2026 : Agile Tour Rennes 2026 - Rennes (France) 2-3 juin 2026 : OW2Con - Paris-Châtillon (France) 3 juin 2026 : IA–NA - La Rochelle (France) 5 juin 2026 : TechReady - Nantes (France) 5 juin 2026 : Fork it! - Rouen - Rouen (France) 6 juin 2026 : Polycloud - Montpellier (France) 9 juin 2026 : JFTL - Montrouge (France) 9 juin 2026 : C: - Caen (France) 11-12 juin 2026 : DevQuest Niort - Niort (France) 11-12 juin 2026 : DevLille 2026 - Lille (France) 12 juin 2026 : Tech F'Est 2026 - Nancy (France) 16 juin 2026 : Mobilis In Mobile 2026 - Nantes (France) 17-19 juin 2026 : Devoxx Poland - Krakow (Poland) 17-20 juin 2026 : VivaTech - Paris (France) 18 juin 2026 : Tech'Work - Lyon (France) 22-26 juin 2026 : Galaxy Community Conference - Clermont-Ferrand (France) 24-25 juin 2026 : Agi'Lille 2026 - Lille (France) 24-26 juin 2026 : BreizhCamp 2026 - Rennes (France) 2 juillet 2026 : Azur Tech Summer 2026 - Valbonne (France) 2-3 juillet 2026 : Sunny Tech - Montpellier (France) 3 juillet 2026 : Agile Lyon 2026 - Lyon (France) 6-8 juillet 2026 : Riviera Dev - Sophia Antipolis (France) 2 août 2026 : 4th Tech Summit on Artificial Intelligence & Robotics - Paris (France) 20-22 août 2026 : 4th Tech Summit on AI & Robotics - Paris (France) & Online 4 septembre 2026 : JUG Summer Camp 2026 - La Rochelle (France) 17-18 septembre 2026 : API Platform Conference 2026 - Lille (France) 24 septembre 2026 : PlatformCon Live Day Paris 2026 - Paris (France) 1 octobre 2026 : WAX 2026 - Marseille (France) 1-2 octobre 2026 : Volcamp - Clermont-Ferrand (France) 5-9 octobre 2026 : Devoxx Belgium - Antwerp (Belgium) 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/

Awesome News Daily

You can send and text and we love them.. but apparently we cant respond. Sorry!!A daily dose of good news in two minutes time... give or takeSupport the showJoin us on Facebook https://www.facebook.com/groups/awesomenewsdailyor email me at awesomenewsdaily@gmail.com

Inside Java
The New Inside Java Podcast

Inside Java

Play Episode Listen Later Feb 13, 2026 4:46


Welcome to the new Inside Java Podcast. In this meta episode, Nicolai Parlog introduces you to the podcast's new structure with two shows under one umbrella: The long-form conversations you know become Ask the Architects episodes and they'll be accompanied by the Inside Java Newscast as a podcast.

4:13 Podcast
#389: Can I Figure Out My Own Love Language? With Dr. Gary Chapman

4:13 Podcast

Play Episode Listen Later Feb 12, 2026 42:17


You may know your love language—but what if you're speaking it with the wrong accent? Dr. Gary Chapman has helped more than 150 million people discover their "love language," but knowing the language is just the beginning. That's because each love language has dialects! Miss the dialect, and even the right language can fall flat. So today, Gary joins me to share why love so often gets lost in translation and how learning to speak the right dialect at the right time is key to a deeper connection. Whether you're dating, married, or seeking to deepen lifelong friendships, this conversation will give you the tools you need for all your relationships. And since it's almost Valentine's Day

Spring Office Hours
S5E06 - Spring Framework 7 with Juergen Hoeller

Spring Office Hours

Play Episode Listen Later Feb 12, 2026 61:50


Join Dan Vega and DaShaun Carter for a landmark episode of Spring Office Hours featuring a very special guest: Juergen Hoeller, co-founder of the Spring Framework and current project lead. As the primary architect behind the core framework for over two decades, Juergen offers an unparalleled perspective on the past, present, and future of the ecosystem. In this episode, we go straight to the source to discuss the technical vision driving Spring Framework 7 and beyond.  Juergen will share his insights on maintaining Spring's signature flexibility while meeting the rigorous demands of today's high-scale, AI-integrated, and mission-critical applications. You can participate in our live stream to ask questions or catch the replay on your preferred podcast platform.

Inspect and Adapt
#64 Design by Contract

Inspect and Adapt

Play Episode Listen Later Feb 10, 2026 57:39


Design by Contract is used by advanced developers to lower defects and reduce complexity, making development faster. Construx staff experience for over two decades in a variety of languages ranging from Assembler to Java is consistent with these benefits. Join Steve Tockey, Earl Beede, and Mark Griffin as they discuss why Design by Contract is so beneficial, with particular emphasis on how it reduces code defects, makes remaining defects easier to find and fix, and reduces complexity.

The Whispering Woods - Real Life Ghost Stories
AFTER DARK | Into the Fire: The Dynamo Jack Phenomenon, True Paranormal Stories

The Whispering Woods - Real Life Ghost Stories

Play Episode Listen Later Feb 8, 2026 24:13


In the streets of 1980s Java, a man named John Chang, otherwise known as Dynamo Jack, demonstrated supposed paranormal mastery over energy, chi, and even fire. Was it ancient spiritual discipline or something far stranger?The BOOKBY US A COFFEESubscribe to our PATREONEMAIL us your storiesJoin us on INSTAGRAMJoin us on TWITTERJoin us on FACEBOOKVisit our WEBSITEResearch:https://www.mopaineikung.com/https://www.dingtwist.com/dynamo-jack/Sarah xx"Spacial Winds," Kevin MacLeod (incompetech.com)Licenced under Creative Commons: By Attribution 4.0 Licencehttp://creativecommons.org/licenses/by/4.0/SURVEY Hosted on Acast. See acast.com/privacy for more information.

acast kevin macleod phenomenon java dynamo licenced true paranormal stories john chang
4:13 Podcast
#388: Can I Live Like Heaven Is Real? With Philip De Courcy

4:13 Podcast

Play Episode Listen Later Feb 5, 2026 58:27


When you picture Heaven, what comes to mind? Harps, halos, pearly gates, and endless singing? If that's all Heaven is, it can seem quite disconnected from our lives today. But fortunately, Scripture paints a far richer and more relevant picture. In this conversation, Pastor Philip De Courcy invites you to rethink everything you assume about eternity. Drawing deeply from God's Word, Philip answers big questions like… What is Heaven—really?  Where do believers go when they die? What will we do in Heaven? Why do even nonbelievers feel a longing for eternity? Philip also touches on a few difficult topics we often wonder about, such as the reality of judgment, degrees of reward, and the resurrection of our bodies. But most importantly, Philip will help you see how a clear, biblical understanding of Heaven can completely transform the way you live right now.  SHOW NOTES: 413Podcast.com/388  Enter to win the GIVEAWAY and read the episode TRANSCRIPT in the show notes. Get my weekly email, Java with Jennifer, to be notified when a new podcast episode releases. Subscribe HERE.

Programming Throwdown
186: Becoming a Manager

Programming Throwdown

Play Episode Listen Later Feb 3, 2026 87:30


186: Becoming a ManagerIntro topic: plastic welding kitsNews/Links:Parse.bot, turn any website into an APIhttps://www.parse.bot/Gemini 3https://blog.google/products/gemini/gemini-3/Depth Anything 3https://github.com/ByteDance-Seed/Depth-Anything-3Wan 2.2 (run on runpod)https://www.runpod.io/Book of the ShowPatrickThe Thinking Game (DeepMind documentary)https://www.youtube.com/watch?v=d95J8yzvjbQJasonPlato: The Republichttps://www.gutenberg.org/ebooks/1497Patreon Plug https://www.patreon.com/programmingthrowdown?ty=hTool of the ShowPatrickCore KeeperPc/Switch/Xbox/Playstation JasonWorkers & Resources: Soviet RepublicPCTopic: Becoming a ManagerWhat is a ManagerOpportunityResults + RetentionSizingHiringPhilosophyInterviewsDownsizingHow to ManageCompany Goals / OKRsBreaking down & claiming company goals.Balancing inspirational & practical goalsCoachingOne-on-onesCareer planningPerformance MotivationPerformance Management ReviewCompensationChoosing to become a managerBalancing personal and company incentivesWhy ManageMentorshipBuild relationshipsWhy to not manageLess time for your original joy (coding)Less technical influenceMore uncertainty and less closureHow to transition back to EngineerTake the time/energy to get ramped upAct as an advisor to your manager ★ Support this podcast on Patreon ★

4:13 Podcast
#387: Can I Start a Morning Prayer Routine? With Tara Beth Leach

4:13 Podcast

Play Episode Listen Later Jan 29, 2026 31:22


The practice of waking early to seek God in prayer is woven into the fabric of Scripture. But... what if you're not a morning person? Oh friend, I get it! But whether you greet the sunrise with joy or hit snooze like it's your spiritual gift, today you'll be challenged to rethink what's possible with God. Joining me on the 4:13 is author Tara Beth Leach who shares why mornings matter, how even night owls or those with busy schedules can make space for God, and what it looks like to build a structured yet flexible morning rhythm that actually sticks. You'll walk away with practical guidance, spiritual encouragement, and inspiration for starting your day surrendered to God's presence. So if mornings feel intimidating—or impossible—don't worry. You'll discover that God meets us there with grace, purpose, and renewal. Wake up, buttercup! This one's for you! SHOW NOTES: 413Podcast.com/387  Enter to win the GIVEAWAY and read the episode TRANSCRIPT in the show notes. Get my weekly email, Java with Jennifer, to be notified when a new podcast episode releases. Subscribe HERE.