Charlie Kindel on Terminal.Gui - Episode 146

Charlie Kindel on Terminal.Gui - Episode 146

This week, Jeffrey is joined by Charlie Kindel! Charlie is an American tech executive doing consulting and advising. Formerly, he has held roles with Control4, Amazon, and Microsoft. Much of his career has been spent focused on smart home products. Additionally, he is also the maintainer of Terminal Gui, which is a .NET 5 UI framework for console applications.

In this conversation, Charlie discusses the Terminal Gui and highlights some of the cases where it shines. If you're looking for a full user interface but you only want it to sip — rather than sap — system resources, the Terminal Gui may be the solution you're looking for! It's fun from a retro perspective as it allows people to go and explore the way UIs were back in the 80s and before.

Charlie shares how the Terminal Gui project got started, its current capabilities, the notable applications that use Terminal Gui, its constraints, dependencies, memory usage, potential future integration, and more! Don't miss out on learning about this lightweight UI framework.

Topics of Discussion:

[:14] About The Azure DevOps Podcast, Clear Measure, the new podcast Architect Tips, and Jeffrey's offer to speak at virtual user groups.

[1:24] About today's episode with Charlie Kindel

[1:48] Jeffrey welcomes Charlie Kindel to the podcast!

[2:04] Charlie shares some of his notable career highlights.

[4:28] What Jeffrey finds fascinating about Terminal Gui with modern .NET 5.0 applications.

[5:55] How the Terminal Gui project got started and its capabilities.

[7:35] Jeffrey highlights how lightweight Terminal Gui is.

[8:22] Are there any notable applications that use Terminal Gui right now? What is one of Charlie's favorites?

[10:09] What does the control model for Terminal Gui look like for those who want to create a composite control or a new type of control?

[12:11] Are there any limitations besides the layout? What types of controls can be made with Terminal Gui?

[13:46] What are the constraints with Terminal Gui?

[15:46] Is it expected to use a form base model similar to WinForms or WPF? Or more like model-view-controller where you split up the behavior and the layout? What's the intended approach?

[16:56] If someone is going to adopt Terminal Gui and use it for a particular command line EXE, what is the testing story (so that they know if the user interface is behaving properly)?

[17:50] If someone is going to be using Terminal Gui in their build, tests, and deployments, do they need to be aware of any dependencies (besides the library itself)?

[18:27] A word from Azure DevOps Podcast's sponsor: Clear Measure.

[18:58] What do the tests look like in Terminal Gui? What should developers be looking at if they want to write tests?

[20:25] With Terminal Gui, would you deploy as a regular .NET 5.0 assembly? Would most of the time you roll up all the libraries and do a single executable deployment?

[20:51] What are some of the future visions for Terminal Gui?

[22:15] Why you would want to use Terminal Gui if you already use WPF, Xamarin, MAUI, etc.

[23:19] Jeffrey shares one of his first experiences with using Terminal Gui and why he likes it.

[24:09] Has Terminal Gui been tested with really old Windows or constrained hardware?

[24:33] Are there any reports on the footprint of startup memory usage?

[25:03] Jeffrey and Charlie discuss memory measurements.

[26:51] Is tab ordering built into Terminal Gui?

[28:08] Charlie discusses the potential of future integration with MAUI.

[29:19] Charlie shouts out the other contributors on the Terminal Gui project.

[30:24] Where and how to check out Terminal Gui.

[30:50] How to start contributing to the project.

[31:17] Jeffrey thanks Charlie Kindel for joining the podcast!

Mentioned in this Episode:

Architect Tips — New video podcast!

Azure DevOps

Clear Measure (Sponsor)

.NET DevOps for Azure: A Developer's Guide to DevOps Architecture the Right Way, by Jeffrey Palermo — Available on Amazon!

bit.ly/dotnetdevopsebook — Click here to download the .NET DevOps for Azure ebook!

Jeffrey Palermo's Youtube

Jeffrey Palermo's Twitter Follow to stay informed about future events!

The Azure DevOps Podcast's Twitter: @AzureDevOpsShow

Terminal Gui source code

Microsoft PowerShell Graphical Tools

Out-ConsoleGridView (OCG)

Miguel de Icaza's 2019 blog post on Terminal Gui

Presentation from .NET Conf 2018

Video recording of Terminal Gui

Xamarin.Forms with console UI adapter

Selenium

Xamarin

MAUI

Want to Learn More?

Visit AzureDevOps.Show for show notes and additional episodes.

Jaksot(381)

Patrick Escarcega: Software Engineering Principles - Episode 341

Patrick Escarcega: Software Engineering Principles - Episode 341

Patrick Escarcega is the Chief Technology Officer (CTO) at Meserow Design, a company known for its excellence in developing and maintaining custom software solutions. His background is in software engineering and has been leading software teams for many years. His technical focus has been on Microsoft development and cloud technologies. Topics of Discussion: [3:30] Patrick recalls the moment he transitioned from individual software developer to leading teams, highlighting the importance of understanding how software adds business value beyond just code. [5:00] Patrick describes the joy he rediscovered in coding when starting his own company, emphasizing the delicate balance between hands-on coding and leadership responsibilities. [7:50] The head chef and food scientist analogy. [9:26] The importance of creating a safe environment, a "pit of success," so developers can naturally follow best practices without feeling constrained. [10:36] Why readable, maintainable code is crucial, especially for senior leaders whose time is spent reading code more than writing it. [13:27] Comparing software engineering creativity to building an engine from "invisible Lego bricks," emphasizes the hidden creativity involved in engineering solutions. [15:08] The importance of leaders giving developers space and freedom to craft innovative solutions, rather than overly prescribing methodologies. [17:00] Running integration tests. [20:41] Accessibility and WCAG compliance explained: Why accessibility should be an integral part of software development and testing workflows. [23:14] EqualWeb accessibility checker and Chrome browser extension. [25:02] Practical everyday use of AI in software development, especially GitHub Copilot, and why developers should embrace AI tools regularly to remain productive and competitive. [31:10] Patrick encourages developers to embrace AI and keep learning, emphasizing that continuous adaptation will keep careers vibrant over the next decade. Mentioned in this Episode: Clear Measure Way Architect Forum Software Engineer Forum Programming with Palermo — New Video Podcast! Email us at programming@palermo.net. Clear Measure, Inc. (Sponsor) .NET DevOps for Azure: A Developer's Guide to DevOps Architecture the Right Way, by Jeffrey Palermo Patrick Escarcega Meserow Design Engineering Practices for LLM Application Development Want to Learn More? Visit AzureDevOps.Show for show notes and additional episodes.

17 Maalis 32min

Daniel Roth: .NET 10 Preview 1 - Episode 340

Daniel Roth: .NET 10 Preview 1 - Episode 340

Daniel Roth is a Principal Product Manager on the ASP.NET team working on ASP.NET Core, Blazor, and other web features. He has previously worked on various parts of .NET, including System.Net, WCF, XAML, and ASP.NET. His passions include building frameworks for modern Web frameworks that are simple and easy to use. Topics of Discussion: [3:15] Daniel shares his journey from back-end services to front-end development and his role in making .NET open-source and cross-platform. [6:10] Blazor and its impact on development. [8:32] A few of the strengths we get with .NET. [9:24] .NET 9 and performance improvements. [12:45] .NET 10 Preview 1 and new features. [17:32] Architectural guidance for Blazor applications. [30:17] The importance of handling state persistence to avoid memory bloat and security issues. [32:32] Observability and telemetry in Blazor. [36:28] Is the nature of the UI web user interface changing as we integrate AI technology and large language models and agents? [37:12] Integration of AI and Generative AI in Blazor. [37:38] The new Microsoft Extensions AI library for interfacing with chat services in .NET applications. Mentioned in this Episode: Clear Measure Way Architect Forum Software Engineer Forum Programming with Palermo — New Video Podcast! Email us at programming@palermo.net. Clear Measure, Inc. (Sponsor) .NET DevOps for Azure: A Developer's Guide to DevOps Architecture the Right Way, by Jeffrey Palermo Ep 274 with Daniel Roth Daniel Roth LinkedIn What's New for ASP.NET Core Blazor in .NET9 Daniel Roth — Author in .NET Blog Performance Improvements in .NET9 .NET Preview 1 is now available! ASP.NET Core in .NET 10 Preview 1 — Release Notes ASP.NET Core Roadmap for .NET 10 #59443 Want to Learn More? Visit AzureDevOps.Show for show notes and additional episodes.

10 Maalis 40min

Dustin Campbell: C# 13 - Episode 339

Dustin Campbell: C# 13 - Episode 339

Dustin is a Principal Software Engineer at Microsoft. He works on enhancing .NET tooling and contributing to the design of the next version of C# as part of the language design team. Prior to his current role, he spent several years working as a program manager on Project Roslyn. He also contributed in a strong way to the Razor UI framework. He recently presented a session at .NET Conf 2024 on What's new in C# 13. Topics of Discussion: [4:04] Fun fact: Dustin has a jazz guitar performance degree! [3:39] The unique appeal of C#. [5:06] Evolution of C# and its features. [10:48] Impact of Async and Await on C#. [13:17] The compatibility of C# 13 with older .NET versions, specifically .NET 8. [15:04] How developers can leverage the latest C# features while still targeting older .NET frameworks, and the challenges associated with runtime support for new language capabilities. [17:04] Hacking the C# compiler. [17:28] The evolution of records from their initial introduction to the added features. [18:46] Records vs. Classes in C#. [22:51] AI's influence on developer productivity. [25:46] The future of AI developer tools. [33:26] The need for better support for testing with large language models and other AI-driven dependencies. Mentioned in this Episode: Clear Measure Way Architect Forum Software Engineer Forum Programming with Palermo — New Video Podcast! Email us at programming@palermo.net. Clear Measure, Inc. (Sponsor) .NET DevOps for Azure: A Developer's Guide to DevOps Architecture the Right Way, by Jeffrey Palermo The Five Pillars: Leadership For Effective Custom Software, by Jeffrey Palermo Jeffrey Palermo's Twitter — Follow to stay informed about future events! Dustin Campbell on LinkedIn .NET Conf 2024: What's New in C#13 Want to Learn More? Visit AzureDevOps.Show for show notes and additional episodes.

3 Maalis 38min

Scott Nichols: Azure AI Foundry - Episode 338

Scott Nichols: Azure AI Foundry - Episode 338

Scott Nichols is a Principal Cloud Solutions Architect at Microsoft. He works for the commercial enterprise division serving the high-tech division out of Silicon Valley. He is also the leader of the .NET and the Azure user groups in Boise, Idaho. He started his career in the IT profession in 1993 as a mainframe and web developer. Since then, he has served as a Lead Software Engineer/Solution Architect, a Software Development Engineering Manager, a Sr. Cloud Software Solution Architect, and a Sr. Enterprise Solution Architect. When not at the keyboard, he loves the outdoors hunting, camping, fishing, archery, and working in the yard. Topics of Discussion: [4:03] Generative AI's turning point. [5:52] Bridging the AI coding gap. [6:39] Scott explains the shift in project workloads to generative AI-based projects, both customer-facing and internal. [7:25] Networking companies using AI to analyze telemetry data and create new products. [8:49] Azure AI Foundry is a web portal that allows developers to spin up Azure Compute and access over 1800 models. [13:00] Although a "Cloud Guy," Scott values his on-prem hardware as a playground for learning and experimenting with AI tools. [15:04] The benefits of using open source or on-prem tools to start working with AI without incurring cloud costs right away. [15:40] The rapid pace of innovation. [20:41] An example of Khan Academy using AI to create an online tutor, requiring significant prompt engineering to ensure accurate responses. [27:12] AI agents monitoring AI agents. [27:59] AI's limitations and opportunities. [31:56] Testing strategies for AI-Integrated systems. [35:37] The future of AI and how it's a great time to be in AI. [39:35] Great advice for the next generation of developers and software engineers. Mentioned in this Episode: Clear Measure Way Architect Forum Software Engineer Forum Programming with Palermo — New Video Podcast! Email us at programming@palermo.net. Clear Measure, Inc. (Sponsor) .NET DevOps for Azure: A Developer's Guide to DevOps Architecture the Right Way, by Jeffrey Palermo The Five Pillars: Leadership For Effective Custom Software, by Jeffrey Palermo Jeffrey Palermo's Twitter — Follow to stay informed about future events! Ep 116 with Scott Nichols Scott Nichols LinkedIn Scott Nichols Twitter Want to Learn More? Visit AzureDevOps.Show for show notes and additional episodes.

24 Helmi 40min

Shaun Walker: Seven Years of Blazor - Episode 337

Shaun Walker: Seven Years of Blazor - Episode 337

Shaun Walker is the founder and CEO of Devessence, a global technology consultancy with a boutique approach. He's also the founder of the Oqtane and DotNetNuke web application frameworks, which have earned the recognition of being amongst the most pioneering and widely adopted open-source projects native to the Microsoft platform. He has over 30 years of professional experience in architecting and implementing enterprise software solutions for private and public organizations. Topics of Discussion: [4:38] While AI can be a useful tool, it won't replace the need for traditional programming. [8:32] The gap between mainstream AI messaging and the reality of digital transformation. [9:22] While AI is a significant advancement, it should be seen as just another tool in a developer's toolkit. [9:39] The history and evolution of Blazor. [13:31] The versatility of Blazor and its ability to adapt to various hosting models make it a powerful tool for different types of applications. [14:06] Challenges and best practices in Blazor development. [16:26] The decision to make Blazor official and its impact on the .NET ecosystem. [18:12] The evolution of Blazor Server vs. Blazor WebAssembly and why both are still relevant. [21:06] When to use Blazor Static, Blazor Server, or Blazor WebAssembly, based on project needs. [24:17] The tendency for technologists to be critics without actually using the technologies. [34:36] The advantages of Octane and why it streamlines Blazor development. [39:56] The TrailBlazor Conference. Mentioned in this Episode: Clear Measure Way Architect Forum Software Engineer Forum Programming with Palermo — New Video Podcast! Email us at programming@palermo.net. Clear Measure, Inc. (Sponsor) .NET DevOps for Azure: A Developer's Guide to DevOps Architecture the Right Way, by Jeffrey Palermo — Available on Amazon! Jeffrey Palermo's Twitter — Follow to stay informed about future events! Devessence Shaun on X DNN Software GitHub Oqtane Philosophy ErrorBoundary and Logging in Blazor Oqtane TrailBlazor Conference Want to Learn More? Visit AzureDevOps.Show for show notes and additional episodes.

17 Helmi 42min

Matt McCleary: Telemetry & Observability in .NET Aspire - Episode 336

Matt McCleary: Telemetry & Observability in .NET Aspire - Episode 336

Matt McCleary is a Senior Product Manager at Microsoft working on observability tools to empower developers to be successful. Matt started his career in engineering and has worked in tech for 10 years, the latest 8 at Microsoft. He's been on the Azure Monitor team for most of that time. His passion is listening to customers and finding ways to make the product better. In his spare time, he finds himself coaching his 8-year-old son's basketball team and playing in an adult men's basketball league. Topics of Discussion: [3:26] Matt recounts his early interest in engineering and a pivotal moment during a college tour, along with his transition from civil engineering to business intelligence consulting, which led him to telemetry. [6:29] The strategy around Azure Monitor. [10:04] The three pillars of logs, traces, and metrics. [15:02] Recording custom metrics. [17:29] What is a distributed trace? [24:08] The concept of a custom event. [27:29] Future plans for Azure Monitor. [31:04] Integration with .NET Aspire. [34:04] Guidance on the best practices for Azure Monitor. [36:40] Application insights resources. Mentioned in this Episode: Clear Measure Way Architect Forum Software Engineer Forum Programming with Palermo — New Video Podcast! Email us at programming@palermo.net. Clear Measure, Inc. (Sponsor) .NET DevOps for Azure: A Developer's Guide to DevOps Architecture the Right Way, by Jeffrey Palermo — Available on Amazon! Jeffrey Palermo's Twitter — Follow to stay informed about future events! Matthew McCleary LinkedIn Matt McCleary Twitter Matt McCleary Github Announcing Azure Monitor OpenTelemetry Distro Want to Learn More? Visit AzureDevOps.Show for show notes and additional episodes.

10 Helmi 40min

Chris Ayers: .NET Aspire and AI - Episode 335

Chris Ayers: .NET Aspire and AI - Episode 335

Chris Ayers is a Senior Site Reliability Engineer on Microsoft's AzRel Risk SRE team, drawing on years of experience in cloud architecture, software development, and DevOps practices. He's passionate about continuous improvement, driving reliability, and sharing industry best practices. Outside of work, Chris is a devoted father, technology enthusiast, and avid gamer. Connect with him online to explore insights into cloud operations, agile methodologies, and more. He also organizes DevOpsDays Tampa Bay. Topics of Discussion: [2:50] Chris Ayers's career journey and formative moments in site reliability engineering. [3:33] The importance of being open to learning and stepping outside your comfort zone. [8:53] Chris's talk on Aspire, Azure, and Open AI. [9:30] How Chris is improving Azure's reliability through internal innovation. [10:16] Benefits of Aspire: orchestration, integration, and abstraction for infrastructure. [12:29] AI extensions in Aspire: how they enable developers to work with different AI models like OpenAI and local models. [14:09] Using OpenTelemetry for seamless integration and monitoring in Azure. [18:38] Prompt engineering: crafting prompts as part of business logic. [20:50] Exploring agentic AI development and multi-agent chatbots. [21:05] AI use cases in healthcare and responsible AI principles. [29:22] Simplifying Azure resource management with Aspire and opinionated defaults. [32:35] Using Honeycomb and other tools for effective telemetry and logging. [33:39] Hugging Face and KAITO: enabling access to a marketplace of specialized AI models and Kubernetes AI integration. [34:10] Running Olama models locally: balancing scale, cost, and use cases. [39:38] AI as a tool to enhance productivity rather than replace people. Mentioned in this Episode: Clear Measure Way Architect Forum Software Engineer Forum Programming with Palermo — New Video Podcast! Email us at programming@palermo.net. Clear Measure, Inc. (Sponsor) .NET DevOps for Azure: A Developer's Guide to DevOps Architecture the Right Way, by Jeffrey Palermo — Available on Amazon! Jeffrey Palermo's Twitter — Follow to stay informed about future events! Chris Ayers Speaking Chris Ayers Speaker Profile Build with Aspire Want to Learn More? Visit AzureDevOps.Show for show notes and additional episodes.

3 Helmi 41min

Scott Ambler: The State of Agile - Episode 334

Scott Ambler: The State of Agile - Episode 334

Scott Ambler helps people and teams adopt new ways of working (WoW) and evolve their ways of thinking (WoT), particularly around data warehousing and data quality. He is the creator of the Agile Modeling (AM) (AgileModeling.com) method and Agile Data (AD) (AgileData.org) methods. With Mark Lines, he co-created PMI's Disciplined Agile (DA) toolkit. As a conference keynote speaker, he speaks about continuous data warehousing (DW)/business intelligence (BI), how to address enterprise data debt, how to succeed at corporate AI, and agile architecture. He has also (co-)authored several books, including Choose Your WoW!, An Executive's Guide to Disciplined Agile, Refactoring Databases, and Agile Modeling. For a full list of his books, visit Scottambler.com/my-books/. Topics of Discussion: [4:29] Scott talks about his career journey. [6:53] Scott's early involvement in Agile. [8:34] Needing to up our game in the Agile space. [8:55] Agile2025 Conference this summer in Denver, CO. [11:20] Challenges and evolution within the Agile community. [20:01] Are we going to have a new Agile gold rush? [21:47] Keeping an eye out for inappropriate processes. [25:38] How we can do better. [28:17] The Agile Manifesto. [35:03] Importance of database refactoring and continuous data operations. [36:46] What best practices does Scott recommend? Mentioned in this Episode: Clear Measure Way Architect Forum Software Engineer Forum Programming with Palermo — New Video Podcast! Email us at programming@palermo.net. Clear Measure, Inc. (Sponsor) .NET DevOps for Azure: A Developer's Guide to DevOps Architecture the Right Way, by Jeffrey Palermo — Available on Amazon! Jeffrey Palermo's Twitter — Follow to stay informed about future events! Scott Ambler Scott Ambler LinkedIn The Future of Agile Isn't Shit Want to Learn More? Visit AzureDevOps.Show for show notes and additional episodes.

27 Tammi 46min

Suosittua kategoriassa Politiikka ja uutiset

aikalisa
rss-ootsa-kuullut-tasta
tervo-halme
ootsa-kuullut-tasta-2
politiikan-puskaradio
otetaan-yhdet
rss-vaalirankkurit-podcast
rss-kuka-mina-olen
et-sa-noin-voi-sanoo-esittaa
rss-podme-livebox
aihe
the-ulkopolitist
rss-tasta-on-kyse-ivan-puopolo-verkkouutiset
rikosmyytit
rss-hyvaa-huomenta-bryssel
politbyroo
radio-antro
eevan-politiikkapodi-totuuksia-suomesta
rss-pykalien-takaa
rss-kaikki-uusiksi