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.

Episoder(398)

Raziel Tabib: GitOps - Episode 294

Raziel Tabib: GitOps - Episode 294

Raziel is the Senior Vice President of Codefresh at Octopus Deploy. He is an entrepreneur, technology enthusiast, and software developer at heart. He is the Founder of Codefresh and is passionate abou...

22 Apr 202441min

Glenn Condron: .NET Web Development - Episode 293

Glenn Condron: .NET Web Development - Episode 293

Glenn is a Principal Product Manager for the App Platform team within the Developer Division at Microsoft, focusing on .NET. Before joining Microsoft, Glenn was a developer in Australia where he worke...

15 Apr 202445min

Richard Hundhausen: Product Ownership - Episode 292

Richard Hundhausen: Product Ownership - Episode 292

Richard Hundhausen helps software organizations and teams deliver better products by understanding and leveraging Azure DevOps and Scrum. He is a Professional Scrum Trainer, Professional Scrum Develop...

8 Apr 202440min

Mads Torgersen: The Latest in C# - Episode 291

Mads Torgersen: The Latest in C# - Episode 291

Mads is the Lead Designer of the C# language and has been at Microsoft for 18 years. Prior to this, Mads was a professor and contributed to a language starting with J. He was previously on episode 164...

1 Apr 202452min

Mark Miller: Voice User Interface - Episode 290

Mark Miller: Voice User Interface - Episode 290

Mark Miller, is an eight-year C# MVP with strong expertise in decoupled design, plug-in architectures, and great user interfaces. He is the Chief Architect of the IDE Tools division at Developer Expre...

25 Mar 202454min

Richard Lander: Containerization and Linux - Episode 289

Richard Lander: Containerization and Linux - Episode 289

Richard Lander is a Principal Program Manager on the .NET team at Microsoft. He's been with Microsoft since 2000, and working on .NET since 2003! Currently, he's working on runtime features, docker co...

18 Mar 202454min

Rockford Lhotka: Philosophy on Architecture - Episode 288

Rockford Lhotka: Philosophy on Architecture - Episode 288

Rockford Lhotka is VP of Strategy at Xebia and Chief Software Architect at Marimer LLC. He is the creator of the open-source CSLA .NET development framework, the author of numerous books, and regularl...

11 Mar 202450min

Jared Parsons: Designing C# and Testing a Compiler - Episode 287

Jared Parsons: Designing C# and Testing a Compiler - Episode 287

Jared Parsons, the Principal Developer Lead on the C# Compiler Team. Everybody tuning in probably uses his code on a day-to-day basis! Jared started at Microsoft 20 years ago as a Developer; moved on ...

4 Mar 202435min

Populært innen Politikk og nyheter

giver-og-gjengen-vg
aftenpodden
aftenpodden-usa
forklart
stopp-verden
popradet
dine-penger-pengeradet
det-store-bildet
rss-gukild-johaug
nokon-ma-ga
lydartikler-fra-aftenposten
fotballpodden-2
hanna-de-heldige
aftenbla-bla
rss-ness
rss-espen-lee-usensurert
e24-podden
rss-dannet-uten-piano
rss-penger-polser-og-politikk
rss-utenrikskomiteen-med-bogen-og-grasvik