Loading...
Loading...
0 / 10 episodes
No episodes yet
Tap + Later on any episode to add it here.
What's the best way to interact with an LLM in applications? Carl and Richard talk to Chad Michel about the evolving user interface to large language models. Chad recalls Build 2023, where Technical Fellow Steven Batiche talked about LLMs starting out beside your application (like Copilot), but eventually moving inside, like Claude Cowork. Then Steven suggested that the ultimate destination is outside - a separate interface that then orchestrates across applications. The conversation dives into how development has evolved with these tools, and what other applications could look like in the future.
What can OpenClaw do for you? Carl and Richard talk to David Guttman about his work on OpenClaw, and helping others be successful with it.OpenClaw was one of the first personal agents released and has continued to evolve with the industry. David talks about controlling access to OpenClaw, and controlling what OpenClaw has access to. The challenge is managing prompt injection, and the agent can be manipulated by others to share information inappropriately. But it can also be a time saver for routine and annoying tasks - it takes time to set up properly, but that time is paid back quickly when it gets to work!
What's Shawn been up to lately? Carl and Richard chat with Shawn Wildermuth about his work in the Netherlands. Shawn talks about his last show on being a senior developer - and how much that has changed in the past two years. The role of large language models in software development has changed careers, but they're still fun. The conversation also dives into the role of Aspire to utilize the best of cloud architecture and how LLMs make that easier as well - and enable developers to take on more architectural roles without getting stuck in the details of implementation.
Identity is hard, and getting harder! Carl and Richard talk to Michele Bustamante about the evolution of authentication and authorization in the current landscape. Michele talks about finding apps at clients that are still using older authentication strategies that are no longer secure - or are implemented incorrectly, so they were never secure! The conversation covers the array of tools available today for security, so you don't need to roll your own, and includes support so you can do it right. The role of the LLMs is important - old significant vulnerabilities are being found and fixed that can impact your apps, so it's important to review your identity solutions today!
Last year Jimmy Bogard released commercial licensed versions of AutoMapper and Mediatr - how's it going? Carl and Richard chat with Jimmy about the decision to go commercial and what he's learned after a year. Making customer transactions is part of the process for sure, as is a new array of issues and ideas. But for the most part, Jimmy says it was the right decision and has been a good experience. Another great story of sustainable open source!
How has testing changed in the era of AI? Carl and Richard talk to Debbie O'Brien in her new role at Zephyr about using LLMs to help build and validate tests - and much more. Debbie talks about joining Zephyr and using testing tools like Playwright to validate application workflows and generate documentation. This leads to a discussion about documentation being more important than ever, since LLMs will actually read it! Maintaining quality is a challenge with LLM-generated code and tests, so there's always a role for a critical eye in the process.
The Open Source Maintenance Fee is more than a year old now - how are things going? Carl and Richard catch up with Rob Mensching to discuss the OSMF and its success in supporting Rob's WiX Toolset project. Rob talks about the key aspect of the OSMF - making it part of the licensing, so that it isn't optional. Of course, you can download the source from GitHub and compile it yourself without violating any license terms, but if you're that engaged, you can contribute too. The goal with OSMF is to have folks who want to use the product have a reason and method to pay - check it out!
Have you checked out Azure Container Apps lately? Carl and Richard talk to Paul Yuknewicz and Jan Kalis about how they have sped up startup time with Container Apps using a feature called Express, and then on to the big news - Sandboxes. Sandboxes let you experiment with Azure Container Apps with managed identity to access Azure Connectors to all sorts of resources, both within Azure and outside it - Salesforce, SAP, etc. It's an effective and secure strategy for building applications, but also for experimenting with agents - at no point does the agent actually have control of any credentials. If you haven't looked at ACA lately, you need to check out these latest features!
DNSimple has a CLI! Carl and Richard talk to DNSimple CEO Anthony Eden about the evolution of the DNSimple CLI in today's software market. DNSimple provides DNS, domain registrar, and certificate services - so why does it need a CLI? Anthony talks about earlier experiments with CLIs for folks who didn't want to use the web interface. But today, large language models change the game and work best with a CLI - those specific commands mean more accurate results from LLMs, which make for a powerful natural language interface experience. The conversation covers the new tooling around LLMs, how the registrar market has evolved, changes to certificates, and ICANN's recent announcement of new gTLDs. DNSimple continues to evolve with the times! Check the show notes for a link for ten dollars off anything at DNSimple!
Do data centers in space make any sense? Time for a rare summer-time Geek Out! Richard chats with Carl about all the hype surrounding building orbital data centers for AI workloads. Richard points out that enthusiasm for this idea surged in the fall of 2025, when the backlash against ground data centers peaked. But could you actually make the orbital data centers work? The conversation works through a reasonable satellite design, covering off the details of power, cooling, communications, and satellite management. But how many satellites would be enough? This leads to an exploration of Kessler Syndrome, where orbital debris gets out of control - and what we can reasonably do about it. Which leads to another idea - how do we make ground-based data centers not suck?
Can tooling make event sourcing implementations easier? Carl and Richard talk to Einar Ingebrigsten about his work on cratis.io - a set of open-source tools for implementing event sourcing in your application. Einar discusses the foundational elements of event sourcing and the common implementation patterns he developed at Cratis. With extensive support for .NET, Cratis provides tooling for data storage, event response, replay management, and much more. Also in development is Cratis Studio for collaborating visually on an event model - and generating the code in the process.
Is it time to build your own agent harness? Carl and Richard talk to Emmz Rendle about her work on Daemonic AI, which gives you more control over which models and tooling you use to build software with agents. Emmz talks about the upcoming rug pull in AI software development tools, where prices are rising, and services are being restricted. Having enough control to choose when to run locally becomes key to being productive at a reasonable price. Being able to pick-and-choose what agents and configurations to use for each of the agent roles you want to implement is super powerful - check out the GitHub project and take it for a spin!
What settings, configurations, and workflows do you use for every .NET app? Carl and Richard talk to Scott Sauber about his list - from organizing folders by feature, to logging, security, and testing. Scott talks about enforcing rules like treating warnings as errors so you won't ignore important warnings, and validation in the build, to make applications more reliable. Each of these items represents some work, but in the end, your application will be higher quality and more reliable. Which ones are you already doing?
Large Language Models can generate a lot of text - but is it any good? Carl and Richard talk to Vishwas Lele about his ongoing efforts at pWin.ai to build tools for responding to government RFPs. Vishwas focuses on the quality problem - both the quality of the incoming RFP and the quality of the responding proposal. How do you determine the key requirements of an RFP reliably? And when it comes to the response, how do you provide measurable results for a response? The conversation digs into a change in workflow that benefits the RFP process regardless of tooling - and gives hints to the patterns of success with LLMs!
Use What Works! Carl and Richard talk to Dylan Beattie about the Use What Works movement, encouraging developers to use well-maintained open-source projects available today rather than rolling their own. Dylan explains how folks go down a path of believing a library is simple until they learn enough to realize that every bit of software is more complicated than they realize. And the less code you own, the happier and more productive you are. Adding AI to the mix only makes it clearer: you need some stability in development. If you're changing every layer of code, you'll spend even more time and frustration chasing problems. Make getting results easier - use what works!
Ready to go nano? Carl and Richard talk to José Simões about the open source .NET nanoFramework - a community-driven project to provide .NET for embedded systems. José talks about the evolution from the .NET microFramework, to something even smaller, while at the same time, microcontrollers have gotten much more powerful. The conversation looks beyond the hobbyist and educational uses of these systems into commercial IoT applications. The development cycle is one you'll recognize, working in Visual Studio (or Visual Studio Code) and executing against an emulator, or to the actual controller via USB. And yes, you can set breakpoint in the controller!
Recorded live at the Tavern Hall in Bellevue during the Party with Palermo for the MVP Summit, it's episode 2000! Carl and Richard take questions from the audience and play clips from past guests and listeners about their experiences with .NET, and the role that .NET Rocks has played in their careers. After two thousand shows, there are lots of stories, and plenty to celebrate. Thanks for listening!
The Y2K bug turned out to be a non-event on January 1, 2000. How did that happen? Carl and Richard bring together a number of stories from folks who were there, fixing the software and updating systems, so effectively that, ultimately, nothing much happened when the clocks rolled over. It was common practice with early software to only store two digits worth of year - back then, storage space was at a premium. For years, there had been warnings about fixing these problems, but by 1999, it was essential. These are the stories of how some folks did those fixes so effectively that when Jan 1 2000, came around, nothing bad happened.
How are LLMs changing software development? Carl and Richard talk to Rob Conery about his experiences as a consultant bringing the new AI tools and techniques into companies. Rob talks about focusing on the most painful problems first to show the team quick results and make their lives better. The conversation digs into how these tools seriously change the way developers work and what it takes to embrace those changes. Lots of good thinking from a very experienced developer on how to do more than ever before!
How do you make your agents more knowledgeable about your company data? Carl and Richard talk to Ed Charbeneau about Progress Agentic RAG-as-a-Service, using NucliaDB as a vector data store to organize your company information into a form an agent can work with efficiently. Ed talks about the various approaches available today for providing timely company data to agents and the power of a dedicated data store and service model so that you spend less time on plumbing and more time building a great agentic app. The products are open source and have great .NET SDKs - check them out!
ASP.NET Core continues to evolve in 2026! Carl and Richard talk to Daniel Roth about all the goodness in the ASP.NET Core space, including MVC, Razor, and Blazor! Daniel talks about the publicly visible ASP.NET Core Roadmap on GitHub - where you can support ideas, add your own, and debate implementations! The conversation dives into the focus on Blazor - MVC and Razor aren't going away anytime soon, or perhaps ever. Still, the energy is definitely on Blazor, and its potential to provide a great development experience that scales effectively and provides the features your applications need. And Daniel reminds us that the teams all work closely together, including the broader .NET and language teams, so new features are in the right place and available to everyone!
What does secure coding look like today? Carl and Richard talk to Chris Ayers about the MITRE ATT&CK matrix, a comprehensive breakdown of the tactics, techniques, and procedures black hats use to exploit your systems. Chris talks about the role of developers in creating more secure software, starting with logging - surfacing important data about the use of applications that can help indicate when a black hat is taking advantage of it. The conversation also digs into supply chain attacks, various techniques for resisting exploits being introduced through libraries, and the ever-expanding array of threats affecting software today!
Let the squad help you build your application! Carl and Richard talk to Brady Gaster about Squad, a tool for creating an AI development team using GitHub Copilot. Brady discusses creating specialist agents across various aspects of building an application to keep context as small as possible, along with token consumption. Often, agents communicate with other agents to work through project problems, generating persistent information about the project, including skills as needed. Squad continues to evolve and get more powerful - try it with your application!
Avalonia continues to evolve! Carl and Richard talk to Avalonia CEO Mike James & Matt Lacey about the latest version of Avalonia, the open source UI framework for building cross-platform applications with .NET. Mike's conversation with the Google Flutter team has led to replacing the Skia rendering engine in Avalonia with the newer Impeller Rendering Engine that Flutter itself depends on. This opens the door to excellent smartphone implementations with Avalonia, alongside its usual desktop and embedded roles. With enterprise editions and the new Avalonia Accelerate, there's more to come from the team!
Your first app interface should be a CLI! Carl and Richard talk to Kathleen Dollard about her experiences creating the .NET CLI - and how CLIs are only getting more important in the era of AI. Kathleen talks about working within the POSIX CLI standard for consistency's sake and to recognize that there will be many more CLIs in your life, so they should be as similar as possible. While CLIs may have started as configuration-as-code and DevOps practices, LLMs work well with them as long as consistency is maintained. There are several projects out there today to help you build a great CLI - check the links!
Artificial Intelligence is changing how software development happens - how is your team coping? Carl and Richard talk to Andrew Murphy about his work leading teams struggling with AI tools. Andrew talks about Nolan Lawson's blog post We Mourn Our Craft and his blogged response about dealing with grief. Some developers are embracing these new tools - perhaps they're new to development, or very experienced. But some folks aren't having a good time with AI and are wondering what has happened to their careers. How can you help?
It's always been challenging to make reliable software - is AI making it worse or better? Carl and Richard talk to Damien Brady about his experiences building software with AI tools and trying to bring that software up to an acceptable standard. Damien talks about leveraging LLMs' tendency toward detailed analysis to catch problems in code. It takes practice and experience to get good at using these tools, but they become more powerful over time!
How does Artificial Intelligence impact our approach to building secure software? Carl and Richard talk to Ben Dechrai about his experiences working with AI tooling and building AI apps, and how that impacts security. Ben talks about the concerns organizations have about using AI tools - what these tools might do with the code they are exposed to, as well as the code the tools generate. The conversation steers to local AI as a solution, although so far, the equipment and tools are very limited. Ben also talks about how AI tools are being used to both attack and secure software and the challenges of this arms race - hopefully the good guys win!
Why would you write code to generate code? Carl and Richard talk with Jason Bock about his experiences using modern .NET source generators to optimize certain aspects of applications. Jason talks about treading carefully - while .NET source generation has been part of .NET since 5.0 and Roslyn, it is a special case approach to problem solving. But with specialized implementations for regex and P/Invoke, there is some huge potential in these coding techniques that you can take advantage of!
What's coming for Aspire in 2026? Carl and Richard talk to Maddy Montaquila about her work as the product manager for Aspire, the tool that helps you build cloud-native, distributed applications in any language and on any platform. Maddy talks about moving beyond .NET, recognizing that modern applications are written in a number of languages, and the team has focused on ensuring excellent support for Python and JavaScript, as well as the .NET languages. The same is true for the cloud - Azure, AWS, GCP - Aspire works great with them all. And then there's the role of AI, both in building apps with Aspire and building AI into applications. Aspirify today!
What's happening with MAUI today? Carl and Richard talk to Gerald Versluis about the latest version of MAUI - and what's coming next! Gerald talks about the release of .NET 10 and the new features that have come to MAUI, including improvements in quality, performance, and ease of use. The conversation also digs into adjacent technologies like Uno and Avalonia and how they are collaborating with the MAUI team to make development even easier!
How do you distribute Windows apps? Carl and Richard chat with Shmueli Englard about the power of distributing apps through the Microsoft Store. You package your app as an MSIX and can deploy it to the Microsoft Store, and then send updates through it as well. If you want to charge for the app, Microsoft will do the licensing and payment systems for you (for a fee, of course), but if your software is free, distribution through the Microsoft Store is also free! Want to do your own updates? You can do that too.
What's happening with Uno now that .NET 10 is released? Carl and Richard talk to Jérôme Laban and Sam Basu about the latest developments in Uno, including their collaboration with Microsoft on MAUI, WASM, and more! The conversation also digs into the role of AI in the Uno Platform, bringing MCPs into play to build applications faster and make migration from legacy systems easier. A lot is going on in development today!
Happy New Year - let's talk Energy! Richard chats with Carl about the state of energy generation in the world today - and things are progressing! Almost every kind of power generation is expanding at the moment, whether you look at solar, wind, hydroelectric, natural gas, coal, oil, or even nuclear! The cost of batteries hits a new low, and new technologies being demonstrated today show that storage is only going to get bigger. And what about the impact of AI on power generation? There's a huge change coming to electricity, an AI may have accelerated that change - but that's only part of the equation!
Space Geek Out Time - 2025 Edition! Richard talks to Carl about the past year in space, starting with a reader comment about 3I/ATLAS, the interstellar comet passing through our solar system that has kicked off conspiracies about aliens coming to visit - hint, it's just a comet. Then, into another record-breaking year of spaceflight with a record number of Falcon 9 flights, Starship tests, United Launch Alliance underperforming, and New Glenn finally getting to orbit! The International Space Station has passed 25 years of continuous habitation and is only five years away from being sent to a watery grave. But there are new space stations in the works! Finally, the stories of landers on the Moon, trouble at Mars, and how silly the idea of building data centers in space really is. A fantastic year for space!
How is AI going to change software development? Live from the Philly.NET user group, Carl and Richard have Jeff Fritz and Bill Wolff chat about how AI technologies are impacting software development. The conversation opens with a listener concerned about the costs and controls around AI technology. There are a variety of approaches to using these tools; Jeff and Bill talk about the work they have done and some of the challenges. There is enormous potential here, but the paths forward aren't clear yet - more is to come!
How is package management changing? Carl and Richard talk with Gary Ewan Park about his view of the package management landscape in the Windows world. Gary talks about the array of open source and free products out there today to do package management - you really have a lot of choice! There are also retail enterprise products that focus on features companies need to support larger numbers of machines, including virtual machines and cloud containers. The challenge of security and supply chain attacks is a key part of the modern landscape - and there are tools to help you get things right!
What's it like building an AI-centric application? Carl and Richard talk to Calum Simpson of SSW about their product YakShaver. Calum talks about building a tool that speeds reporting on issues and ideas, so you can spend more time focusing on key issues rather than "shaving the yak." The use of LLMs makes YakShaver far more capable, and the upcoming V2 uses Model Context Protocol (MCP) servers to expand functionality and feed information directly into bug reports, such as GitHub issues and feature requests. The conversation also turns a bit more philosophical, focusing on innovative uses of LLMs, properly constraining these tools, and maintaining a transparent chain of responsibility for your code.
What does it take to make more environmentally sustainable software? Carl and Richard talk to Tom Herkhove about Microsoft's efforts to make carbon footprint and emissions visible for applications. Tom talks about the Azure API Management interface as a great starting point, and the ability to shift workloads to low-emission data centers as needed. The conversation also digs into wasted cycles, like automatically fired CI/CD pipelines whose results are never reviewed. It all begins with measuring - what action you take from there is up to you!
How are large language models going to change the way we use Visual Studio? Carl and Richard speak with Leslie Richardson about her work in Visual Studio, starting with the debugger and now focusing on the broader productivity features of the product. Leslie discusses how various Copilots are being integrated into Visual Studio to help users take advantage of the vast array of features available, which can sometimes be difficult to discover. The upcoming Visual Studio 2026 is available as an insider's preview if you want to get a jump on what's coming!
How are folks adapting to the new tools available for development today? Carl and Richard talk to Brady Gaster about his work on improving the tooling for software development at Microsoft - and the transformation that is currently underway! Brady talks about developers doing app modernization, dealing with the challenges of the cloud, and the many fun things you get to do as software developers over the years - and how there's only more coming!
Ready to integrate build automation into your applications? Carl and Richard talk to Mattias Karlsson about the new Cake.SDK as an additional component of the Cake (C# Make) open source project. Mattias talks about integrating the Cake scripting experience into your .NET console applications. The conversation digs into speeding up the building of infrastructure for testing and pre-production environments so that you can get features shipped quickly!
How do you build quality software with LLMs? Carl and Richard talk to Den Delimarsky about the GitHub Spec Kit, which uses specifications to help LLMs generate code for you. Den discusses the iterative process of refining specifications to produce better code, and then being able to add your own code without disrupting the process. The conversation delves into this new style of software development, utilizing specifications to break down tasks sufficiently for LLMs to be successful, and explores the limitations that exist today.
The next version of CSLA is out! Carl and Richard talk to Rocky Lhotka about his business objects framework that pre-dates .NET itself! Rocky discusses the surge in development that occurred for version 9, where a company heavily dependent on CSLA contracted developers to clear some of the backlog. The result is a few new long-term contributors, resulting in an increased development candence and a substantial modernization of the code base. The conversation also turns to AI and its role in development, as well as Rocky's experiments with making an MCP server for CSLA!
Aspire has been around for almost two years. How do you use it effectively? Carl and Richard talk to Chris Klug about his experience with .NET Aspire. Chris discusses thinking cloud natively, whether you are going to the cloud or not - it's not just a place, but also an architecture. The conversation digs into the role of containers and Kubernetes, deployment strategies, telemetry, security, testing, and more. You can use as much or as little Aspire as you wish!
You write tests - but are they valuable tests? Carl and Richard talk to Egil Hansen about his approach to creating tests for applications. Egil discusses the types of testing and who they impact. Testing isn't only for you! Valuable tests are also durable, being able to persist between changes where it makes sense, and help to understand when updates are going to create problems. The role of LLMs in generating code comes into play: should AI write your tests, evaluate them, or do both? Lots of great thinking from someone who's been helping developers build better tests for years!
AI in the cloud dominates, but what can you run locally? Carl and Richard speak with Joe Finney about his work in setting up local machine learning models. Joe discusses the non-LLM aspects of machine learning, including the vast array of models available at sites like Hugging Face. These models can help with image recognition, OCR, classifiers, and much more. Local LLMs are also a possibility, but the hardware requirements become more significant - a balance must be found between cost, security, and productivity!
How has AI changed coding with Visual Studio Code? Carl and Richard talk to James Montemagno about his experiences using the various LLM models available today with Visual Studio Code to build applications. James talks about the differences in approaches between Visual Studio and Visual Studio Code when it comes to AI tooling, and how those tools continue to evolve. The conversation also digs into how different people use AI tools to answer questions about errors, generate code, and manage projects. There's no one right way - you can experiment for yourself to get more done in less time!
Razor Tooling is evolving! Carl and Richard talk to David Wengier about the changes coming for Razor Pages in the next version of Visual Studio. David talks about the realization that much of the new work in Razor ties closely to Roslyn, which has resulted in a new co-hosting model that means higher performance and reliability for your web pages! The conversation delves into how capabilities in Visual Studio Code are shared with Visual Studio and vice versa, as well as the role of the Language Service Protocol in making it easier to bring more powerful tools to you.
Ready for the next version of Visual Studio? Carl and Richard talk to Mads Kristensen about the long-awaited version of Visual Studio. Needless to say, artificial intelligence sits front and center. Mads talks about the deep integration of AI across the development lifecycle, including code completion, debugging, even natural language querying. The conversation also digs into the role of Visual Studio as a project management tool, and its integration with cloud, GitHub, and more!
How has DevOps changed in 2025? Carl and Richard talk to Michael Levan about his experiences helping teams automate their development workflows, and dealing with all the details that help the entire team focus on providing customer value. Michael digs into the role of the new AI tools in facilitating better workflows around code, testing, deployment, telemetry, and more. Then the conversation turns to security - and the many challenges that exist to make applications that are secure when deployed, and help with the security challenges that happen while in operation!
How did the design of GitHub evolve? Carl and Richard speak with Diana Mounter about her experiences at GitHub, including her role as head of design. Diana discusses how she was drawn to GitHub as a designer and how her career evolved to lead design for the company. The conversation ranges over different design concepts, the Primer design language, and how to effectively combine design and development to achieve great results.
What's coming in C#14? Carl and Richard chat with Dustin Campbell about the next version of C#, discussing what it takes to continue advancing software development in the Microsoft ecosystem. Dustin discusses how features are selected from version to version, including long-developed features like extension members, which have been in development for years. The conversation also turns to Razor Pages, which Dustin helps contribute to, and the dynamic of what should be language, what should be framework, and what should be tooling. And there's much more to come!
How has application security evolved over the decades? Carl and Richard talk to Michael Howard about his experiences working in security at Microsoft. Michael discusses his current role as a member of the Red Team at Microsoft, which identifies security vulnerabilities within the organization by creating scenarios that black hats might employ, such as stealing tokens or hijacking financial transactions. The conversation examines how security continues to evolve, with improved tools, new attack surfaces, and increasingly serious attacks. It's an arms race, but one the good guys can win!
Can you improve a legacy application? What's the right way to go about it? Carl and Richard talk with Billy Hollis about his work updating legacy applications, starting with the most essential question: should you? Billy begins by defining what it means to be a legacy application and how, invariably, these applications are critical to the organization, so you have to tread lightly. Typically, the focus is on modernizing the client-side of the app, which brings us to the crux of the matter: Are the workflows of the company today well reflected in the older application? Lots of great thoughts from one of the longest-serving guests of .NET Rocks!
How can event sourcing help your applications? Carl and Richard speak with Hannes Lowette about his work in helping developers utilize event sourcing patterns to build scalable applications. Hannes discusses moving away from the old habit of decomposing data from objects into rows, columns, and tables, as there's no reason to save that disk space anymore. Storing objects as event streams means you can always generate relational data if needed, but things run faster and scale better in the streams.
Do you have AI concerns? So does Mark Seemann! Carl and Richard chat with Mark about his views on the impact that large language models are having on the development community. Mark starts with the power of ChatGPT to be perceived as a source of truth, which we know isn't true! How does this ultimately impact the development of software? You need sufficient knowledge to assess whether the code generated by these tools is valid, accurate, and appropriate. The tools can also help with the process. We're still in the early days of using AI for information - there's a lot to learn!
How do you build progressive web apps in 2025? Carl and Richard talk to Lemon about his experiences building all sorts of PWAs for customers and entertainment. Lemon discusses going beyond the icon in PWAs and leveraging more powerful features, including service workers. The conversation also digs into some of the crazy talks done over the years, as well as gaming from browsers and more!
How can AI tech help you write better code? Carl and Richard talk to Mark Miller about the latest AI features coming in CodeRush. Mark talks about focusing on a fast and cost-effective AI assistant driven by voice, so you don't have to switch to a different window and type. The conversation delves into the rapid evolution of software development, utilizing AI technologies to accomplish more in less time.
Ready for a great explanation of Agentic AI? For the last show at Build, Carl and Richard sit down with Seth Juarez to dig into what agentic AI really is - and how you can take advantage of it! Seth discusses the potential of MCP and NLWeb to enable agents to work with each other, as well as the challenges of managing these tools effectively. The conversation turns to what's happening under the hood of agentic AI software, including the limitations of its abilities. There is a need for governance and clear thinking with these new development tools!
It's the Imagine Cup Finalists! While at Build, Carl and Richard sat down with Daniel Kim, Matt Steele, and Gheida Omar to talk about their projects in the Imagine Cup. Gheida discussed Signvrse, a mobile app that enables real-time translation of speech, text, and sign language. Matt tells the story of Hairmatch, a mobile app for women with textured hair. And Daniel describes Argus, the winner of the Imagine Cup, as a two-part wearable device for people with low vision that provides object detection, facial recognition, and spatial guidance. All amazing projects from a remarkable group of young people!
How do you eliminate the friction of development? Carl and Richard talk to Nicole Forsgren about her upcoming book on eliminating the friction from software development. Building on her earlier book, Accelerate, Nicole discusses the role of AI technologies in software development, along with more traditional DevOps elements, such as automating testing, deployment, telemetry, and more. There's never been a better time to pay attention to your tools and methods when it comes to software development - when you improve your workflow, your productivity soars!
What happens when AI comes to your web testing tool? While at Build, Carl and Richard talked to Debbie O'Brien about the latest features in Playwright, including Playwright MCP, the model control plane for Playwright capabilities. Debbie talks about using Playwright MCP to buy a table. Ask your LLM what tests should be written for your web page, and then ask it to write them.
How will coding agents change your code? While at Build, Carl and Richard chatted with Scott Hunter about the announcements around coding agents at the keynote. Scott talks about the agent mode available in Visual Studio Code - and now in Visual Studio! Agent mode allows the LLM to evaluate the code across an entire solution, not just the file you're currently looking at. You can create a workflow where GitHub issues are assigned to the agent, which then generates code and provides a pull request for evaluation. The agents are here and helping us do more!
What if you could use ElasticSearch serverless? While at Build, Carl and Richard chatted with Ken Exner about the new announcements around Elastic providing serverless storage and search! Ken talks about paying for only the data you move and store with serverless, rather than needing to operate any infrastructure for Elastic. The conversation digs into the potential of Elastic in Azure AI Foundry to provide ultra-fast access to current company data for your LLM implementations. Elastic did vector databases before LLMs made them essential for RAG - and you can take advantage of it!
Do you understand how networking works in C#? Carl and Richard chat with Chris Woody Woodruff about his new book on networking with C#. Chris runs down the fundamentals of networking and then discusses the different approaches readily available in the C# world, including web sockets, gRPC, SignalR, and many more! The conversation also turns to the upcoming QUIC standards built into HTTP/3 that should simplify networking. Sure, you could go with the defaults, but why not explore all the options!
How do you secure browser-based frontends with ASP.NET Core backends? Carl and Richard discuss the Backend for Frontend (BFF) Security Framework with Erwin van der Valk. Erwin talks about Sam Newman's BFF Pattern and how it helps deal with the diversity of clients, including web, desktop, and mobile, to work with a common backend. OAuth 2.0 is capable of dealing with this complexity, but there are many moving parts, and that's where the security framework can help!
How do you balance architecture and code? Carl and Richard talk to Steve Smith about various architectural strategies and the swing back-and-forth against over-designing architecture and getting code written. Steve talks about how architecture changes depending on the size and number of teams, how the latest tools can help with architectural choices, and the challenge of effective refactoring when things need to change. Lots of great conversation!
Open Source Maintainers are burning out or going commercial - how do we solve this? Carl and Richard chat with Rob Mensching about his work to create the open source maintenance fee through GitHub. Rob talks about the common problem of single maintainers getting buried under issues and demands of consumers for a project. Recognizing that most people cannot contribute to the project, a maintenance fee helps support the maintainer in a low friction way for everyone involved. Check out the links to get started!
How can a large language model help your organization answer government RFPs? Carl and Richard talk to Vishwas Lele about his startup pWin, as in proposal win. Vishwas talks about being a year into the startup and his deeper understanding of how AI technologies can augment skilled operators to produce better quality products in less time, including responding to RFPs. The conversation digs into tuning the LLM to focus on the data relevant to each section of the RFP so that the operator can interact with the tool and build better responses!
Can you integrate performant audio-video into your .NET application? Carl and Richard talk to Elias Puurunen about his work at Tractus Events, where he uses the NDI protocols to bring real-time audio and video streams into his C# application. Elias talks about the power of P/Invoke to access the underlying libraries for controlling video streams, including utilizing NVidia GPUs for extremely fast encoding and decoding. You could write this code in C++, but why?
Ready to build an agentic AI in .NET? Carl and Richard talk to Spencer Schneidenbach about his work using large language models to enhance customer interactions in healthcare. Spencer discusses using the LLMs to summarize customer conversations to identify topic areas, sentiment, and other concerns. He digs into how Microsoft's Semantic Kernel makes connecting an OpenAI model to your APIs easy, fetching information and creating a context for testing reliability and consistency with these models. Check out the links for some great tools to help make your AI apps with .NET!
How do you measure the quality of a large language model? Carl and Richard talk to Dr. Jodie Burchell about her work measuring large language models for accuracy, reliability, and consistency. Jodie talks about the variety of benchmarks that exist for LLMs and the problems they have. A broader conversation about quality digs into the idea that LLMs should be targeted to the particular topic area they are being used for - often, smaller is better! Building a good test suite for your LLM is challenging but can increase your confidence that the tool will work as expected.
What are JavaScript promises, and why do you want to make them? Carl and Richard talk to Martine Dowden about all the various async options available in Javascript today, including Callbacks, Promises, Async/Await, and even ReactiveJS! Martine digs into some of the more remarkable features available, including grouping sync calls together so code is only called when they all complete, or the race option where only one needs to complete, and everything else is thrown away. Lots of power is available in Javascript today. Have you taken advantage of it?
What's the latest with .NET Aspire? Carl and Richard talk to Rob Richardson about his experiences with .NET Aspire to help build great .NET cloud apps. Rob talks about all the goodness that comes out of the box with Aspire, including OpenTelemetry, containerization, good security practices, and the excellent dashboard. The discussion turns to the challenges of evolving .NET to be better in the cloud, retrofitting existing applications with Aspire, and all the container choices you have in front of you with these tools. There's more than one way to fall into the pit of success!
Seventeen years of Automapper! Carl and Richard talk to Jimmy Bogard about his latest version of Automapper - and the challenge of maintaining a long-lived and much-loved open-source library! Jimmy talks about the origins of Automapper as a tool he needed for working with clients and automating the mapping of objects. Initially, he moved to GitHub on Codeplex in 2009, and as open source became more popular in the .NET community, Automapper has hundreds of millions of downloads. And now, the next challenge - how to sustain this open-source project!
React version 19 has been released! Carl and Richard talk to Aurora Scharff about the long-awaited version of React that incorporates React Server Components and many other features. Aurora talks about the rethink involved in switching to a server-first implementation of a React website, which is best suited for greenfield implementations. For existing React apps, you'll want to look at React Router, which has V7, incorporates Remix features, and provides a bridge between React 18 and 19. Lots of progress from the library that runs Facebook!
How can vertical architecture help you? Carl and Richard talk to Jeremy Miller about using vertical architecture to help build applications quickly and reliably. Jeremy talks about resisting the over-thinking of architecture leaving room for developers to build the app and get to results rapidly - by taking a vertical slice of the problem space, end-to-end, and getting something running as soon as possible. The conversation digs into many concerns about taking shortcuts, collaborating with other teams, duplicated work, and more!
Ready to speed up your cross-platform development? Carl and Richard chat with Francois Tanguay and Sasha Krsmanovic about Uno Hot Design. First shown at .NET Conf in 2024, Hot Design brings the Hot Reload experience to UX onto your various client devices. Francois talks about the evolution of the Uno Platform into a place where you can use a variety of client libraries to build your app and deploy your client of choice. But when it comes to iterating the implementation, Hot Design speeds your dev cycle so you can get more done in less time!
How do customers take control of their data from merchants? Carl and Richard chat with Richard Reukema about his book The Empowered Customer. Richard discusses building a data cooperative between customers and merchants using ethical data handling techniques and technology to create mutual benefit. The conversation dives into how to get merchants to migrate from their loyalty programs into this more constructive and broader model.
Can tooling make implementing AI features in your applications easier? Steve Sanderson says yes! Carl and Richard talk to Steve about the Microsoft.Extensions.AI preview toolset for OpenAI and oLlama. Steve discusses ideas around useful places for AI technologies to appear in your application, not just chat. The conversation digs into more ambient ideas, like providing suggested cut-and-paste items when entering forms and even dynamic changes to UI based on how a user interacts with the application. Want to get started? Get the extensions on NuGet!
Ready for a migration story? Carl and Richard talk to Nathan Westfall about his experiences moving an application for school buses from Xamarin Forms to Blazor. Nathan describes the interplay between a tablet on the bus for the driver, cloud services in AWS, and parent smartphones. The discussion dives into the advantages of Blazor on the client from a server resources perspective when dealing with hundreds of thousands of parents, plus being compliant with all of the rules and expectations of a public service sector product. Great insights on how to make apps people use every day!
What's a Microsoft DevBox, and why do you want one? Carl and Richard talk to Isaac Levin about the power of DevBox to help you get up and running fast with a development project. Issac describes a virtual workstation designed for software development with much more processing, memory, and storage options. With the management tools, you can quickly build templates to create new instances,and only pay for what you use. You can have instances for different projects, even different versions!
A visit from one of Scott Guthrie's Ninja Army! Carl and Richard chat with Rob Conery about his latest work with Microsoft technologies, including a VS Code extension for Copilot to understand Postgres databases! Rob talks about spending time in other programming platforms besides .NET to expand his horizons, which led him to create a tool called Viper.NET, similar to the tool from the Go platform, to help manage configuration. The conversation also visits and revisits the impact of GitHub Copilot, now with a free tier, and how it is helping software developers - and generating controversy!
How is your architectural intelligence? Carl and Richard talk to Thomas Betts about his thoughts on implementing AI-related technologies into applications. Thomas talks about stripping the magic out of AI and focusing on the realities - in the end, it's just another API you can call. The conversation digs into what useful implementations of large language models look like, as UX alternatives, summarizers, and tools for reviewing existing work.
It's a new year and time for an Energy Geek Out! Richard catches up on all the developments in energy generation over the past year, including solar, wind, wave, hydrogen, geothermal, nuclear, and more... the conversation also digs into the impacts of the cost of financing going up, the efficiency of different energy generation, and some of the new technologies on the horizon. There's been a lot of progress recently, including a new interest in nuclear power - how will this all play out?
The Space Geek Out for 2024! Richard talks to Carl about SpaceX breaking more records - the most flights in one year, including four test flights of Starship and the Heavy Booster - including the extraordinary catch of the booster in IFT-5! 2024 also saw the first flight of ULA's Vulcan and the second. And then there's the saga of Starliner - and the fact that Sunita Williams and Butch Wilmore will spend ten months on the ISS instead of the planned eight days. More missions to the Moon mean more delays for Artemis, and the International Space Station gets a plan for its deorbit in 2030. New space stations are coming, but with lots of financial problems - will they be flown before the ISS comes down? Then there are all the new interplanetary missions and the ongoing expansion of knowledge brought by the James Webb Space Telescope, changing our thinking about how the universe was formed! Another great year in space - and 2025 looks even more amazing!
What's coming for GitHub? Carl and Richard talk to April Yoho about the recent announcements from GitHub Universe and how they will roll out in 2025. The biggest topic, of course, is all the large language models coming to GitHub - there are a bunch of copilots! April talks about original GitHub Copilot, Copilot Workspace, and Copilot Chat - so many options! Now, you can choose your language model to move beyond OpenAI. And there are other changes at GitHub, including EU residency, new features in the enterprise cloud, and new instrumentation - 2025 looks awesome!
How can event modeling help you build better applications? Carl and Richard talk to Adam Dymitruk about Event Sourcing and Event Modeling, including the new book Understanding Eventsourcing. Adam talks about thinking through business workflows as an approach to event sourcing, where new data is constantly added, never modified. These data streams can then be modeled into different workflows following consistent patterns that make your application straightforward to build and maintain. It does take effort to change your thinking to the event source/model approach but with huge potential!
How do you understand the quality of your code? Carl and Richard talk to Richard Gross about his open-source tool called CodeCharta. Richard talks about various ways you can use CodeCharta to understand your codebase - whether it is complexity, number of changes, or number of coders involved - there are many visualization opportunities. This leads to a discussion about what problematic code actually is. Sometimes, too many people work in the same place, and sometimes, there is only one. Some complexity is necessary, and sometimes it's just refactoring. But what tools like CodeCharta provide is a way to focus on potential points of change and then see when the change has been successful - and you can even print a 3D model to have a physical copy of your code!
How are Azure Static Websites evolving? Carl and Richard talk to Stacy Cashmore about her work with Azure Static Websites, including an update to her book, which is coming soon! Stacy talks about adapting to the latest version of .NET, taking advantage of some of the new features in Blazor, and new Azure Static Website capabilities, including the new Data API Builder. The conversation also explores some of the gotchas, like challenges with SEO and dealing with authentication and authorization strategies.
Let's talk about .NET 9 with one of the platform's leaders! Carl and Richard talk to Glenn Condron about his experiences building .NET 9. Glenn talks about the usual improvements in every version of .NET, including performance, security, and stability. But the new stuff is where the excitement is, starting with Aspire. The conversation digs deeper into the origin story of Aspire and what the team sees as the future of building cloud-native applications with .NET. Then, a dive into all things AI - tools to help developers create applications, as well as how to include AI capabilities in your applications. And there's more to come - .NET 10 is only a year away!
Ready for more Rockstar? Carl and Richard chat with Dylan Beattie about the programming language known as Rockstar. Dylan talks about a joke that got wildly out of hand - back when recruiters were all about rockstar developers, why shouldn't there be a programming language? And then it happened - a language where the code looks (and sounds) like glam rock lyrics! And now there's a new version coming - more rocking to be done!
How do you balance the coupling in your application? Carl and Richard talk to Vlad Khononov about his book on Balancing Coupling in Software Design. Vlad talks about three aspects of coupling - information, distance, and volatility. When these aspects are out of balance, such as a pair of services that are distant from each other but highly dependent and need lots of information, development becomes difficult. Where information is high, keeping the distance low makes life easier. This led to a great conversation about Conway's Law and the idea that sometimes changing the team organization can lead to better application development! Check out the book!
What's coming for Blazor in .NET 9? Carl and Richard talk to Dan Roth about the upcoming version of Blazor. Dan discusses excellent performance improvements, better MAUI interactions, new SignalR features, and more! The conversation also dives into how Blazor gets made and the journey that submitting issues into GitHub goes through to become features in the Blazor framework. It takes a while, but you can be part of making Blazor great!
What does it mean to build cloud-native applications? Carl and Richard talk to Chris Klug about his experiences building applications designed to operate effectively in the cloud. Chris pushes back on the fixation around Kubernetes - you can build cloud-native apps without it! The conversation digs into the various options available to take advantage of the cloud's ability to scale while also tolerating its occasional short-duration outages and shifting availability. Chris also talks about .NET Aspire and its ability to help you build .NET cloud-native applications.
What has Chris Sells been up to? Carl and Richard chat with Chris Sells, the guest on episode 10 back in 2002, about how his career continues to evolve. Chris talks about working at Google on Flutter, the mobile dev stack - before departing for Meta to work on the tooling for augmented reality. The conversation digs into how AR appears to be the logical evolution of mobile but has been completely overwhelmed by artificial intelligence. Chris has left Meta to work on AI technologies and sees huge potential in making better applications than ever before!
How do you make your own copilot? Carl and Richard talk to Prashant Bhoyar about his work with Copilot Studio and Azure AI Studio. Prashant describes how Copilot Studio lives in the Power Platform space while Azure AI Studio is more related to Visual Studio, in that it is a tool for developers of AI technology. Anything built in Azure AI Studio can be surfaced in Copilot Studio - another kind of fusion development! Lots of conversation about what works well and what is difficult with these tools, and how to avoid some critical mistakes!
Ready for a chat with the creator of Node? Carl and Richard talk to Ryan Dahl about his work creating NodeJS in 2009 and how he moved on after a few years, leading to the creation of Deno, an opinionated approach to building web applications. Ryan talks about the challenges of simplifying web development by combining all the important things into a single set of tools—saving you the effort of assembling those things yourself. The conversation also digs into how web development has evolved and one of Ryan's current efforts - convincing Oracle to surrender the JavaScript trademark to the world!
What's the latest with Playwright? Carl and Richard talk to Debbie O'Brien about her ongoing work with Playwright, Microsoft's open-source testing framework for web applications. While it is focused on web applications, you can write your tests in various languages, including .NET! Debbie talks about the new Playwright Testing service, which operates in Azure, so you don't have to stand up with your testing infrastructure - pay for what you use. The conversation ranges over the various features and challenges in testing that Playwright addresses. Now get out there and write some tests - your applications will be better for it!
How simple can you make software development? Carl and Richard talk to Mark Rendle about his focus on simplicity in building software - as simple as possible. Mark talks about the tendency of developers, sometimes through no fault of their own, to use what is new and cool in development, regardless of how practical or necessary it actually is. The conversation digs into the ongoing battle around cloud-native development using technologies like Kubernetes. You can be cloud native with more straightforward approaches! The same applies to web frameworks - there are lots of choices. Build as little as necessary!
How does good design pay off in software? Carl and Richard talk to Billy Hollis about his work designing software, both from a user interaction perspective and application architecture. Billy talks about saving time and money by working hard on design to get a clearer picture of what stakeholders want—because code rework is always more expensive! The conversation also digs into the institutional knowledge walking out of many companies through employees retiring—and how much work that is going to generate over the next few years to modernize!
Can you do mob programming remotely? Carl and Richard talk to Ulrika Malmgren about mob, or team programming - where three to five developers work together on the same problem, rotating keyboard control and collaborating to write the best possible code. Modern tools like Teams and Zoom make it easy to do the same programming style with everyone remotely! Ulrika talks about how team programming becomes the standard approach to development - as opposed to solo programming, where everyone works separately and then has to spend time sharing what they've done! Good team programming results in higher-quality code in less time - and more happiness!
What can machine learning do for geospatial data? Carl and Richard talk to Malte Loller-Anderson and Mathilde Ørstavik about their work at Norkart, using aerial imagery to build detailed maps around Norway. Mathilde dives into the critical role of machine learning - identifying buildings in images. Usually done by hand with each new image, Norkart has a machine learning model that automates the process trained on previous vector maps of buildings. But there are many things that look like buildings in Norway, including patches of snow, mountains, and even shapes under water. Malte also discusses how Norkart has decided to train in-house with nVidia L40 processors rather than in the cloud - the hardware is used 24 hours a day since some models can take weeks to train! There are many interesting ideas about geospatial data and machine learning from people who have been doing it for years.
What do Domain-Driven Design and event sourcing have to do with each other? Everything! Carl and Richard chat with Anita Kvamme about her experiences applying DDD, and specifically event storming, to developing applications using event sourcing. Anita talks about building applications that have many sources of events—from users and elsewhere—and needing to manage that complexity without slowing down development. Event sourcing also means keeping a source of the truth - all events leading up to a practical business benefit. And that can be hugely helpful in analytics as well!
How can a low-code solution help you deliver a .NET app? Carl and Richard talk with Serge Sarafudinov about his Xomega project. Serge describes how Xomega uses models and templates to generate .NET code for applications for Blazor clients, WPF, and even ASP.NET Forms and TypeScript! The conversation also digs into rehabilitating existing .NET applications where new features can be added with Xomega, and then gradually convert the existing application into the model approach - and then you can change out the client if you like! There are free and paid versions of Xomega; take it out for a spin and see if you can't deliver solutions faster!
How do you manage APIs to GenAI, and how can GenAI help with API management? Carl and Richard chat with Andrei Kamenev about the latest features coming to Azure API Management. On the one hand, there are Copilot tools to help craft and understand APIM policies, which can get very complex. Then, there is the provisioning of access to GenAI-related APIs like the Azure OpenAI service, which utilize tokens - and those tokens mean money, so they need to be controlled. The GenAI Gateway provides the ability to rate-limit token issuing and all the other capabilities you expect from APIM. Prompt caching is in preview and can decrease the cost of repeated use of the same prompts. Many of the features are new, and more are coming!
How can .NET Aspire help you get into containers? Carl and Richard talk with Jiachen Jiang about her experiences working with .NET Aspire. Jiachen talks about the power of .NET Aspire to help lead developers to utilize cloud native architecture efficiently. A key part of the equation is containers, and Jiachen talks about how relatively rare containerized .NET apps are - because in many cases, it doesn't add anything but complexity. But as .NET applications need to scale in the cloud, containers become important, and .NET Aspire helps you to take advantage of containers while adding all the cloud-native features you'll value, like great telemetry, orchestration, and discovery!
What if you want to build your own copilot? Carl and Richard talk to Vishwas Lele about his new startup, which is focused on using Azure OpenAI tools to help automate the government RFP writing process. Vishwas discusses the complexities of proposal writing, how specific and complex rules exist for each part of the proposal, and the challenge of getting the software to do an excellent job on the draft. The conversation digs into the domain expertise needed for the technologies and the proposal writing itself - like all good software, it requires domain experts. But when done right, this is hugely valuable software!
What are the basics of building a decent user interface on a web page? Carl and Richard talk to Hilary Stohs-Krause about her experience helping folks build websites - you don't have to be a designer to make something useable! Hilary talks about steering clear of more complex UX libraries unless you know the site owner prefers them. Keeping things simple and consistent is best! The conversation also digs into accessibility and how accessibility needs are a great guide to a decent basic design - making a site that can help everyone understand the pages you've built a great path to a very useable website.
What's happening with WPF? Carl and Richard talk to Joseph Finney about the news from Build about WPF - it's back, baby! But did it ever go away? Joe talks about how WPF was made open source in 2018 and how minimal development was done there - enough so that the community started building frameworks to support it, including WPFUI and ModernWPF. But at Build, Microsoft announced a new focus on WPF, including creating support for a Windows 11 theme - with a line of code, you can make your WPF app look like a Windows 11 app. Where does this leave WinApp SDK? What about migrations? There's lots to talk about!
Multi-modal is here and ready to use! Carl and Richard talk to Veronika Kolesnikova about what she has seen in the latest OpenAI model. Multi-modal refers to GPT-4o's ability to work with text, audio, images, and more and respond in kind! Veronika talks about tackling interesting visual problems with GPT-4o - like summarizing graphs or creating new data visualizations. The conversation digs into some announcements around Build, including the new security features in AI Studio and Windows Recall in the new Copilot+ PC devices. Things are moving quickly!
CosmosDB makes ChatGPT fast! While at Build in Seattle, Carl and Richard chatted with Mark Brown about CosmosDB's role in AI. Mark talks about how ChatGPT switched over to CosmosDB early on - when the number of users started to climb, database performance became essential, and CosmosDB was there. Today, many AI-centric CosmosDB features exist, like vector storage, indexing, and search! The conversation also digs into the impact of the large language model on development - things are different now!
What's up with MAUI and Blazor? Carl and Richard chat with Beth Massi about the latest MAUI, including the new webview available on GitHub that lets you embed an existing web page into your MAUI app. Beth talks about making apps the way you want to - with a mobile, web, or desktop focus - or making them all! Mixing Blazor and MAUI means you can steer clear of XAML if you prefer. There's no right way to build your clients, and MAUI gives you many choices!
GitHub is about so much more than source control! While at Build, Carl and Richard chatted with Damian Brady about all the great things coming out of GitHub over the past few years, including Copilot and now Copilot Workspaces. The conversation digs into how large language models are changing how you write code and some idea of what things could be like in the future. Damian also digs into the more enterprise-centric features like Software Bill of Materials and effective sponsorship of projects. GitHub is the locus of development for many companies, and the tooling continues to expand to make things easier!
Chatting with the leaders of C#! While at Build in Seattle, Carl and Richard sat down with Mads Torgersen and Dustin Campbell to discuss how C# continues evolving into version 13! With new versions coming every year, Mads talks about how complex features can be developed over several versions of the language - while also being able to get feedback from regular developers. So, what comes next for C#? Have a listen!
It's episode 1900! While at Build, Carl and Richard recorded a milestone episode with Scott Hanselman. Scott talks about his goals in the later stages of his career, the ideas and origins of all the podcasts, and what is important to him today. In the second half, Carl pulls out a quiz show for Scott with quotes from shows going back 20 years! Lots of great stories of different conferences, podcasts, and other events - and the things learned along the way. Thanks for listening!
The Nomadic Developer returns - and is working on AI technology! After fifteen years, Aaron Erickson returns to .NET Rocks to talk to Carl and Richard about his nomadic adventures. Aaron talks about the twists and turns of moving from consultant at Thoughtworks to leadership in a tech company, leading a startup, and now being part of the team at nVidia exploring the potential of machine learning and large language models. While the journey is inspiring, Aaron's passion for his latest work sparks a robust conversation about automation and the potential of what is being built today!
What do you want the last chapter of your software development career to look like? Carl and Richard talk to Shawn Wildermuth about life as a 55-year-old software developer. Shawn talks about being an independent software development consultant for the past twenty years and considering what the next ten should look like. The conversation digs into what's fun and valuable and what you want to achieve before retirement. One thing is for sure - there is no one right way to have a career - but making a plan is important!
How do you build cloud-native applications in Azure? Carl and Richard talk to Scott Hunter about how Microsoft tooling is evolving to develop cloud-native applications - starting with the vital idea that all cloud-native apps are multiple applications! Scott talks about how most development tools focus on individual applications and how dealing with multiple applications, including cloud apps, can be challenging. Cloud apps need telemetry, resiliency, and service discovery - which brings the conversation to tooling like .NET Aspire, designed to lead developers down the path to cloud-native applications with all these features and more. And this is only V1 - Scott discusses many more features that could make it easier and easier to make great cloud-native applications!
Six years later, how has antifragility thinking changed? Carl and Richard talk to Barry O'Reilly about his ongoing work on building highly reliable software. Since Barry's last appearance six years ago, he's returned to school and is writing a PhD thesis on antifragility. Studying complexity theory, Barry approaches software architecture with a minimalist view - you only add architecture when you see the application needs it. This leads to ideas around residuality - and a progressive way to build software that yields amazing results!
How do you debug your EF queries? Carl and Richard talk to Giorgi Dalakishvili about his open-source Visual Studio extension, EFCore Visualizer. Giorgi talks about bringing together the EF rendering of the query with the database query plan to ensure you retrieve data from your database as efficiently as possible. The conversation ranges over a number of tools Giorgi has built over the years, including EF Framework Exceptions, DuckDB.NET, and more!
Can speech become part of your development workflow? Carl and Richard talk to Karl Geitz about his use of NaturallySpeaking to create software in Visual Studio. Karl talks about using voice to write better, longer comments in his code and also helps to navigate the features of Visual Studio itself. The effort started when dealing with Repetitive Stress Injury but has now evolved into his most productive approach to coding - one hand on the mouse, the other on function keys, and voice instead of typing!
How do you manage your DNS? Carl and Richard talk to Anthony Eden of DNSimple about his latest product, the Domain Control Plane. Anthony talks about how everyone has DNS—and usually in more than one place. Getting a common view of all your DNS entries, no matter where they are, is valuable, but being able to automate changes is even more important, especially as things scale up! The conversation ranges over development, cloud, scaling systems, and some old-fashioned geekery!
GitHub Copilot has been out for a few years now - how is it going? Carl and Richard talk to Michelle Duke about what's been happening with GitHub Copilot. Michelle discusses the new features in GitHub Copilot, including Chat, which gives you more of a ChatGPT-like interface while still being focused strictly on code, including your code! Then, the conversation digs into the broader ideas around large language models and the perception of artificial intelligence affecting the entire world. A lot is going on!
Do you understand how your APIs are being used? Carl and Richard talk to Anthony Alaribe about his experiences dealing with poorly documented APIs that need updates - but no breaking changes! Anthony tells a story about missing a use case for an API that cost a lot of money, which started him down the path to making APItoolkit.io. The toolkit allows you to see how your API is being used and any exceptions that are happening. It will also generate tests to validate that your new version won't cause problems! Check it out!
How has Aspect-Oriented Programming changed? Carl and Richard talk to Gael Fraiteur of PostSharp fame about his new tool, Metalama. Gael talks about being able to move out of IL and into Roslyn Analyzers to help you get rid of boilerplate code and focus more on the value your application brings. The conversation dives into how AOP can help build higher quality code, to the point of being a testing platform for code compliance for your organization - used right, metalama can make your code reviews smoother! There's a lot of power inside metaprogramming; it's worth trying to understand what Metalama can do for you.
It's 2024, how is Azure doing? Carl and Richard chatted with Magnus Mårtensson about his work with customers migrating and operating in Azure. Magnus talks about the waste many organizations have in cloud resources, often by provisioning services with too many resources or failing to shut down things they no longer need. The conversation digs into today's excellent tooling, including Azure Migrate, Advisor, and Monitor. All tools can help you right-size and control your cloud spend. And AI is coming to make those tools even better!
Modular Monoliths strike the middle ground between monoliths and microservices! Carl and Richard talk to Steve Smith about his work striking a balance between the simplicity of a monolithic set of services and the complexity of breaking everything into microservices. Steve discusses the performance and simplicity advantages of monoliths and only breaking out services with specific needs into separate services. .NET has excellent tooling to help you evaluate, test, and manage your modular monoliths!
Has observability hit a tipping point? Carl and Richard chat with Steve Gordon and Martin Thwaites about the various products and technologies today to make observability a vital part of a successful application. Steve talks about telemetry support hitting a tipping point where most vendors have products working with OpenTelemetry. Martin digs into the many places you can send telemetry to increase your understanding of how your applications work on-premises and in the cloud. It's an exciting time to build cloud-native - are you on board?
Another version of CSLA? Yes! Carl and Richard talk to Rocky Lhotka about his work keeping CSLA up-to-date with the latest .NET features. And now, with .NET 8, CSLA 8 has strong support for Blazor! Rocky talks about getting deep into Blazor for CSLA, the power of rendering the client or server side, and whether or not mixing the two is smart. Lots of great thoughts from one of the original .NET educators!
How do you improve your CSS skills? Carl and Richard talk to Martine Dowden about her new book, Tiny CSS Projects. The book is built around twelve progressively more complex CSS tasks - you can follow along to learn in general or pick a particular chapter for a specific skill you want to exercise. The conversation digs into thinking about the architecture of styling beyond the particular page and how those styles can be updated version-to-version without frustration. You can improve your CSS game!
What's the latest with gRPC? Carl and Richard chat with Irina Scurtu about her latest work with gRPC. Irina talks about the improved tooling with gRPC, including tools like Postman to help you see what's happening in a gRPC interaction, even decoding the binary data! The conversation also digs into the complexity of metadata with headers and trailers and the challenges of supporting multiple platforms and multiple type systems - but it works if you take the time to learn the details. And the results are fast and flexible communications!
How do you handle background tasks? Carl and Richard talk to Sergey Odinokov about Hangfire, his open source project for background job processing in .NET. Sergey talks about his experiences building applications that needed background processing and hoping to find a library similar to other platforms - and eventually creating Hangfire. The conversation dives into the array of different processing options, state management, and the challenging problem of building and maintaining an open-source project over a decade!
What can Uno do for you? Carl and Richard talk to Nick Randolph about the latest from the Uno platform. Nick talks about how Uno has continued to evolve into a broad and effective cross-platform client tool while also adding integrations for design and continuous integration. The conversation digs into the challenge of getting from design to development and how the Figma Plugin makes it easier to take designer Figma docs and make them into actual code in Uno. There are also wizards for helping you add Uno UX testing into your CI/CD pipeline and much more. It's an open-source project, so you can take Uno out for a spin today!
Coming out of .NET Conf, one of the big announcements was .NET Aspire. Carl and Richard talk to David Fowler about his work creating the tools to make building cloud-native .NET applications easier. David discusses the challenge of not re-creating the past - tools like Azure Service Fabric. However, the complexity of containerized applications is real. Aspire can make it simpler to take advantage of being in a container, on the cloud, with all the telemetry, observability, scalability, and flexibility that being cloud-native can bring you!
How do you migrate to .NET 8? Carl and Richard talk to Jimmy Bogard about his experiences helping teams migrate from .NET Framework 4.8 to more modern versions of .NET. Jimmy talks about the team wanting to be able to use ASP.NET Core in their applications as the incentive to make the migration in the first place. The conversation digs into landing on .NET 6 to make migration easier but then wanting to move quickly to later versions to take advantage of the latest features. And no dead-drop migrations - using a reverse proxy to operate the two applications side-by-side so that over months, everything moves across while remaining functional - a great story of migration!
Let's start 2024 with a conversation about energy! Richard chats with Carl about ongoing developments in power generation around the world. Wind technology is maturing but also hitting size limits. Solar is the fastest-growing power generation source on the planet now - and there are recycling options! There are exciting new developments in power storage, some applied hydrogen power projects, and new concepts in geothermal and small modular nuclear. Richard wraps up with thoughts on COP 28 and our progress towards safer, stable power for everyone. Happy New Year!
Time for the annual Space Geek Out! Richard summarizes many of the important space stories of the past year, including SpaceX's record number of Falcon 9 flights and the first two flights of Starship. The conversation also explores the state of the International Space Station, Dream Chaser, Artemis, and other moon missions, including India's successful landing! Richard then digs into the Crisis in Cosmology - how the James Webb Space Telescope has changed our understanding of the universe, and how it is disrupting the current models of the universe. But new science is good - the more you know!
How do you improve the performance of your .NET applications? Carl and Richard talk to Daniel Marbach about his work building high-performance .NET applications and the process he goes through to get them to perform at the level his customers need. Daniel talks about profiling and benchmarking - understanding where your time passes in your code and how to measure it to know if you're making it better. The good news is that great tools are out there to help you; check the show notes for links to them!
It's almost 2024, do we still need to talk about securing our apps? Carl and Richard talk to Laura Bell Main about her ongoing efforts to get everyone involved in creating and operating software to be part of making that software secure. Laura talks about committing one hour of each sprint to security and how, over time, those small efforts can build up to excellent secure guardrails that make our software more resistant to exploitation. Don't push security issues off to someone else - we can all help!
A new version of Polly is out - and it's a special one! Carl and Richard talk to Joel Hulen and Martin Costello about the release of Polly V8. Joel tells the story of Microsoft reaching out about Polly - because it is heavily utilized inside of Azure and at cloud scale, it needed further optimization. The results are a very high-performance library focused on resilience as a whole - with lots of smart defaults so that you can write even less code to have even more resilient applications!
How do we put large language models to work? Carl and Richard talk to Vishwas Lele about his work using LLMs with his customers. Vishwas talks about focusing on specific data sets for building LLMs and how size matters - things are simple when the source data is small, but as it grows, you need more complex tools to be able to allow the LLM to perform. Lots of cautionary tales and ideas on how to get great results from these new automation tools!
How do we make our software greener? While at NDC in Porto, Carl and Richard talked to Lea Mladineo about her work in sustainable development. Lea talks about the impact of digital technology on the environment and how, with some thought and effort, we can make a real difference to that impact. The conversation explores how cloud computing can worsen the problem - or better! Software efficiency can reduce the number of cycles needed to complete a task, which is good for the environment and could save your organization money!
How can React Server Components make your website better? While at NDC in Porto, Carl and Richard talked to Aurora Walberg about her work with RSC and Next.js 13. Aurora discusses mixing server and client rendering - and server rendering within client rendering! While it's still early days, if you're looking for options in the React development space, RSC is worth a look!
How do you commercialize open-source products? While at NDC Porto, Carl and Richard talked to Victoria Melnikova about her work with Evil Martians, helping startups make open-source products and make a living at the same time. Victoria talks about various revenue strategies, but always with a mind to providing a "forever free" tier to be responsible to the open source community. Charging for pro-features, limiting the number of uses before a paid tier... there are several approaches to revenue that users can work with, as long as you are open and honest about how things work!
Are you ready for .NET Conf? Carl and Richard talk to Jeff Fritz about the latest version of .NET coming out - and the online event that celebrates it! Jeff talks about his top ten favorite sessions in the show, the ones you definitely don't want to miss. And if you have folks that are new to .NET, you want to check out the pre-event day that can help folks get started! See you online Nov 13-15!
What is observability engineering, and why do you need some? While at NDC in Porto, Carl and Richard recorded a .NET Rocks Live with Charity Majors, one of the founders of Honeycomb. Charity talked about her experiences trying to understand how complex applications worked and failed at scale over her years of experience at Facebook and other companies. Ultimately, those experiences led to a book and the creation of Honeycomb. Lots of fun insight from someone who has fought the good fight - and some great questions from the audience!
What's the latest with bUnit? Carl and Richard chat with Egil Hansen about his excellent testing library for Blazor. Egil digs into the ongoing improvements being made in Blazor and how bUnit can support those changes without having to rewrite tests - even .NET 8 shouldn't be a huge problem! The conversation also digs into the different sorts of open-source projects out there, including tooling like bUnit. Not all open source is created the same! Great thinking from an experienced builder of testing tools to make it easier to build reliable Blazor applications.
What is data sharding, and why do you need it? Carl and Richard talk to Oren Eini about his latest work on RavenDB, including the new data sharding feature. Oren talks about the power of sharding a database across multiple servers to improve performance on massive data sets. While a sharded database is typically in a single data center, it is possible to distribute the shards across multiple locations. The conversation explores the advantages and disadvantages of the different approaches, including that you might not need it today, but it's great to know it's there when you do!
How do you make Kubernetes easier to use? While at the Copenhagen Developers Festival, Carl and Richard talked to Annie Talvasto about her work with Kubernetes and the Cloud Native Compute Foundation. Annie talks about the easy and hard ways to work with Kubernetes and why you might choose either approach - it comes down to how much control you want. The CNCF supports many tools for Kubernetes in various stages of development to make your life easier to orchestrate containers at scale - when you need them, you'll really need them!
Azure and GitHub - better together? While at the Copenhagen Developer Festival, Carl and Richard talked to April Edwards for a special .NET Rocks Live. April talked about how Azure and GitHub work well together, discussing Azure DevOps and GitHub Actions on the CI/CD pipeline side and how other services can interact. Lots of laughter and great questions from the live audience!
Data Science and UX should be the best of friends! While at the Copenhagen Developer Festival, Carl and Richard talked to Grishma Jena about her work in data science at IBM - and working closely with the UX teams to understand how customers use software and the opportunities to improve it. Grishma talks about the quantitative side of analytics regarding application telemetry, including the ability to predict when a customer is about to abandon an application. The conversation also digs into using modern machine learning to analyze quantitative data, such as comments in surveys - could you sort that kind of data by sentiment or actionability? Improve your UX with data!
What can you do with a Particle Photon? While in an aluminum Airstream trailer in a thunderstorm at the Copenhagen Developers Festival, Carl and Richard talked to Colleen Lavin about her work with the Particle Photon IoT device - and its many maker possibilities! Colleen talks about making it easy to start building a device - but the struggle with so many choices to actually pick a project. The conversation also digs into making production versions of your device so that they are smaller, cheaper, and very reliable - it's a fun time to be a maker!
How about some in-process messaging with no dependencies? Carl and Richard chat with Jimmy Bogard about his work with MediatR, a simple mediator pattern implementation in .NET. Jimmy talks about how MediatR emerged from his work with customer applications having controllers and/or managers that slowly got bigger and more complicated... and how they became difficult to maintain. Using the mediator pattern to break down those blocks of code into more manageable chunks needed a bit of tooling that was cut and pasted from project-to-project until MediatR was born!
How can a large language model help your application? Carl and Richard talk to Brian MacKay about his work with large language models, including ChatGPT - and others! Brian talks about how LLMs continue to evolve and the limitations they have. But identifying language inside your applications can be powerful, and Brian talks through a few scenarios his company uses in production today. Work could you be taking advantage of today!
How much architectural ceremony is enough? Carl and Richard talk to Jeremy Miller about his minimal approach to architecture when building software, including his products Wolverine and Marten. Jeremy talks about how good tooling can simplify architecture, ultimately by writing less code - so that you are writing only the code that is unique to your customer needs.
How is Chocolatey evolving? Carl and Richard talk to Gary Ewan Park about the latest with the open-source Windows package management solution. Gary discusses some of the differences between the various package managers for Windows these days, including WinGet. Each product has its niche, and Chocolatey has done a good job of evolving into a broader product, including Chocolatey for Business, to allow a view of applications installed across all your machines - and being able to push updates out to them.
How's your architecture game? Carl and Richard talk to Thomas Betts about being a better architect. Thomas focuses on the key aspect - communication! An effective architect can talk to all the stakeholders in the language of the stakeholder, whether that's speaking business with business stakeholders, coding with developers, and understanding the needs of the security and operations folks. All those aspects (and more) go into an effective architecture and then come the changes as the implementation challenges happen. The conversation also digs into the importance of documentation to know why decisions were made and how to change them as you respond to changing needs and landscapes.
Large Language Models like GPT-4 are all the rage - how do we use them well? Carl and Richard talk to Amber McKenzie about the challenges and concerns around LLMs, especially regarding the data involved. Amber talks about the risks of creating products around LLMs while the technology is so young and constantly evolving, especially with how the general public reacts to conversational AI. Education is key, and constantly fact-checking - good advice for a lot of technology, but LLMs are making fact checking even more important!
Microservices or Monoliths? Carl and Richard talk to Layla Porter about choosing a middle ground between microservices and monoliths, with modular monoliths. Layla talks about the pushback from the community around microservices and the insistence that there is "one right way." Monoliths have their advantages until they are a problem - but that doesn't mean that re-architecting everything is the right way to go. Chipping off parts of the monolith into satellite modules strikes a balance of flexibility and scalability - and opens the door to accessing the power of bus architectures when needed!
Databases continue to evolve! Carl and Richard talk to Ted Neward about multi-model data stores - which, these days, are most databases! Ted talks about how SQL and NoSQL are not that different - it's only a query engine. But how do you store your data? Today multi-model databases store data with multiple storage engines, and so can store your data in the most appropriate form. There are lots of choices, and it's worth digging deeper into your existing data stores, as well as the new ones available!
What can we do to make testing easier? Carl and Richard talk to Dennis Doomen about Fluent Assertions, an open-source set of extension methods to help write better tests. Dennis talks about working on Fluent Assertions for over a decade and the great team of folks that have helped it grow. With tens of millions of downloads, you should check it out! The conversation also digs into how these types of open-source projects don't make money, even though they help many people. Could we fix that?
How do you scale a monolith? Carl and Richard talk to Derek Comartin about his blog posts and YouTube series around scaling a monolith. Derek talks about the tendency for folks to want to split a monolith into microservices without assessing if it will make a difference. There is no one right way! The conversation digs into different approaches to scaling - up, out, using caching, queuing, and more! There are many approaches to scaling your applications, and yes, microservices are an option, but there are many others!
Can you quit your job and work full-time on your open-source project? Carl and Richard talk to Shaun Walker about his recent move to focus on Oqtane, the open-source application framework and CMS he has been developing for the past few years. Shaun talks about recognizing when an open-source project has matured to the point that it is being held back by not also providing a commercial license. For some folks, a commercial license is not an option - they need it to be able to use the software within the company. Then comes the tricky part: Setting up a business, and balancing the needs of the open-source community with the commercial customers. It isn't easy, but it can be done!
How do you get your app running in Azure? Carl and Richard talk to Savannah Ostrowski about Azure Developer CLI (azd), an open-source tool to help developers using .NET, Javascript/Typescript, Python, Java, and more to get deployed into Azure. Savannah talks about staying high-level with azd commands, keeping the complexity of deployment pipelines in tools you already know how to use, like Bicep and Terraform. The conversation digs into the templating system to help assemble all the platforms and elements of an Azure deployment, depending on your application. There are a ton of options - check it out!
How can OpenAI help you program faster? Carl and Richard talk to Mark Miller about his experiments with OpenAI and CodeRush. Mark talks about the power of building agents to analyze code to write comments and tests - in parallel so that multiple agents can run simultaneously. Then the conversation turns to the potential of a voice interface as an effective way to work with Visual Studio - you were talking anyway!
What can OpenTelemetry do for you? While at Techorama in Belgium, Carl and Richard talked to Laïla Bougriâ about her experiences with the open-source library that can help give you more insight into the behavior of your applications. Laïla talks about being able to instrument your applications from top-to-bottom, regardless of platforms or development stacks. The conversation digs into the differences between logging, tracing, and telemetry - and how each aspect adds value to understand what your applications are doing, and how you can make them better!
When it comes to machine learning, there is no free lunch! While at Techorama in Antwerp, Carl and Richard talked to Dr. Jodie Burchell about her experiences working with machine learning models, including the large language models that drive tools like ChatGPT. Jodie starts with a great explanation of how these machine learning models are built - and there is a lot to it! This leads to a conversation about the limitations of those models and how they could be improved further. There's a lot of hype around LLMs right now - it will pass eventually, but in the meantime, be thoughtful of how you use these experimental technologies!
The power of .NET means PHP can run in the browser efficiently! Carl and Richard talk to Jakub Míšek about PeachPie using WASM. Jakub talks about how easy it was to deploy PeachPie, the .NET implementation of PHP, into WebAssembly, much like Blazor works. Then the tricky bit starts - PHP is a server-side technology, so many of the constructs are based on trips to a server. That doesn't mean there aren't solutions, but they need some thinking through. The question is, do we want to run WordPress in a browser?
What's an immutable architecture, and why do you want one? Carl and Richard talk to Michael Perry about his book The Art of Immutable Architecture and the power of historical models. Michael talks about different designs for immutability, the ability to always look back through data, to avoid conflict between resources, and the advantages of eventual consistency. As Michael says, you already use immutable architecture - look at Git and how you only add new files to the system, always able to get back to a previous state! The conversation dives into implementing architecture in a way that helps to show where immutability makes sense.
How do you do more with Entity Framework? Carl and Richard talk to Erik Ejlskov Jensen about his work contributing to Entity Framework and creating tools to make Entity Framework easier to use. Erik talks about how EF has continued to evolve, including some significant performance optimizations. The conversation also explores code-first vs. database-first - although Erik falls firmly into the schema-first mindset. There's more coming for Entity Framework; it's worth your time to get the most from it!
How do we support open-source projects? Carl and Richard talk to Joseph Finney about his ongoing efforts to build various projects in his spare time while still working a regular day job. Joe talks about the options to contribute to open-source, including submitting issues to help improve the project, code contributions where you add to the body of work, and financial options - contributing money directly to the creator. The conversation explores some of the existing tooling and more opportunities that could be created to make it easier for organizations to see their dependence on open-source libraries in a path that would make it easier to garner support for creators. The open-source world continues to evolve, and with some effort, we can make it more sustainable and valuable for everyone.
Web Testing Evolved! Carl and Richard talk to Ely Lucas about the latest version of the Cypress Testing Framework. Ely talks about three significant versions shipping in 2022 - starting with version 10, a complete UI overhaul. Following the semantic versioning standards, versions 11 and 12 had some breaking changes, primarily around component testing and other great new features. Today Cypress is effective at end-to-end testing, component testing, and with an open source plugin, API testing. The product is free and open-source, with a paid version offering enterprise-class cloud services for scaling testing up. Check it out!
How do you know the code you write is being used in production? Carl and Richard talk to Roni Dover about his work with Digma to help bring code utilization into your development tooling. Roni talks about the challenges of getting and using production telemetry - often, it never reaches developers. But with OpenTelemetry, there's a lot of data out there; the challenge is to present it helpfully - and that's what Digma is all about. It's still in beta, but sign up if you want to get involved!
Microsoft is making several Copilot products - should you? Carl and Richard talk to Phil Haack about the latest version of ab.bot, his customer success startup. Now Phil is calling ab.bot a Copilot for Customer Success since he incorporated OpenAI ChatGPT into it. The conversation tries to steer clear of the hysteria around modern large language models (although it is hard!) and more into the practical applications - using large language models to summarize long customer support conversations and find related conversations to current ones - perhaps identifying new high-priority features! The wave of large language models is in its early days, and with the new APIS available, it may be time to make them part of your projects too!
Do you know what your web app is up to? Carl and Richard talk to Sam Basu and Rosen Vladimirov about the latest versions of Fiddler. The original Fiddler for Windows is a free tool, but the Progress team has written all new products in the Fiddler space that are cross-platform and designed to work with different groups of people. Fiddler is for developers, first and foremost, letting you see the messages passing between the browser (or other clients) and the server in HTTP and HTTPS. With the new products, you can also connect to SignalR and gRPC data! Then there are tools for tech support and even embedding capabilities into your applications.
An MAUI version of Doom? Carl and Richard talk to Wesley Cabus and Nico Vermeir about their efforts to port the venerable game Doom to C# and .NET 6 with MAUI as the UI. Wesley did the base conversion of Doom over to .NET, while Nico focused on getting the UI working through MAUI. Converting code, graphics, music, and sound effects from the 1990s into modern solutions is challenging but fun! Primarily working on the PC, there's a concerted effort to get a version running on Android devices too - and they could use your help!
What if you didn't have to choose between client-side and server-side Blazor? Carl and Richard talk to Javier Nelson and Steve Sanderson about Blazor United in its early stages of development, providing flexibility at the web component level for client- and server-side rendering. At the simplest level, Blazor United offers server-side rendering when a site is first hit so that you can load the larger client-side components over time. But deeper is the idea that some elements on your web page benefit from being client-side, and some from being server-side, and why should you have to choose only one?
How can the cloud help developer velocity? Carl and Richard talk to Bryan Foster about the complexities of modern software development - and how different cloud technologies can help move faster and not be afraid to break a few things along the way! Bryan talks about using Azure Deployment Environments to make it easy for developers to stand up resources for their apps - and just as quickly shut them down when done. This leads to a broader conversation around the governance of CI/CD pipelines and the role of the cloud, even to the point of using DevBox to have an entirely virtualized development environment!
ChatGPT, BingAI, and Google Bard are the latest examples of large language model machine learning - are we at an inflection point in technology? Carl and Richard talk to Grant Barrett of A Way with Words about the power of these new technologies to solicit reactions from many folks, including many tech journalists. Grant talks about how language conveys a sense of intelligence even when there is none to be had and the problems created by those assumptions. It is still the early days for these chatbots - will they rapidly improve or fade into another AI winter?
What's next for C#? Carl and Richard talk to Mads Torgersen about what the team is working on for C# 12. Mads talks about how the language design team is organized to take ideas for C# and explore them, considering all aspects before implementation. The conversation digs into a few of the new features coming and some of the considerations, like breaking changes, that might be necessary to make a feature as good as possible. With C# nearly 25 years old, there is lots of legacy to deal with, but the future looks bright!
What does web front-end development look like in 2023? Carl and Richard chat with Amy Kapernick about her work helping companies build web front ends with a vast array of tools. Amy talks about how client frameworks continue to evolve, extending the so-called "big three" of Angular, Vue, and React to focus on different styles. The conversation also ranges over testing web apps, building pipelines for automated testing, accessibility, and more!
MAUI is out! What's next? While at Swetugg in Stockholm, Carl and Richard chatted with David Ortinau and Maddy Montaquila about getting MAUI shipped and seeing how the world is using it! The conversation digs into what typical developers are doing with MAUI and other platforms in the plans for future MAUI. David and Maddy talk about how Blazor Hybrid is creating a lot of excitement for folks, balancing the reach of web development with the power of native development - it's a great time to be building cross-platform software!
Why write functional C#? Carl and Richard talk to Simon Painter about what happens when you apply functional programming approaches to your C# code. Simon discusses how some functional programming aspects are best served in a functional language like F#, but you can write C# in a more functional style. The conversation focuses on minimizing side effects - writing your code so that you can see what it does and how it would behave when changed. Functional code tends to be more testable as well!
How is clean architecture evolving? Carl and Richard talk to Steve Smith about his efforts to build applications using clean architecture principles. The conversation starts with a comment from a listener about idealism around architecture - and a reminder that while there isn't one right way to do anything, using existing work, like clean architecture templates, makes it easier to do the right thing. Steve talks about the various elements that go into clean architectures and how they are often where you end up in development whether you start with a template or not - and how much of a pain it is to course-correct as the project gets larger. Sustainable software needs architecture, and clean architecture is one approach that works - check it out!
How do you create a sustainable open-source ecosystem? Carl and Richard talk to Sarah Novotny about how the open-source community continues to evolve. Sarah talks about how the vast majority of software utilizes open-source code and should be contributing to those projects. Those contributions can be financial or development resources, whatever makes more sense for the organization. The conversation also explores the nature of those contributions when the project has smaller and larger audiences, is purely for developer consumption, or the greater public. Open-source software is diverse, so the support for open-source software also needs to be diverse!
What is fusion development, and why do you want some? Carl and Richard talk to Vishwas Lele about his work with teams using the Microsoft Power Platform, including Power Apps and Power Automate. Vishwas talks about getting domain experts more involved in the development process - not just as advisors to the process but as co-creators. The role of professional developers is vital, making effective APIs and even custom-UX components for Power App development. The conversation also dives into the potential of Power Fx, an open-source language that is very much like Excel functions, providing programmability to domain experts - and perhaps a migration path for those company critical spreadsheets!
API Management has evolved! Carl and Richard talk to Tom Kerkhove about his new role working on Azure API Management. Tom talks about using Azure Arc to deploy the API Management service into your on-premises services. The conversation digs into more of the fundamentals around API management with rate limiting, authentication and authorization, billing, testing, and more. A good API can make your company money - executed poorly and it's a massive headache. Use the tools available to make it easier!
How do we learn about application security? Carl and Richard talk to Tanya Janca about her book 'Alice and Bob Learn Application Security.' Tanya talks about bringing positive conversations around security, enabling people to get work done while being secure. Software developers are now targets for the black hats because they often have super-user accounts and aren't following security practices as closely as others. Building secure software means developing it in a secure context - it takes practice, but is the best way to succeed in making secure software!
Ready for some space? Richard talks to Carl about all the incredible space-related stories in 2022. Starting with a record launch year - more flights to orbit than any year in history! Then the conversation digs into some cool missions around the solar system, including the Double Asteroid Redirection Test - we're learning how to protect our planet against asteroid impacts! Then on to space stations (there's more than one!) and, of course, the Moon - so many missions to the Moon! The biggest is Artemis, but there are plenty of others. And then there's the James Webb Space Telescope... what a fantastic year in space!
End of the year, time for a geek out on energy! Richard chats with Carl about the usual modern power generation sources, including solar and wind, and a breakthrough in the drilling method for geothermal energy. The conversation dives into small modular reactors (SMR) and the commitment in Canada to build the first SMR! Molten Salt Reactors have made some progress in 2022, but the extensive conversation is about fusion power. From the NIF announcement to Commonwealth Fusion and others - there's lots to talk about!
As of December 13, 2022, IdentityServer 4 is archived - now what? Carl and Richard talk to Dominick Baier and Brock Allen about the long, winding road of IdentityServer growing up to become a commercial product. Dom talks about the challenges of open source and building a sustainable model for an enterprise identity product. Ultimately, it resulted in a transformation from open-source to source-open - so what does that mean? Growth and sustainability!
Jeremy Miller is back with more open-source goodness in the form of the Wolverine .NET Command and Message Bus. Jeremy talks about developing the Marten database and reaching a point with event sourcing that led to Wolverine - building the infrastructure to work with a variety of queuing solutions to act as an intermediary, a message bus, and a command bus, as needed. The conversation also digs into the current state of open-source with his projects, and the evolution toward more sustainable open-source development - there is more to come!
Why should you have high-level design in your applications? Carl and Richard chat with Billy Hollis about the concepts around high-level design and how it can help make better software. Billy talks about how high-level design addresses more than UX concerns, expanding into architecture and business workflow to think more deeply about how we use software. And of course, Billy digs into various applications we all use (looking at you, Teams!) and talks about how high-level design could help deal with the challenges around those kinds of applications. Is it needed everywhere? No - but more is needed!
How do you secure your existing applications from the security exploits out there today? Carl and Richard talk to Joylynn Kirui about the challenges developers face in making secure applications. Joylynn talks about understanding the threat landscape and staying up to date on the CVEs that can represent a zero-day vulnerability to your application. There are a ton of tools to help make you aware of the potential risks, check out all the links in the show notes. And check out Joylynn's webinar on shifting application security left at https://aka.ms/DevSecOpsDNR
Why should .NET developers build Power Apps? Carl and Richard talk to April Dunnam about the latest in Microsoft's Power Platform and why .NET developers should get involved. April talks about the fusion development methodology, where domain experts use the Power Platform tools alongside .NET developers using Visual Studio to build line-of-business apps. There are many opportunities in the cycle of building Power Apps where your skills as a .NET developer can make the process go faster, more reliable, and with more features! Also, check out April's upcoming workshops on building Power Apps online at https://aka.ms/PowerDNR and at the DevIntersection conference in Las Vegas in December!
Are your APIs vulnerable to hacking? Carl and Richard talk to Dana Epp about how APIs have become the focus of black hats today. Dana talks about tooling you can use to look at your APIs the same way the hackers do, and find potential exploit paths for impersonating users, stealing data, and otherwise exploiting your system. There's an OWASP list specifically for API security - spend some time with it!
How do we make open source work for everyone? While at NDC in Oslo, Carl and Richard talked to David Whitney about his experiences working on open-source projects, and the challenges of making them sustainable. David talks about how many projects start with an individual making something for themselves, which then evolves into many people utilizing the project, but not contributing to it. And when companies depend on that software, the pressure on the creators gets serious - but without compensation. How do we make open source better? And how do the tech giants make the situation better or worse?
What can observability do for you? While at NDC in Oslo, Carl and Richard chatted with Alayshia Knighten about her work with honeycomb and helping people understand what's happening with their applications in production. Alayshia talks about instrumenting applications to provide insight into behavior in real-time - by leveraging existing tools to provide data and reporting. The conversation digs into how sysadmins and developers see applications differently, and how standard telemetry systems make it easier for everyone to be on the same page!