Tuesday

No Sessions

Wednesday

1:00 PM

Mastering TDD in Legacy Code

Presented by: Brendan Enrick, Steve Smith
Time: Wednesday 1:00 PM - 5:00 PM

In this hands-on workshop, you’ll learn to effectively use the principles and practices of increasing the reliability and maintainability of your code through testing and pair programming. You’ll sharpen your skills working with your peers on programming exercises designed to instill good...

Room: Salon ATrack: Software QualityTags: Code QualityFormat: PreCompilerLevel: Intermediate

Thursday

8:00 AM

Software Test Automation ‚Äčand System Design

Presented by: Kate Jordan
Time: Thursday 8:00 AM - 9:00 AM

In this session I'll share with you one of the most valuable lessons that I've learned as a software engineer. From what I've seen it's not something that colleges or courses have nearly enough emphasis on for the impact that it has. Both on your skills, and the health of the systems you work...

Room: Indigo BayTrack: Software QualityTags: Programming Principles, System Design, Code QualityFormat: General SessionLevel: Intermediate
9:15 AM

Black Box Techniques for Unit Tests

Presented by: Jenna Charlton
Time: Thursday 9:15 AM - 10:15 AM

One of the greatest strengths of modern development is the ease of unit testing for many languages and frameworks. Obviously, you’re testing your code–but are you thoroughly testing it? Are you testing the right things? Is there more you could be testing? Enter black box testing techniques....

Room: Salon HTrack: Software QualityTags: Programming Principles, Code Quality, QA TestingFormat: General SessionLevel: Intermediate
10:30 AM

Async/Await from the Ground Up

Presented by: Stephen Cleary
Time: Thursday 10:30 AM - 11:30 AM

An async refresher course for developers who use async and await but want to really understand what's going on. This session is a "re-introduction" to async and await. It covers what the keywords mean and - just as importantly - what they *don't* mean. We'll be covering What You Need To Know,...

Room: CypressTrack: Programming PrinciplesTags: .NET, C#, Code QualityFormat: General SessionLevel: Intermediate

Isn't it time to ditch code coverage? Focus on high value tests instead

Presented by: Steve Odell
Time: Thursday 10:30 AM - 11:30 AM

As engineers, it can be difficult to use metrics to measure the value of what we do. One metric that typically falls short is code coverage because it can’t measure how WELL our application has been tested, rather, it focuses how MUCH has been tested. What if we ditched this traditional metric and...

Room: NileTrack: Software QualityTags: Automation, Code Quality, QA TestingFormat: General SessionLevel: Intermediate

Friday

8:30 AM

Projectional Code Editors: Past, Present, and Future

Presented by: Jonathan Arnett
Time: Friday 8:30 AM - 9:30 AM

Have you ever felt that your humble text editor could be—should be—so much more? After all, the software we're writing is much more than text! Programming languages mandate rigid structures for textual code, for instance that (in some languages) the conditional for an "if" must be in...

Room: Salon ETrack: Programming PrinciplesTags: UI/UX, Code QualityFormat: General SessionLevel: Intermediate
9:45 AM

Imposters! faking endpoints over-the-wire

Presented by: Bob Crowley
Time: Friday 9:45 AM - 10:45 AM

Faking remote services can be very useful. Maybe you need to build against a service that isn't created yet, mock micro service dependencies, test against an API that only has a production instance or validate a large number of data scenarios that would be difficult to achieve with a "real"...

Room: NileTrack: Software QualityTags: Backend, Code Quality, QA TestingFormat: General SessionLevel: Intermediate

Clean Architecture with ASP.NET Core 8

Presented by: Steve Smith
Time: Friday 9:45 AM - 10:45 AM

Clean Architecture is a very popular approach for DDD and Microservices, and for good reason. It's not a new approach, and went by other names in the past (e.g. Onion, Hexagonal, Ports-and-Adapters). One of the main benefits of the approach is its focus on business logic and its reduction in...

Room: OrangeTrack: ArchitectureTags: .NET, C#, Backend, Object Oriented Programming, Programming Principles, Architecture, System Design, Code QualityFormat: General SessionLevel: Intermediate