Speaker

Peter Ritchie

Peter Ritchie

Independent Consultant

Tempe, Arizona, United States

Actions

Peter Ritchie has been in the software industry for over 3 decades. Peter has spent most of his professional career consulting with clients specializing in distributed applications and agile software development. Peter is a book author, open-source author, international speaker, blogger, and former 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.

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

Peter has been Microsoft Certified, SAFe Certified, and SOA certified.

Area of Expertise

  • Information & Communications Technology

Topics

  • Software Architecture
  • Domain-Driven Design
  • Technology Transformation
  • Software Design
  • Design Patterns
  • Software Delivery
  • Quality Assurance
  • Continuous Improvement
  • CI/CD
  • Software Integration
  • Software Delivery Lifecycle

An Introduction to .NET Aspire

The latest release of .NET includes .NET Aspire. .NET Aspire is a framework from the Microsoft ASP.NET team that simplifies the development, observance, and delivery of distributed applications. Focused on cloud-native, .NET Aspire (currently in preview) supports cloud components, database components, containers, as well as observing, scaffolding, and deploying components automatically. The session will cover creation of a distributed system with a host orchestrator, a Web API and cached web front end. The features and benefits of Aspire will be detailed in the example distributed application.

Domain-Driven Design, Being Ontological

The patterns and practices of Domain-Driven design are very similar to creating an ontology. Ontologies deal with the nature of being. Domain-Driven Design in a way deals with the question “what does it mean to be a part of this domain?”.

This session compares and contrasts Domain-Driven Design and ontologies. It then answers, “How can taking an ontological view of a domain help in successfully gathering accurate needs and expectations of stakeholders to design a system with the domain in mind?” This session also discusses how to translate the information gathered from answering these questions into strategic plans, such as designs and architecture.

How being successful with ontological with domain-driven design, such as tactics and measure will also be covered.

Delivering with Azure DevOps Pipelines

Build pipelines, branch policies, stages, jobs, tasks, oh my! Azure Pipelines is a powerful technology that empowers teams to perform a variety of CI/CD actions.

Azure Pipelines (sometimes called "YAML Pipelines") are very powerful, but YAML can be unforgiving. Geared towards technologists new to but familiar with Azure Pipelines, this session details strategies and tactics for making the most of pipelines.

This session will describe how to clearly understand the desired results of CI/CD guided by the motivation of the solution and target infrastructure. Based on this understanding, strategies for choosing what goes in a pipeline, stage, or job will be detailed. Tactics on what individual pipelines are necessary and how to make the stages and jobs in each pipeline efficient and effective will round out the session. The session will include examples of common actions in CI/CD, and well-established best practices will be introduced and referenced throughout the session.

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.

Naming is hard, even with existing guidelines. Let's dig deeper to find out why and how to make it easier.

Architectural Mentoring

Technical mentoring can be tricky at the best of times. The subject of Architecture is fluid and hard to pin down, making mentoring people on the subject a challenge.

This session does not go deep on mentoring in general but outlines a couple of proven techniques to approach mentoring team members with varying experience with architecture. The session will also detail various topics involved and reasonable order of topics. In addition, defining what architecture is and what architecture applies to will also be detailed. In particular the relationship between quality attributes and a system's

Mentoring can often be part of a training objective; this session also details some means to evaluate the knowledge of mentees. In addition, architecture exercises are covered and how to guide mentees through exercises to gain architecture experience, as well as a means to evaluate mentees for guided mentoring.

KCDC 2022 Sessionize Event

August 2022 Kansas City, Missouri, United States

CodeStock 2020 Sessionize Event

April 2020 Knoxville, Tennessee, United States

Tech Con '19 Sessionize Event

October 2019 Detroit, Michigan, United States

Peter Ritchie

Independent Consultant

Tempe, Arizona, United States

Actions

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