Headspring, Part of Accenture is a Titanium Sponsor of KCDC 2022

We’re so thrilled to be attending KCDC again this year as one of just a few top-level Titanium sponsors!

This year represents some major leaps forward for our team. If you haven’t heard, Headspring is now part of the Product and Platform Engineering Services group (a.k.a. PPES) at Accenture. Our team was chosen for our unique cloud engineering capabilities. With PPES, we’re working on even bigger projects, tackling bigger challenges, and making a massive impact across the globe.

We look forward to sharing our new and ongoing learnings with you, our dedicated dev community. And as always, we’ll have some cool activities and giveaways planned! So, look for the blue when you come to see us at our booth (and don’t forget to ask about our new career opportunities). Can’t wait to see you there!

Important Information

August  08 -10, 2022
9am – 5pm

Kansas City Convention Center
301 W 13th St #100, Kansas City, MO 64105

Meet our speakers

We’ve got quite the lineup of speakers planned for this year. Some familiar faces, some new. Learn more about their talks below and grab tickets.

Avatar

Garo Yeriazarian

Software Whisperer

Remix: a new Web Framework for the Edge

Running modern web applications doesn’t always require going to the big cloud providers. There are a lot of smaller vendors running global networks with sensible defaults (and even more sensible price points) to help you run Internet-scale applications without having to micromanage all the components.

Remix is a web framework that combines static site generation, a lightweight dynamic content engine (based on React and TSX), and a router. In this session, we’ll look at a semi-complicated Remix web application and discuss what makes Remix interesting (and frustrating) and how it compares to other frameworks. This session may entice you to look into Remix for your own next project, or decide that it’s not for you and save you the time and the effort. Either way, it’ll be a fun time!

See bio

Twitter LinkedIn

Bio

Born and raised in the ever-expanding Greater Houston Area, Garo has been messing with software for at least 29 years, writing it for money for about 18 years, talking about it for maybe 22 years, and loving every clock cycle of it. He has worked as *the* Software Whisperer for Baker Hughes, leading software teams, conducting design reviews, and coaching people on how to put the 0's and 1's in a close enough order to make things work. Currently, he is a Principal Consultant (and Software Whisperer) at Headspring, making silky smooth software for industrial companies, coaching junior developers on how not to cause major outages in their first weeks on the job, and bringing mirth and merriment everywhere he goes.

See talk

Avatar

Yogi Aradhye

Engineering Manager

Refactoring the architect’s role

Team autonomy, while powerful, comes with a great responsibility for the development teams and the organization in general. The need for a technical ear that hears as many designs as possible arises. Traditionally, that leads to architectural oversight. Then they gather a bunch of senior engineers and call them architects. Things start to get worse because nobody can really figure out what the right level of oversight is. The group gets viewed as an “Ivory tower” that’s always busy in meetings when needed. Now, they have moved smart engineers from coding to meetings, anarchy is brewing, and nobody is happy. What’s going on here? What can we do?

In this talk, we’ll take a look at how to break some traditional molds and modernize the architect’s role. I’ll take you through a journey to explore some principles, forged through practice from real-world projects. You’ll learn strategies for mentoring development teams, scaling processes, and maximizing efficiency. With the right structures in place, architects can guide teams into the “pit of success,” as Scott Guthrie likes to put it. Together, we’ll strike down the walls of the ivory tower and raise up a new group of evolutionary architects. We want to make sure architects are viewed as peers and not as 10xengineers.

See bio

Twitter LinkedIn

Bio

Yogi Aradhye has been writing code for well over a decade and has worked on many different technologies. His diverse work experience includes small startups to large enterprises such as DELL. Currently, he is leading projects at Headspring as a Principal Consultant, focusing on building advanced distributed systems. Over the past 20 months, he has been a lead architect for a financial services client. He sets patterns and guides multiple teams in a collaborative journey towards microservices. Yogi has also been a speaker at .NET User Group Code Camps in Hartford, Boston, Houston, and Austin. He has also presented at larger developer conferences such as Kansas City Developer Conference and NDC Oslo.

See talk

Avatar

Megan Baker

Delivery & Operations Senior Manager

Building Strong Project Teams

Managing a project when we trust our team members makes project management less stressful. But, why is it that we trust some people more than others…even when the quality of their work is equal? It’s all about relationships!

Learn tactics in this session that will help you strengthen relationships with your project team members by learning their communication styles. Leave this session with an understanding of why some teams work together smoothly, and how to aid the teams that aren't.

See bio

LinkedIn

Bio

Megan has spent 20+ years working as an IT professional. While she started her career as a systems analyst developing in COBOL, she is now focused on project management and building trusting client relationships. She has worked in most aspects of software development, including business analysis, quality assurance, and project management. Understanding how different teams work, and the psychology behind building successful teams is her passion.

See talk

Avatar

Peter Ritchie

Software Solution Technologist

Session #H: Naming Things

There are 2 hard problems in computer science: cache invalidation, naming things, and off-by-1 errors. This session is about naming things. In software, we need to name classes, methods, properties, libraries, solutions, etc. We also have to give names to variables, parameters, namespaces, interfaces, services, resources, etc. And most of the time, they can't conflict. Sometimes it's easy but sometimes it can be hard.

We'll do a quick review of some of the easy guidelines that avoid some (somewhat easy) decisions then look into the things that require names that involve a deeper understanding of context. What the contexts are, their granularity, and how that can alleviate naming issues will be covered. How the types of contexts and their motivation and good compartmentalization make for easier naming will be detailed. We'll leverage some English grammar rules to relegate naming to a code smell—something recognizable with proven solutions. And finally, time permitting, some techniques and ideas to relegate *naming is hard* to problems of the past will be outlined.

See bio

Twitter LinkedIn

Bio

Peter Ritchie has been in the software industry for 25 years. Before Quicken Loans, Peter operated a software consulting company specializing in distributed applications and agile software development. Peter is a book author, open-source author, international speaker, blogger, and Microsoft MVP in .NET Development Technologies.

Peter has spoken internationally on a variety of topics including unit test design and management, asynchronous programming, advanced .NET language features and syntax, concurrent and parallel programming and distributed programming. He’s author of Refactoring with Visual Studio 2010, Visual Studio 2010 Best Practices, and Practical Microsoft Visual Studio 2015. Peter has also been an advisory board member of Microsoft Patterns and Practice: CQRS Journey guidance on command and query responsibility segregation and Enterprise Library.

See talk

Avatar

Chris Gardner

Principal Consultant

Demystifying the .NET Runtime

While most .NET developers know that .NET is an interpreted language, have you ever thought about what that really means? If the language is compiled to an intermediate language (literally called "Microsoft Intermediate Language" or MSIL) and run on a VM, how have they added more features to the language without updating the interpreter?

This talk answers all these questions and more. We'll take a deep dive into the differences between the .NET Compiler and .NET Runtime. We'll see what's possible in the compiler, what the runtime can do, and how you can know what's happening where. You'll leave this session with a deeper appreciation of the .NET languages and a clearer sense of how your code really runs.

See bio

Twitter

Bio

Chris Gardner is a Principal Consultant for Headspring, part of Accenture, the Chairman of the DevSpace Technical Conference and a regular coder. Tortured by years of contracts that valued buzzwords over results, Chris has developed a true passion for finding solutions that fit the problem, not the technology of the week. Chris received his M.S in Computer Science, B.S. in Mathematics, and B.A. in Philosophy from the University of Alabama in Huntsville and is currently a Microsoft Certified Solutions Developer, Professional Developer, Information Technology Professional and Trainer.

See talk

Avatar

Brandon Pugh

Principal Consultant

Blazor best practices borrowed
from ReactJS

Blazor took a lot of design decisions from React and other frontend frameworks and as a stateful component-based UI framework there is quite a bit of experience that can be transferred from one to the other.

With any new technology there is going to be a learning period as we experiment and gain experience and learn from mistakes made. After having deployed production Blazor apps for two different clients, I realized I was able to avoid some costly mistakes and design decisions early on by leveraging my prior experience with React and other frontend frameworks. Now I want to pass that knowledge onto you. In this talk, I'll share some Blazor best practices as well as common pitfalls to avoid and lessons learned from over 7 years of working with stateful component-based frameworks.

See bio

Twitter

Bio

Brandon has been in love with the web his whole adult life and has been building professional web applications for over 12 years.

Being a consultant for Headspring for the last 7 years has given him the opportunity to work with a variety of technologies and help transform organizations across various industries. He has a passion for all things related to web, UI/UX, automation, and developer experience.

See talk

Avatar

Patrick McVeety-Mill

Engineering Manager

The 800-File Gorilla: Lessons from Reviewing a Very Big Pull Request

Code review, like many practices in software development, is best served “right-sized:” not so small it’s annoying, and not so big it’s daunting. You might even limit a pull request’s (PR) scope to a given feature, aligned with some user story. But what if the PR comes from outside your organization, so you couldn’t play a direct hand in how it was broken down? And what if it concerned something cross-cutting, something like a major framework upgrade that impacts an entire application?

In this session, we’ll outline a strategic approach to reviewing large, complex PRs in a manageable way. We’ll look at how to evaluate so many lines of code, effectively track updates, diplomatically provide feedback, and pragmatically select what must, should, or could be done (and by whom).

I’ll draw on my own recent experience reviewing a critical pull request from a community member that clocked in at almost 900 files. It took about a month to review and approve, and another month to address follow-up pieces. While it was a laborious and less-than-ideal process, it had to be done, so I sought the best path—and the one I found might make your life less painful too! We’ll examine what went well, what didn’t, and why we would prefer to go small any time we can.

See bio

Twitter LinkedIn

Bio

Patrick is an enthusiastic technologist that that values community, empathy, creating, self-understanding, and the earth. He's a consultant at Headspring, where he leads teams, manages people, and hosts podcasts in service of making great software and systems, on the web and in the cloud.

If he were a Latin phrase, it would be "positivum spiritus, utile iubilo" or "positive spirits, helpful shouting," but he's not, so most people refer to him as "Loud Patrick" or "Boogerbear."

See talk

Meet our speakers

We’ve got quite the lineup planned for this year. Some familiar faces, some new. Check out their talks below and grab tickets.

Avatar

Garo Yeriazarian

Software Whisperer

Remix: a new Web Framework for the Edge

Running modern web applications doesn’t always require going to the big cloud providers. There are a lot of smaller vendors running global networks with sensible defaults (and even more sensible price points) to help you run Internet-scale applications without having to micromanage all the components.

Remix is a web framework that combines static site generation, a lightweight dynamic content engine (based on React and TSX), and a router. In this session, we’ll look at a semi-complicated Remix web application and discuss what makes Remix interesting (and frustrating) and how it compares to other frameworks. This session may entice you to look into Remix for your own next project, or decide that it’s not for you and save you the time and the effort. Either way, it’ll be a fun time!

See bio

Twitter LinkedIn

Bio

Born and raised in the ever-expanding Greater Houston Area, Garo has been messing with software for at least 29 years, writing it for money for about 18 years, talking about it for maybe 22 years, and loving every clock cycle of it. He has worked as *the* Software Whisperer for Baker Hughes, leading software teams, conducting design reviews, and coaching people on how to put the 0's and 1's in a close enough order to make things work. Currently, he is a Principal Consultant (and Software Whisperer) at Headspring, making silky smooth software for industrial companies, coaching junior developers on how not to cause major outages in their first weeks on the job, and bringing mirth and merriment everywhere he goes.

See talk

Avatar

Yogi Aradhye

Engineering Manager

Refactoring the architect’s role

Team autonomy, while powerful, comes with a great responsibility for the development teams and the organization in general. The need for a technical ear that hears as many designs as possible arises. Traditionally, that leads to architectural oversight. Then they gather a bunch of senior engineers and call them architects. Things start to get worse because nobody can really figure out what the right level of oversight is. The group gets viewed as an “Ivory tower” that’s always busy in meetings when needed. Now, they have moved smart engineers from coding to meetings, anarchy is brewing, and nobody is happy. What’s going on here? What can we do?

In this talk, we’ll take a look at how to break some traditional molds and modernize the architect’s role. I’ll take you through a journey to explore some principles, forged through practice from real-world projects. You’ll learn strategies for mentoring development teams, scaling processes, and maximizing efficiency. With the right structures in place, architects can guide teams into the “pit of success,” as Scott Guthrie likes to put it. Together, we’ll strike down the walls of the ivory tower and raise up a new group of evolutionary architects. We want to make sure architects are viewed as peers and not as 10xengineers.

See bio

Twitter LinkedIn

Bio

Yogi Aradhye has been writing code for well over a decade and has worked on many different technologies. His diverse work experience includes small startups to large enterprises such as DELL. Currently, he is leading projects at Headspring as a Principal Consultant, focusing on building advanced distributed systems. Over the past 20 months, he has been a lead architect for a financial services client. He sets patterns and guides multiple teams in a collaborative journey towards microservices. Yogi has also been a speaker at .NET User Group Code Camps in Hartford, Boston, Houston, and Austin. He has also presented at larger developer conferences such as Kansas City Developer Conference and NDC Oslo.

See talk

Avatar

Megan Baker

Delivery & Operations Senior Manager

Building Strong Project Teams

Managing a project when we trust our team members makes project management less stressful. But, why is it that we trust some people more than others…even when the quality of their work is equal? It’s all about relationships!

Learn tactics in this session that will help you strengthen relationships with your project team members by learning their communication styles. Leave this session with an understanding of why some teams work together smoothly, and how to aid the teams that aren't.

See bio

LinkedIn

Bio

Megan has spent 20+ years working as an IT professional. While she started her career as a systems analyst developing in COBOL, she is now focused on project management and building trusting client relationships. She has worked in most aspects of software development, including business analysis, quality assurance, and project management. Understanding how different teams work, and the psychology behind building successful teams is her passion.

See talk

Avatar

Peter Ritchie

Software Solution Technologist

TALK

Session #H: Naming Things

There are 2 hard problems in computer science: cache invalidation, naming things, and off-by-1 errors. This session is about naming things. In software, we need to name classes, methods, properties, libraries, solutions, etc. We also have to give names to variables, parameters, namespaces, interfaces, services, resources, etc. And most of the time, they can't conflict. Sometimes it's easy but sometimes it can be hard.

We'll do a quick review of some of the easy guidelines that avoid some (somewhat easy) decisions then look into the things that require names that involve a deeper understanding of context. What the contexts are, their granularity, and how that can alleviate naming issues will be covered. How the types of contexts and their motivation and good compartmentalization make for easier naming will be detailed. We'll leverage some English grammar rules to relegate naming to a code smell—something recognizable with proven solutions. And finally, time permitting, some techniques and ideas to relegate *naming is hard* to problems of the past will be outlined.

See bio

Twitter LinkedIn

Bio

Peter Ritchie has been in the software industry for 25 years. Before Quicken Loans, Peter operated a software consulting company specializing in distributed applications and agile software development. Peter is a book author, open-source author, international speaker, blogger, and Microsoft MVP in .NET Development Technologies.

Peter has spoken internationally on a variety of topics including unit test design and management, asynchronous programming, advanced .NET language features and syntax, concurrent and parallel programming and distributed programming. He’s author of Refactoring with Visual Studio 2010, Visual Studio 2010 Best Practices, and Practical Microsoft Visual Studio 2015. Peter has also been an advisory board member of Microsoft Patterns and Practice: CQRS Journey guidance on command and query responsibility segregation and Enterprise Library.

See talk

Avatar

Chris Gardner

Principal Consultant

Demystifying the .NET Runtime

While most .NET developers know that .NET is an interpreted language, have you ever thought about what that really means? If the language is compiled to an intermediate language (literally called "Microsoft Intermediate Language" or MSIL) and run on a VM, how have they added more features to the language without updating the interpreter?

This talk answers all these questions and more. We'll take a deep dive into the differences between the .NET Compiler and .NET Runtime. We'll see what's possible in the compiler, what the runtime can do, and how you can know what's happening where. You'll leave this session with a deeper appreciation of the .NET languages and a clearer sense of how your code really runs.

See bio

Twitter

Bio

Chris Gardner is a Principal Consultant for Headspring, part of Accenture, the Chairman of the DevSpace Technical Conference and a regular coder. Tortured by years of contracts that valued buzzwords over results, Chris has developed a true passion for finding solutions that fit the problem, not the technology of the week. Chris received his M.S in Computer Science, B.S. in Mathematics, and B.A. in Philosophy from the University of Alabama in Huntsville and is currently a Microsoft Certified Solutions Developer, Professional Developer, Information Technology Professional and Trainer.

See talk

Avatar

Patrick McVeety-Mill

Engineering Manager

The 800-File Gorilla: Lessons from Reviewing a Very Big Pull Request

Code review, like many practices in software development, is best served “right-sized:” not so small it’s annoying, and not so big it’s daunting. You might even limit a pull request’s (PR) scope to a given feature, aligned with some user story. But what if the PR comes from outside your organization, so you couldn’t play a direct hand in how it was broken down? And what if it concerned something cross-cutting, something like a major framework upgrade that impacts an entire application?

In this session, we’ll outline a strategic approach to reviewing large, complex PRs in a manageable way. We’ll look at how to evaluate so many lines of code, effectively track updates, diplomatically provide feedback, and pragmatically select what must, should, or could be done (and by whom).

I’ll draw on my own recent experience reviewing a critical pull request from a community member that clocked in at almost 900 files. It took about a month to review and approve, and another month to address follow-up pieces. While it was a laborious and less-than-ideal process, it had to be done, so I sought the best path—and the one I found might make your life less painful too! We’ll examine what went well, what didn’t, and why we would prefer to go small any time we can.

See bio

Twitter LinkedIn

Bio

Patrick is an enthusiastic technologist that that values community, empathy, creating, self-understanding, and the earth. He's a consultant at Headspring, where he leads teams, manages people, and hosts podcasts in service of making great software and systems, on the web and in the cloud.

If he were a Latin phrase, it would be "positivum spiritus, utile iubilo" or "positive spirits, helpful shouting," but he's not, so most people refer to him as "Loud Patrick" or "Boogerbear."

See talk

Meet our speakers

We’ve got quite the lineup planned for this year. Some familiar faces, some new. Check out their talks below and grab tickets.

Avatar

Garo Yeriazarian

Software Whisperer

Remix: a new Web Framework for the Edge

Running modern web applications doesn’t always require going to the big cloud providers. There are a lot of smaller vendors running global networks with sensible defaults (and even more sensible price points) to help you run Internet-scale applications without having to micromanage all the components.

Remix is a web framework that combines static site generation, a lightweight dynamic content engine (based on React and TSX), and a router. In this session, we’ll look at a semi-complicated Remix web application and discuss what makes Remix interesting (and frustrating) and how it compares to other frameworks. This session may entice you to look into Remix for your own next project, or decide that it’s not for you and save you the time and the effort. Either way, it’ll be a fun time!

See bio

Twitter LinkedIn

Bio

Born and raised in the ever-expanding Greater Houston Area, Garo has been messing with software for at least 29 years, writing it for money for about 18 years, talking about it for maybe 22 years, and loving every clock cycle of it. He has worked as *the* Software Whisperer for Baker Hughes, leading software teams, conducting design reviews, and coaching people on how to put the 0's and 1's in a close enough order to make things work. Currently, he is a Principal Consultant (and Software Whisperer) at Headspring, making silky smooth software for industrial companies, coaching junior developers on how not to cause major outages in their first weeks on the job, and bringing mirth and merriment everywhere he goes.

See talk

Avatar

Yogi Aradhye

Engineering Manager

Refactoring the architect’s role

Team autonomy, while powerful, comes with a great responsibility for the development teams and the organization in general. The need for a technical ear that hears as many designs as possible arises. Traditionally, that leads to architectural oversight. Then they gather a bunch of senior engineers and call them architects. Things start to get worse because nobody can really figure out what the right level of oversight is. The group gets viewed as an “Ivory tower” that’s always busy in meetings when needed. Now, they have moved smart engineers from coding to meetings, anarchy is brewing, and nobody is happy. What’s going on here? What can we do?

In this talk, we’ll take a look at how to break some traditional molds and modernize the architect’s role. I’ll take you through a journey to explore some principles, forged through practice from real-world projects. You’ll learn strategies for mentoring development teams, scaling processes, and maximizing efficiency. With the right structures in place, architects can guide teams into the “pit of success,” as Scott Guthrie likes to put it. Together, we’ll strike down the walls of the ivory tower and raise up a new group of evolutionary architects. We want to make sure architects are viewed as peers and not as 10xengineers.

See bio

Twitter LinkedIn

Bio

Yogi Aradhye has been writing code for well over a decade and has worked on many different technologies. His diverse work experience includes small startups to large enterprises such as DELL. Currently, he is leading projects at Headspring as a Principal Consultant, focusing on building advanced distributed systems. Over the past 20 months, he has been a lead architect for a financial services client. He sets patterns and guides multiple teams in a collaborative journey towards microservices. Yogi has also been a speaker at .NET User Group Code Camps in Hartford, Boston, Houston, and Austin. He has also presented at larger developer conferences such as Kansas City Developer Conference and NDC Oslo.

See talk

Avatar

Megan Baker

Delivery & Operations Senior Manager

Building Strong Project Teams

Managing a project when we trust our team members makes project management less stressful. But, why is it that we trust some people more than others…even when the quality of their work is equal? It’s all about relationships!

Learn tactics in this session that will help you strengthen relationships with your project team members by learning their communication styles. Leave this session with an understanding of why some teams work together smoothly, and how to aid the teams that aren't.

See bio

LinkedIn

Bio

Megan has spent 20+ years working as an IT professional. While she started her career as a systems analyst developing in COBOL, she is now focused on project management and building trusting client relationships. She has worked in most aspects of software development, including business analysis, quality assurance, and project management. Understanding how different teams work, and the psychology behind building successful teams is her passion.

See talk

Avatar

Peter Ritchie

Software Solution Technologist

Session #H: Naming Things

There are 2 hard problems in computer science: cache invalidation, naming things, and off-by-1 errors. This session is about naming things. In software, we need to name classes, methods, properties, libraries, solutions, etc. We also have to give names to variables, parameters, namespaces, interfaces, services, resources, etc. And most of the time, they can't conflict. Sometimes it's easy but sometimes it can be hard.

We'll do a quick review of some of the easy guidelines that avoid some (somewhat easy) decisions then look into the things that require names that involve a deeper understanding of context. What the contexts are, their granularity, and how that can alleviate naming issues will be covered. How the types of contexts and their motivation and good compartmentalization make for easier naming will be detailed. We'll leverage some English grammar rules to relegate naming to a code smell—something recognizable with proven solutions. And finally, time permitting, some techniques and ideas to relegate *naming is hard* to problems of the past will be outlined.

See bio

Twitter LinkedIn

Bio

Peter Ritchie has been in the software industry for 25 years. Before Quicken Loans, Peter operated a software consulting company specializing in distributed applications and agile software development. Peter is a book author, open-source author, international speaker, blogger, and Microsoft MVP in .NET Development Technologies.

Peter has spoken internationally on a variety of topics including unit test design and management, asynchronous programming, advanced .NET language features and syntax, concurrent and parallel programming and distributed programming. He’s author of Refactoring with Visual Studio 2010, Visual Studio 2010 Best Practices, and Practical Microsoft Visual Studio 2015. Peter has also been an advisory board member of Microsoft Patterns and Practice: CQRS Journey guidance on command and query responsibility segregation and Enterprise Library.

See talk

Avatar

Chris Gardner

Principal Consultant

Demystifying the .NET Runtime

While most .NET developers know that .NET is an interpreted language, have you ever thought about what that really means? If the language is compiled to an intermediate language (literally called "Microsoft Intermediate Language" or MSIL) and run on a VM, how have they added more features to the language without updating the interpreter?

This talk answers all these questions and more. We'll take a deep dive into the differences between the .NET Compiler and .NET Runtime. We'll see what's possible in the compiler, what the runtime can do, and how you can know what's happening where. You'll leave this session with a deeper appreciation of the .NET languages and a clearer sense of how your code really runs.

See bio

Twitter

Bio

Chris Gardner is a Principal Consultant for Headspring, part of Accenture, the Chairman of the DevSpace Technical Conference and a regular coder. Tortured by years of contracts that valued buzzwords over results, Chris has developed a true passion for finding solutions that fit the problem, not the technology of the week. Chris received his M.S in Computer Science, B.S. in Mathematics, and B.A. in Philosophy from the University of Alabama in Huntsville and is currently a Microsoft Certified Solutions Developer, Professional Developer, Information Technology Professional and Trainer.

See talk

Avatar

Brandon Pugh

Principal Consultant

Blazor best practices borrowed from ReactJS

Blazor took a lot of design decisions from React and other frontend frameworks and as a stateful component-based UI framework there is quite a bit of experience that can be transferred from one to the other.

With any new technology there is going to be a learning period as we experiment and gain experience and learn from mistakes made. After having deployed production Blazor apps for two different clients, I realized I was able to avoid some costly mistakes and design decisions early on by leveraging my prior experience with React and other frontend frameworks. Now I want to pass that knowledge onto you. In this talk, I'll share some Blazor best practices as well as common pitfalls to avoid and lessons learned from over 7 years of working with stateful component-based frameworks.

See bio

Twitter

Bio

Brandon has been in love with the web his whole adult life and has been building professional web applications for over 12 years.

Being a consultant for Headspring for the last 7 years has given him the opportunity to work with a variety of technologies and help transform organizations across various industries. He has a passion for all things related to web, UI/UX, automation, and developer experience.

See talk

Avatar

Patrick McVeety-Mill

Engineering Manager

The 800-File Gorilla: Lessons from Reviewing a Very Big Pull Request

Code review, like many practices in software development, is best served “right-sized:” not so small it’s annoying, and not so big it’s daunting. You might even limit a pull request’s (PR) scope to a given feature, aligned with some user story. But what if the PR comes from outside your organization, so you couldn’t play a direct hand in how it was broken down? And what if it concerned something cross-cutting, something like a major framework upgrade that impacts an entire application?

In this session, we’ll outline a strategic approach to reviewing large, complex PRs in a manageable way. We’ll look at how to evaluate so many lines of code, effectively track updates, diplomatically provide feedback, and pragmatically select what must, should, or could be done (and by whom).

I’ll draw on my own recent experience reviewing a critical pull request from a community member that clocked in at almost 900 files. It took about a month to review and approve, and another month to address follow-up pieces. While it was a laborious and less-than-ideal process, it had to be done, so I sought the best path—and the one I found might make your life less painful too! We’ll examine what went well, what didn’t, and why we would prefer to go small any time we can.

See bio

Twitter LinkedIn

Bio

Patrick is an enthusiastic technologist that that values community, empathy, creating, self-understanding, and the earth. He's a consultant at Headspring, where he leads teams, manages people, and hosts podcasts in service of making great software and systems, on the web and in the cloud.

If he were a Latin phrase, it would be "positivum spiritus, utile iubilo" or "positive spirits, helpful shouting," but he's not, so most people refer to him as "Loud Patrick" or "Boogerbear."

See talk

Interested in these talks? Join us at KCDC 2022!