Building a Web Component Library

Presented by: Burton Smith

Web components have been around for a long time (since HTML 5 became a thing), but there hasn’t been a lot of attention given to them until recently. Now, tech organizations worldwide are adopting them and finding tremendous efficiency in creating framework-agnostic reusable components to build...

Tags: Javascript, Front End, CSS, UI/UX, Code QualityFormat: PreCompilerLevel: Introductory and overview

Designing Effective Unit Tests for React

Presented by: Bob Fornal

React has great tools for Unit Testing component. This doesn’t mean testing is easy. There are still a lot of questions you have to figure out for yourself: How many component tests should you write vs end-to-end tests or lower-level unit tests? How can you test a certain line of code that is...

Tags: React, Front End, Code QualityFormat: PreCompilerLevel: Introductory and overview

Mastering TDD in Legacy Code

Presented by: Brendan Enrick, Steve Smith

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...

Tags: Code QualityFormat: PreCompilerLevel: Intermediate

Software Test Automation ‚Äčand System Design

Presented by: Kate Jordan

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 in. ...

Tags: Programming Principles, System Design, Code QualityFormat: General SessionLevel: Intermediate

Black Box Techniques for Unit Tests

Presented by: Jenna Charlton

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? ...

Tags: Programming Principles, Code Quality, QA TestingFormat: General SessionLevel: Intermediate

Async/Await from the Ground Up

Presented by: Stephen Cleary

An async refresher course for developers who use async and await but want to really understand what's going on. ...

Tags: .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

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...

Tags: Automation, Code Quality, QA TestingFormat: General SessionLevel: Intermediate

You’re Doing Exceptions Wrong

Presented by: Matt Burke

Exceptions are powerful and valuable, but we frequently misuse them and destabilize our applications. We fear users seeing an error message, so we swallow the exception, creating troubleshooting nightmares down the road. We fail to check inputs and throw them at all, letting garbage into our...

Tags: Backend, Object Oriented Programming, Code QualityFormat: General SessionLevel: Introductory and overview

Prime (re)Factoring

Presented by: Steve Smith

You've probably heard of refactoring, but did you know the term originates from the process of factoring programming code? In mathematics, factoring is used to pull out factors of numbers through division, and importantly prime numbers have factors of only themselves and the identity constant, 1. ...

Tags: .NET, C#, Object Oriented Programming, Programming Principles, Code QualityFormat: General SessionLevel: Introductory and overview

self.clone();//Passing On Your Passion

Presented by: Barry Tarlton

When you've written your last line of code, what will be your legacy? Will your applications live on forever in Production or at least until AI takes over? Will your Github repos be archived and immortalized? Will there be patterns or tools named after you? For most of us, there probably won't...

Tags: Career Development, Soft Skills, Code QualityFormat: General SessionLevel: Introductory and overview

Out of Control: How to Rescue a Struggling Software Project

Presented by: Cory House

We were drowning in bugs. We had countless partially implemented features. We had no tests, few types, no CI, no error handling, and we couldn't demo our work reliably. Developers kept copying anti-patterns in our code. Our software was out of control. ...

Tags: Architecture, System Design, Code QualityFormat: General SessionLevel: Introductory and overview

Writing Secure APIs - A Look at the OWASP 2023 API Top 10 List

Presented by: Darylynn Ross

OWASP published a new API top 10 list in July of 2023. There are some old favorites hanging around (I'm looking at you Authentication) and some new comers like Server Side Request Forgery and Unrestricted Access to Sensitive Business Flows. This session will cover the new top 10 list and take a...

Tags: Programming Principles, Security, Code QualityFormat: General SessionLevel: Introductory and overview

Projectional Code Editors: Past, Present, and Future

Presented by: Jonathan Arnett

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...

Tags: UI/UX, Code QualityFormat: General SessionLevel: Intermediate

Testing Mayhem on the Basic Side

Presented by: Jeanette Kalb

Did you ever wonder how a QA managed to find something you didn’t on that last feature card? Hint, it’s not magic, but there is a lot of mayhem. Your quality professionals need your help to help them test better. This talk will provide insight as to what your QA person goes through when deciding...

Tags: Programming Principles, Code Quality, QA TestingFormat: General SessionLevel: Introductory and overview

Imposters! faking endpoints over-the-wire

Presented by: Bob Crowley

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"...

Tags: Backend, Code Quality, QA TestingFormat: General SessionLevel: Intermediate

Clean Architecture with ASP.NET Core 8

Presented by: Steve Smith

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...

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

You Are the Pilot: Getting Better with Code Gen AI Tools

Presented by: Sean Wedig

You might have asked yourself - "Self, what's all this hubub about AI tools for programmers? Am I going to lose my job?" and you might have answered, "I don't know, self. I haven't even really played with any AI code generation tools. There are so many tools, I wouldn't even know where to...

Tags: Velocity, Machine Learning, Code QualityFormat: General SessionLevel: Introductory and overview

Testing Enterprise Software Rewrites

Presented by: Umang Nahata

Most enterprises have legacy code that needs to be rewritten to keep pace with industry standards, new technologies, and modern infrastructures. The primary purpose of a software rewrite is to ensure functional compatibility before retiring the current system. However, replacing large, complex,...

Tags: Backend, Code Quality, QA TestingFormat: General SessionLevel: Introductory and overview