Kathleen Dollard
C# Connoisseur
Clinton, Connecticut, United States
Actions
Kathleen loves to code and loves to teach and talk about code. She’s written tons of articles, a book, and spoken at numerous conferences around the world. After 8 years on the .NET team, including as the .NET Languages PM guiding C#, F# and VB, Kathleen is focusing on speaking and teaching, about C#, .NET, code generation and life in tech. She's always ready to help developers take the next step in exploring the wonderful world we call code.
Links
Area of Expertise
Topics
Modern C# (2026 version)
The last few years have introduced many new features to C# that enhance your application by improving performance and better expressing your team’s intent. These features work together to create code that reduces ceremony to draw attention to important aspects of your code. In this talk you’ll watch code evolve into and learn how simple it can be to update your own code – or to write new code in an updated manner.
[Abstract is for a 60-75 minute talk, but the talk and abstract can be updated for different other lengths]
C# traps
C# is a wonderful language, but like all mature computer languages it carries secrets that can bite you if you don’t know what to look for. Some of these are due to design decisions favoring the way computers work that don’t align with how human think. Others are legacy features that were once the best approach, but have become outdated. This talk is a rapid survey of traps that could result in unexpected logic or degraded performance. Be sure to have your phone out to capture the summary slides to share with your team!
This talk can be adjusted to any length, just depends on how many traps we get to look at]
C# 14 and onward
C# 14 is a great release! It was released along with .NET 10, which has a Long Term Support (LTS) lifecycle. Since you need to move your .NET core assets .NET 10 within the next to stay I support, check out the improvements you can make in C# 14. (Don’t worry, several .NET Framework versions such as 4.8.1 will remain in support.) Extension members are the big feature, making it also a great time for a quick review of overload resolution rules and tricks you can use. You’ll also see a rapid fire review of other C# 14 features, including how the null conditional assignment cleans some ugly code you’ve got today, and file based apps make those little quick and dirty apps quicker to write. Closing out the talk you’ll hear about C# 15 and an update on discriminated unions.
[Abstract is for a 60-75 minute talk, but the talk and abstract can be updated for different other lengths]
Staying sane when writing Roslyn incremental source generators
Have you thought of writing a Roslyn source generator, and then found yourself getting stuck getting it off the ground? Read all the blogs, then the spec, then the blogs again and your head just wound up spinning? No wonder! As a monolith, you’re simultaneously balancing input source code, the very gnarly Roslyn API, and your output source code, along with testing, configuration, readability and other aspect of quality code. Starting with the big picture, Kathleen shows you how to break it up into manageable pieces, along with techniques to isolate overlapping ideas – like the code that contains the code that is being written. And all of this will be done with a focus on being a good and high performance citizen in the Roslyn ecosystem.
[This session requires 60-75 minutes and can be a half day workshop ]
Kindness in tech
At the end of the day, kindness and compassion matters in all human endeavors, because we are fundamentally emotional creatures, even when we do not want to be. Look at how you respond to something unexpected in your IDE– most of us feel annoyed, slighted, or even angry when the computer is not kind to us. We’ll explore what aspects of the applications you write might be eliciting negative feelings in your users. As important as that is, it’s also critical to extend kindness throughout the development process and your career. That doesn’t backing off what you know is right, it means accepting that you may be wrong, really listening to those around you, and treating everyone with decency and respect.
This is a keynote, preferably an opening keynote
Designing and implementing great CLIs
CLIs are ubiquitous – `git`, or `dotnet`, `az`, and so many more! Kathleen began the subtle redesign of the .NET CLI, led .NET’s CLI installation strategy `dotnet tool`, and was one of the driving forces behind the System.CommandLine NuGet library that Microsoft released in November. This talk starts with what CLI design elements and what makes a good CLI, along with a brief introduction to Posix. System.CommandLine will be used to implement the CLI, hopefully convincing you to find a library appropriate to your language to maintain consistent parsing across your ecosystem. You’ll leave ready to create a great CLI or update one you are already using.
This is a 60 -75 minute talk, although _either_ System.CommandLine or CLI design could be done in a shorter timeframe
Source Generation and wrapping APIs
As applications age, one of the challenges is often how to access it in a way that’s consistent with the rest of your code assets. You can expand access while still retaining the original surface area for existing apps. One way to do that is to generate a wrapping layer based on the APIs. One benefit of this approach is consistency across multiple wrapped APIs, whether via web API, CLI, messaging, or an alternate library. This talk explores where this might be appropriate and likely design challenges. You’ll also see implementation oof a medium complexity API. Along the way you’ll learn a bit about System.CommandLine and Roslyn source generation.
This is a 60-75 minute talk
Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.
Jump to top