Loading…
Type: Education and Coaching clear filter
Wednesday, September 9
 

09:00 MDT

System Architecture and Design Using Modern C++
Wednesday September 9, 2026 09:00 - 15:00 MDT
** Separate registration is required for CppCon Academy Classes. **

Class Page

C++ developers confront daunting responsibilities: to be familiar with the guarantees and idioms for the C++ language; know data structures and algorithms with intrinsic benefits and constraints explored by Computer Science; and understand the application domain in which the practicing professional is expected to make implementation decisions that manage complexity and resolve edge-cases to effectively solve real-world problems.
And yet, none of these directly address the meta-patterns and system-wide concerns defined by “architecture”, nor the reasoned tradeoffs of “design” that divide responsibilities and ultimately define subsystems and APIs. Often, these higher-order concerns are relegated to senior and experienced engineers charged with balancing business constraints with technical tradeoffs to establish a Theory of Operation for individual systems, and for product families.
This course is intended for intermediate and advanced C++ engineers with experience making architectural and design decisions, or who are evolving into roles that demand proficiency in system-level analysis and decision making. We will focus on Modern C++ and deeply explore successes and failures in projects and systems from a variety of industries. And, we will discover that some crossroads are universal, despite the unique concerns that may present pragmatic challenges and cause technical implications to be ranked differently based on the specific domain to which the solution is applied.

Presenters
avatar for Charley Bay

Charley Bay

Charley Bay
Charley is a software developer with over three decades of experience using C++ in multiple regulated and high-performance fields focused on large-scale and distributed systems in performance-sensitive environments including time-sensitive processing of large data sets, performance... Read More →
Wednesday September 9, 2026 09:00 - 15:00 MDT
 
Thursday, September 10
 

09:00 MDT

System Architecture and Design Using Modern C++
Thursday September 10, 2026 09:00 - 15:00 MDT
** Separate registration is required for CppCon Academy Classes. **

Class Page

C++ developers confront daunting responsibilities: to be familiar with the guarantees and idioms for the C++ language; know data structures and algorithms with intrinsic benefits and constraints explored by Computer Science; and understand the application domain in which the practicing professional is expected to make implementation decisions that manage complexity and resolve edge-cases to effectively solve real-world problems.
And yet, none of these directly address the meta-patterns and system-wide concerns defined by “architecture”, nor the reasoned tradeoffs of “design” that divide responsibilities and ultimately define subsystems and APIs. Often, these higher-order concerns are relegated to senior and experienced engineers charged with balancing business constraints with technical tradeoffs to establish a Theory of Operation for individual systems, and for product families.
This course is intended for intermediate and advanced C++ engineers with experience making architectural and design decisions, or who are evolving into roles that demand proficiency in system-level analysis and decision making. We will focus on Modern C++ and deeply explore successes and failures in projects and systems from a variety of industries. And, we will discover that some crossroads are universal, despite the unique concerns that may present pragmatic challenges and cause technical implications to be ranked differently based on the specific domain to which the solution is applied.

Presenters
avatar for Charley Bay

Charley Bay

Charley Bay
Charley is a software developer with over three decades of experience using C++ in multiple regulated and high-performance fields focused on large-scale and distributed systems in performance-sensitive environments including time-sensitive processing of large data sets, performance... Read More →
Thursday September 10, 2026 09:00 - 15:00 MDT
 
Friday, September 11
 

09:00 MDT

System Architecture and Design Using Modern C++
Friday September 11, 2026 09:00 - 15:00 MDT
** Separate registration is required for CppCon Academy Classes. **

Class Page

C++ developers confront daunting responsibilities: to be familiar with the guarantees and idioms for the C++ language; know data structures and algorithms with intrinsic benefits and constraints explored by Computer Science; and understand the application domain in which the practicing professional is expected to make implementation decisions that manage complexity and resolve edge-cases to effectively solve real-world problems.
And yet, none of these directly address the meta-patterns and system-wide concerns defined by “architecture”, nor the reasoned tradeoffs of “design” that divide responsibilities and ultimately define subsystems and APIs. Often, these higher-order concerns are relegated to senior and experienced engineers charged with balancing business constraints with technical tradeoffs to establish a Theory of Operation for individual systems, and for product families.
This course is intended for intermediate and advanced C++ engineers with experience making architectural and design decisions, or who are evolving into roles that demand proficiency in system-level analysis and decision making. We will focus on Modern C++ and deeply explore successes and failures in projects and systems from a variety of industries. And, we will discover that some crossroads are universal, despite the unique concerns that may present pragmatic challenges and cause technical implications to be ranked differently based on the specific domain to which the solution is applied.

Presenters
avatar for Charley Bay

Charley Bay

Charley Bay
Charley is a software developer with over three decades of experience using C++ in multiple regulated and high-performance fields focused on large-scale and distributed systems in performance-sensitive environments including time-sensitive processing of large data sets, performance... Read More →
Friday September 11, 2026 09:00 - 15:00 MDT
 
Saturday, September 12
 

09:00 MDT

Advanced and Modern C++ Programming: The Tricky Parts
Saturday September 12, 2026 09:00 - 17:15 MDT
** Separate registration is required for CppCon Academy Classes. **

Class Page

Whenever I give C++ trainings I run into the same topics of “half knowledge” even for expreienced programmers. We use a lot of features, for which looking into details opens a deep level of surprises and unexpected behavior. Even strings and vectors cause surprises (e.g., to understand when and how memory is allocated). Most of the time, day-to-day programmingthis works fine without full understanding, but once you hit corner cases (and it starts with error messages) good knowledge about what really goes on is key.

This tutorial will discuss all the common “tricky fundamentals” of C++, which application programmers see and use day by day. We will motivate them, understand them, and see how they should be used in practice. As a result, you will understand C++ way better and advance to the next level of an experienced C++ programmer.

As a long-time member of the C++ standards committee and experienced trainer, Nicolai will teach the essence spiced with useful background information about key design decisions.
Presenters
avatar for Nicolai Josuttis

Nicolai Josuttis

Author and Teacher
I teach and teach and teach and teach C++. For centuries. Still learning this language. However in principle, C++ is no longer teachable...
Saturday September 12, 2026 09:00 - 17:15 MDT
Homestead 1

09:00 MDT

C++ Best Practices
Saturday September 12, 2026 09:00 - 17:15 MDT
** Separate registration is required for CppCon Academy Classes. **

Class Page

“C++ Best Practices” is designed to help programmers elevate the quality of their C++ code. This course is intended for developers who have a beginner to intermediate knowledge of C++. You will learn how to write programs that perform well by default, are easier to maintain, memory safe, and have better compile times. We will cover best practices for new features added in C++17/20/23 and how to use the tools available to maintain code quality. Come prepared to interact and discuss.
Presenters
avatar for Jason Turner

Jason Turner

Sole Proprietor, Jason Turner
Jason is host of the YouTube channel C++Weekly, co-host emeritus of the podcast CppCast, author of C++ Best Practices, and author of the first casual puzzle books designed to teach C++ fundamentals while having fun!
Saturday September 12, 2026 09:00 - 17:15 MDT
Willow Lake 3

09:00 MDT

Performance and Efficiency in C++ for Experts, Future Experts, and Everyone Else
Saturday September 12, 2026 09:00 - 17:15 MDT
** Separate registration is required for CppCon Academy Classes. **

Class Page

Your compiler is smart, but it is not a magician. It cannot fix a design that fights the hardware, nor can it optimize code that hides its intent. To achieve the peak performance C++ is capable of, you must master the deep interplay between the language, the compiler, and the physical machine. Most C++ developers know how to write code that is correct. Fewer know the actual cost of the abstractions they use. And only a small fraction understand how the compiler translates those abstractions into physical execution.

This class reveals the “secret life” of your application. We move beyond standard optimization advice to explore the mechanical sympathy required to squeeze every cycle out of modern systems. We will examine code from three perspectives: the hardware that executes it, the compiler that generates it, and the language rules that constrain it. We will demonstrate that performance is not an afterthought but a fundamental part of the design specification. You will learn how to validate that specification early—running “estimation benchmarks” on mock-ups to predict performance before writing a single line of production code.

We will unlock the specific behaviors that dictate speed across three critical layers:

  • The Hardware Reality: Moving beyond “cache friendly” to understand the physics of the memory hierarchy, pipeline hazards, and why data layout often matters more than instruction count.
  • The Compiler Partnership: How to read assembly to verify optimizations, how to structure code so the compiler can vectorize it, and understanding the critical (and often misunderstood) role of Undefined Behavior in generating efficient code.
  • Design for Performance: How to integrate performance constraints into your architecture from day one, using estimation techniques to distinguish feasible designs from dead ends.
Crucially, we will challenge the myth that efficient code must be unreadable. We will point out concrete examples of how modern design practices and clean coding styles often align perfectly with hardware requirements, allowing you to write software that is maintainable, robust, and ruthlessly efficient.

This class is about performance and efficiency, spanning the entire range from the fundamentals of the hardware to the peculiarities of compiler optimizations. You will learn, on practical examples extracted from real-life programs, how to measure, analyze, and improve the performance of your programs. But most importantly, you will learn how to understand why your programs, compilers, and hardware behave the way they do. Some of the material will be basic and fundamental, some cutting-edge and esoteric, and the rest somewhere in between. All explanations will be reinforced with hands-on exercises, which you get to do in the classroom and can explore later in detail if you want to learn more.
Presenters
avatar for Fedor Pikus

Fedor Pikus

Fellow, Siemens EDA
Fedor G Pikus is a Technical Fellow and the Director of the Advanced Projects Team in Siemens Digital Industries Software. His responsibilities include planning the long-term technical direction of Calibre products, directing and training the engineers who work on these products... Read More →
Saturday September 12, 2026 09:00 - 17:15 MDT
Willow Lake 4

09:00 MDT

Talking Tech
Saturday September 12, 2026 09:00 - 17:15 MDT
** Separate registration is required for CppCon Academy Classes. **

Class Page

A good technical talk needs a compelling narrative as much as it needs absorbing information. At best, it is a shared experience between speaker and audience sparking questions, and conversations that go on throughout the hallway track. When done well, a good talk becomes a great one and leaves everyone, including the speakers, with more: more understanding, more curiosity, more interest.

We can help you discover what makes a great technical story. We can show you how even small small tweaks to existing presentations can make a huge difference. Learn clarity, the best use of detail, slides that illustrate rather than distract and how to be truly comfortable on stage.

We will also go over where AI can play a role in helping develop a talk. Like good code, a good talk is never written with an LLM taking the lead. However, LLMs can be trained to ask questions, make suggestions and help wade through piles of material, freeing you to craft, think, and share experiences. Be aware that we come with the strong opinion that AI art is vastly overused and is often awful.
Presenters
SS

Sherry Sontag

Bloomberg
Saturday September 12, 2026 09:00 - 17:15 MDT
Willow Lake 5
 
Sunday, September 13
 

09:00 MDT

Advanced and Modern C++ Programming: The Tricky Parts
Sunday September 13, 2026 09:00 - 17:15 MDT
** Separate registration is required for CppCon Academy Classes. **

Class Page

Whenever I give C++ trainings I run into the same topics of “half knowledge” even for expreienced programmers. We use a lot of features, for which looking into details opens a deep level of surprises and unexpected behavior. Even strings and vectors cause surprises (e.g., to understand when and how memory is allocated). Most of the time, day-to-day programmingthis works fine without full understanding, but once you hit corner cases (and it starts with error messages) good knowledge about what really goes on is key.

This tutorial will discuss all the common “tricky fundamentals” of C++, which application programmers see and use day by day. We will motivate them, understand them, and see how they should be used in practice. As a result, you will understand C++ way better and advance to the next level of an experienced C++ programmer.

As a long-time member of the C++ standards committee and experienced trainer, Nicolai will teach the essence spiced with useful background information about key design decisions.
Presenters
avatar for Nicolai Josuttis

Nicolai Josuttis

Author and Teacher
I teach and teach and teach and teach C++. For centuries. Still learning this language. However in principle, C++ is no longer teachable...
Sunday September 13, 2026 09:00 - 17:15 MDT
Homestead 1

09:00 MDT

AI++ 101: Build a C++ Coding Agent from Scratch
Sunday September 13, 2026 09:00 - 17:15 MDT
** Separate registration is required for CppCon Academy Classes. **

Class Page

Remember writing a compiler in university? Not a real compiler, but something that handled a subset of a language and generated naive code. You’d never ship it. But decades later, you still understand how compilers work because you built one.

That’s what we’re doing here. In one intensive day, you will build a working AI coding agent in C++.
Not Claude Code. Not Cursor. A simple thing you fully understand, that talks to an LLM, defines tools, executes them, and runs the same agentic loop that powers every AI coding assistant on the market.

This workshop emerged from my own AI/C++ journey. I watched AI stumble through C++ like a freshman who skipped the first three weeks of class, until I discovered the problem wasn’t the models, it was me. The breakthrough came from understanding what’s actually happening under the hood.

In this workshop, you will write a fully functioning agent harness in C++. Like those university compilers, it will not be production ready, but will serve as a laboratory for learning how generative AI large language models can be used as C++ programmers.

By end of day, your agent will read code, write code, compile it, fix its own errors, and even modify its own source code to add new capabilities.

You won’t ship this agent. But you’ll understand what Claude Code and Cursor are actually doing. When they break, you’ll know why. When new tools emerge, you’ll evaluate them with comprehension instead of hype.

What You’ll Build:

A C++ program that talks to an LLM API
System prompts that shape model behavior
Tool definitions (read_file, write_file, run_command)
A working agentic loop
An agent capable of modifying its own source

What You’ll Understand:

Why the same model acts completely different with different prompts
What “tool calling” actually means (spoiler: you do all the work)
How context windows work and why you send the whole conversation every time
What “turns” are and how the conversation builds up
Why agents sometimes go off the rails and how to prevent it

Format: Lab-heavy. Students build; instructor guides. Starter code provided for API plumbing.
Presenters
avatar for Jody Hagins

Jody Hagins

Director, LSEG / MayStreet
Jody Hagins has been using C++ for the better part of four decades. He remains amazed at how much he does not know after all those years. He has spent most of that time designing and building systems in C++, for use in the high frequency trading space.


Sunday September 13, 2026 09:00 - 17:15 MDT
Homestead 2

09:00 MDT

C++ Best Practices
Sunday September 13, 2026 09:00 - 17:15 MDT
** Separate registration is required for CppCon Academy Classes. **

Class Page

“C++ Best Practices” is designed to help programmers elevate the quality of their C++ code. This course is intended for developers who have a beginner to intermediate knowledge of C++. You will learn how to write programs that perform well by default, are easier to maintain, memory safe, and have better compile times. We will cover best practices for new features added in C++17/20/23 and how to use the tools available to maintain code quality. Come prepared to interact and discuss.
Presenters
avatar for Jason Turner

Jason Turner

Sole Proprietor, Jason Turner
Jason is host of the YouTube channel C++Weekly, co-host emeritus of the podcast CppCast, author of C++ Best Practices, and author of the first casual puzzle books designed to teach C++ fundamentals while having fun!
Sunday September 13, 2026 09:00 - 17:15 MDT
Willow Lake 3

09:00 MDT

Performance and Efficiency in C++ for Experts, Future Experts, and Everyone Else
Sunday September 13, 2026 09:00 - 17:15 MDT
** Separate registration is required for CppCon Academy Classes. **

Class Page

Your compiler is smart, but it is not a magician. It cannot fix a design that fights the hardware, nor can it optimize code that hides its intent. To achieve the peak performance C++ is capable of, you must master the deep interplay between the language, the compiler, and the physical machine. Most C++ developers know how to write code that is correct. Fewer know the actual cost of the abstractions they use. And only a small fraction understand how the compiler translates those abstractions into physical execution.

This class reveals the “secret life” of your application. We move beyond standard optimization advice to explore the mechanical sympathy required to squeeze every cycle out of modern systems. We will examine code from three perspectives: the hardware that executes it, the compiler that generates it, and the language rules that constrain it. We will demonstrate that performance is not an afterthought but a fundamental part of the design specification. You will learn how to validate that specification early—running “estimation benchmarks” on mock-ups to predict performance before writing a single line of production code.

We will unlock the specific behaviors that dictate speed across three critical layers:

  • The Hardware Reality: Moving beyond “cache friendly” to understand the physics of the memory hierarchy, pipeline hazards, and why data layout often matters more than instruction count.
  • The Compiler Partnership: How to read assembly to verify optimizations, how to structure code so the compiler can vectorize it, and understanding the critical (and often misunderstood) role of Undefined Behavior in generating efficient code.
  • Design for Performance: How to integrate performance constraints into your architecture from day one, using estimation techniques to distinguish feasible designs from dead ends.
Crucially, we will challenge the myth that efficient code must be unreadable. We will point out concrete examples of how modern design practices and clean coding styles often align perfectly with hardware requirements, allowing you to write software that is maintainable, robust, and ruthlessly efficient.

This class is about performance and efficiency, spanning the entire range from the fundamentals of the hardware to the peculiarities of compiler optimizations. You will learn, on practical examples extracted from real-life programs, how to measure, analyze, and improve the performance of your programs. But most importantly, you will learn how to understand why your programs, compilers, and hardware behave the way they do. Some of the material will be basic and fundamental, some cutting-edge and esoteric, and the rest somewhere in between. All explanations will be reinforced with hands-on exercises, which you get to do in the classroom and can explore later in detail if you want to learn more.
Presenters
avatar for Fedor Pikus

Fedor Pikus

Fellow, Siemens EDA
Fedor G Pikus is a Technical Fellow and the Director of the Advanced Projects Team in Siemens Digital Industries Software. His responsibilities include planning the long-term technical direction of Calibre products, directing and training the engineers who work on these products... Read More →
Sunday September 13, 2026 09:00 - 17:15 MDT
Willow Lake 4

09:00 MDT

Talking Tech
Sunday September 13, 2026 09:00 - 17:15 MDT
** Separate registration is required for CppCon Academy Classes. **

Class Page

A good technical talk needs a compelling narrative as much as it needs absorbing information. At best, it is a shared experience between speaker and audience sparking questions, and conversations that go on throughout the hallway track. When done well, a good talk becomes a great one and leaves everyone, including the speakers, with more: more understanding, more curiosity, more interest.

We can help you discover what makes a great technical story. We can show you how even small small tweaks to existing presentations can make a huge difference. Learn clarity, the best use of detail, slides that illustrate rather than distract and how to be truly comfortable on stage.

We will also go over where AI can play a role in helping develop a talk. Like good code, a good talk is never written with an LLM taking the lead. However, LLMs can be trained to ask questions, make suggestions and help wade through piles of material, freeing you to craft, think, and share experiences. Be aware that we come with the strong opinion that AI art is vastly overused and is often awful.
Presenters
SS

Sherry Sontag

Bloomberg
Sunday September 13, 2026 09:00 - 17:15 MDT
Willow Lake 5
 
Saturday, September 19
 

09:00 MDT

AI++ 201: Building High Quality C++ Infrastructure with AI
Saturday September 19, 2026 09:00 - 17:15 MDT
** Separate registration is required for CppCon Academy Classes. **

Class Page

In a previous conference talk, I demonstrated building a complete OPRA feed handler without writing a single line of code by hand. Over the two days of this workshop, you’re going to do something even more difficult.

We’re building a matching engine. Not a toy, one that conforms to IEX specifications, with the kind of IPC infrastructure you’d actually deploy: lock-free queues, seqlock arrays, a sequencer pattern. The works. And you won’t write a single line of code yourself.

Every line comes from Claude Code. You prompt, you guide, you review, you course-correct, but your fingers don’t type C++. By the end, you’ll have a working matching engine and a visceral understanding of what AI can and can’t do with a serious C++ project.

We will first cover the foundations: how agentic loops work (condensed review), and why C++ is uniquely challenging for AI assistants. Compilation latency breaks the fast-iteration feedback loop. Header/source splits multiply context requirements. Templates generate error novels. The agent can write code that compiles but has undefined behavior. We’ll develop strategies for each problem, then begin building.

We will build the necessary pieces: lock-free queues, seqlock arrays, order books, matching logic, end-to-end integration. Everyone codes with their own Claude instance. Results will diverge, but that’s also a great opportunity for learning.

You don’t need previous experience with trading infrastructure.
We are choosing this project, because it is not a toy example, yet modern AI techniques are fully capable of building a functioning system that is at least on par with something that a team of junior engineers could build.

The goal is to learn how to use the AI tools, not write production-grade trading software.

By spending two days in an intense lab setting, attendees gain hands-on experience building real C++ software systems using generative artificial intelligence.
Presenters
avatar for Jody Hagins

Jody Hagins

Director, LSEG / MayStreet
Jody Hagins has been using C++ for the better part of four decades. He remains amazed at how much he does not know after all those years. He has spent most of that time designing and building systems in C++, for use in the high frequency trading space.


Saturday September 19, 2026 09:00 - 17:15 MDT
Red Rock 5

09:00 MDT

Function and Class Design with C++2x
Saturday September 19, 2026 09:00 - 17:15 MDT
** Separate registration is required for CppCon Academy Classes. **

Class Page

C++20 to C++26 brings a massive number of new language and library features – which can feel overwhelming to developers coming from older standards. This tutorial focuses on introducing those tools and how to use them in construction of functions and classes — which are the foundation of C++ programs. The tutorial is based, first and foremost, on the presenters experience building production large non-stop distributed systems with C++2x and also his work on C++ libraries, including work on the C++ standard library.

Participants will leave with a base knowledge of applying C++2x features to their designs and projects. In particular, concepts, reflection, contracts, modules, ranges and range algorithms, aggregate types, advanced error handling, and other features.
Presenters
avatar for Jeff Garland

Jeff Garland

CrystalClear Software
Jeff Garland has worked on many large-scale, distributed software projects over the past 30+ years. The systems span many different domains including telephone switching, industrial process control, satellite ground control, ip-based communications, and financial systems. He has written... Read More →
Saturday September 19, 2026 09:00 - 17:15 MDT
Red Rock 6

09:00 MDT

High-performance Concurrency in C++
Saturday September 19, 2026 09:00 - 17:15 MDT
** Separate registration is required for CppCon Academy Classes. **

Class Page

This course is designed to empower participants with the knowledge and skills required to unlock the full potential of high-performance concurrency in C++. By delving into fundamental principles and advanced techniques, attendees will gain a profound understanding of how to design, implement, and optimize concurrent programs effectively.

The class begins by addressing the essentials of performance and guiding participants on how to evaluate and measure the efficiency of concurrent programs. Emphasis is placed on the significance of performance measurement, providing insights into practical methodologies for assessing program efficiency. The exploration of threads and memory management goes beyond the basics, offering a nuanced understanding of threads in C++, multi-threaded memory access, and the critical aspects of avoiding data races.

Participants will learn effective strategies for synchronizing memory accesses and gain insights into memory models, equipping them to navigate complex memory-related challenges in concurrent programming. The attendees will learn the tools offered by the C++ language, including C++20 and coroutines. We will learn about thread schedulers, thread pools, and pipelines, as well as thread-safe data structures. This class equips participants with a comprehensive skill set to harness the full potential of C++ for high-performance concurrency, covering everything from fundamental principles to advanced tools and techniques.


Unlock the power of high-performance concurrency in C++ with this comprehensive, hands-on two-day course. Designed for developers looking to push their C++ applications to the next level, this class covers everything from fundamental principles to the latest, production-ready concurrency tools in C++20 and C++23cutting-edge concurrency tools introduced in C++20, with a strong focus on practical implementation and real-world challenges.

We begin by addressing the core question of performance: What makes a concurrent program efficient, and how can we measure it? Participants will explore key performance metrics and learn profiling and benchmarking techniques to ensure their code runs optimally in multi-threaded environments.

The class delves into the complexities of multi-threaded programming in modern C++, offering a deep dive into thread management, memory synchronization, and avoiding data races. Attendees will learn how to navigate C++’s memory model and apply best practices for thread-safe programming, ensuring robustness and correctness even in highly concurrent systems.

We will explore practical solutions for real-world concurrency problems using modern C++ features, including thread pools, pipelines, and coroutines, and dive into thread-safe data structures and lock-free algorithms. Through hands-on exercises, participants will build and optimize scalable systems that can handle high workloads efficiently.

By the end of this course, attendees will walk away with a comprehensive toolkit to write high-performance, concurrent C++ applications that are both fast and safe. Whether you’re building server-side systems, real-time applications, or tackling parallel processing challenges, this class will give you the skills to harness modern C++ concurrency like a pro.
Presenters
avatar for Fedor Pikus

Fedor Pikus

Fellow, Siemens EDA
Fedor G Pikus is a Technical Fellow and the Director of the Advanced Projects Team in Siemens Digital Industries Software. His responsibilities include planning the long-term technical direction of Calibre products, directing and training the engineers who work on these products... Read More →
Saturday September 19, 2026 09:00 - 17:15 MDT
Red Rock 7
 
Sunday, September 20
 

09:00 MDT

AI++ 201: Building High Quality C++ Infrastructure with AI
Sunday September 20, 2026 09:00 - 17:15 MDT
** Separate registration is required for CppCon Academy Classes. **

Class Page

In a previous conference talk, I demonstrated building a complete OPRA feed handler without writing a single line of code by hand. Over the two days of this workshop, you’re going to do something even more difficult.

We’re building a matching engine. Not a toy, one that conforms to IEX specifications, with the kind of IPC infrastructure you’d actually deploy: lock-free queues, seqlock arrays, a sequencer pattern. The works. And you won’t write a single line of code yourself.

Every line comes from Claude Code. You prompt, you guide, you review, you course-correct, but your fingers don’t type C++. By the end, you’ll have a working matching engine and a visceral understanding of what AI can and can’t do with a serious C++ project.

We will first cover the foundations: how agentic loops work (condensed review), and why C++ is uniquely challenging for AI assistants. Compilation latency breaks the fast-iteration feedback loop. Header/source splits multiply context requirements. Templates generate error novels. The agent can write code that compiles but has undefined behavior. We’ll develop strategies for each problem, then begin building.

We will build the necessary pieces: lock-free queues, seqlock arrays, order books, matching logic, end-to-end integration. Everyone codes with their own Claude instance. Results will diverge, but that’s also a great opportunity for learning.

You don’t need previous experience with trading infrastructure.
We are choosing this project, because it is not a toy example, yet modern AI techniques are fully capable of building a functioning system that is at least on par with something that a team of junior engineers could build.

The goal is to learn how to use the AI tools, not write production-grade trading software.

By spending two days in an intense lab setting, attendees gain hands-on experience building real C++ software systems using generative artificial intelligence.
Presenters
avatar for Jody Hagins

Jody Hagins

Director, LSEG / MayStreet
Jody Hagins has been using C++ for the better part of four decades. He remains amazed at how much he does not know after all those years. He has spent most of that time designing and building systems in C++, for use in the high frequency trading space.


Sunday September 20, 2026 09:00 - 17:15 MDT
Red Rock 5

09:00 MDT

Function and Class Design with C++2x
Sunday September 20, 2026 09:00 - 17:15 MDT
** Separate registration is required for CppCon Academy Classes. **

Class Page

C++20 to C++26 brings a massive number of new language and library features – which can feel overwhelming to developers coming from older standards. This tutorial focuses on introducing those tools and how to use them in construction of functions and classes — which are the foundation of C++ programs. The tutorial is based, first and foremost, on the presenters experience building production large non-stop distributed systems with C++2x and also his work on C++ libraries, including work on the C++ standard library.

Participants will leave with a base knowledge of applying C++2x features to their designs and projects. In particular, concepts, reflection, contracts, modules, ranges and range algorithms, aggregate types, advanced error handling, and other features.
Presenters
avatar for Jeff Garland

Jeff Garland

CrystalClear Software
Jeff Garland has worked on many large-scale, distributed software projects over the past 30+ years. The systems span many different domains including telephone switching, industrial process control, satellite ground control, ip-based communications, and financial systems. He has written... Read More →
Sunday September 20, 2026 09:00 - 17:15 MDT
Red Rock 6

09:00 MDT

High-performance Concurrency in C++
Sunday September 20, 2026 09:00 - 17:15 MDT
** Separate registration is required for CppCon Academy Classes. **

Class Page

This course is designed to empower participants with the knowledge and skills required to unlock the full potential of high-performance concurrency in C++. By delving into fundamental principles and advanced techniques, attendees will gain a profound understanding of how to design, implement, and optimize concurrent programs effectively.

The class begins by addressing the essentials of performance and guiding participants on how to evaluate and measure the efficiency of concurrent programs. Emphasis is placed on the significance of performance measurement, providing insights into practical methodologies for assessing program efficiency. The exploration of threads and memory management goes beyond the basics, offering a nuanced understanding of threads in C++, multi-threaded memory access, and the critical aspects of avoiding data races.

Participants will learn effective strategies for synchronizing memory accesses and gain insights into memory models, equipping them to navigate complex memory-related challenges in concurrent programming. The attendees will learn the tools offered by the C++ language, including C++20 and coroutines. We will learn about thread schedulers, thread pools, and pipelines, as well as thread-safe data structures. This class equips participants with a comprehensive skill set to harness the full potential of C++ for high-performance concurrency, covering everything from fundamental principles to advanced tools and techniques.


Unlock the power of high-performance concurrency in C++ with this comprehensive, hands-on two-day course. Designed for developers looking to push their C++ applications to the next level, this class covers everything from fundamental principles to the latest, production-ready concurrency tools in C++20 and C++23cutting-edge concurrency tools introduced in C++20, with a strong focus on practical implementation and real-world challenges.

We begin by addressing the core question of performance: What makes a concurrent program efficient, and how can we measure it? Participants will explore key performance metrics and learn profiling and benchmarking techniques to ensure their code runs optimally in multi-threaded environments.

The class delves into the complexities of multi-threaded programming in modern C++, offering a deep dive into thread management, memory synchronization, and avoiding data races. Attendees will learn how to navigate C++’s memory model and apply best practices for thread-safe programming, ensuring robustness and correctness even in highly concurrent systems.

We will explore practical solutions for real-world concurrency problems using modern C++ features, including thread pools, pipelines, and coroutines, and dive into thread-safe data structures and lock-free algorithms. Through hands-on exercises, participants will build and optimize scalable systems that can handle high workloads efficiently.

By the end of this course, attendees will walk away with a comprehensive toolkit to write high-performance, concurrent C++ applications that are both fast and safe. Whether you’re building server-side systems, real-time applications, or tackling parallel processing challenges, this class will give you the skills to harness modern C++ concurrency like a pro.
Presenters
avatar for Fedor Pikus

Fedor Pikus

Fellow, Siemens EDA
Fedor G Pikus is a Technical Fellow and the Director of the Advanced Projects Team in Siemens Digital Industries Software. His responsibilities include planning the long-term technical direction of Calibre products, directing and training the engineers who work on these products... Read More →
Sunday September 20, 2026 09:00 - 17:15 MDT
Red Rock 7
 
Monday, September 21
 

09:00 MDT

C++ Fundamentals You Wish You Had Known Earlier
Monday September 21, 2026 09:00 - 15:00 MDT
** Separate registration is required for CppCon Academy Classes. **

C++ is a complex programming language. When used correctly, it delivers the best possible performance. Unfortunately, it is often misused, which causes many problems.
However, it turns out that consciously using selected language features can make it relatively easy to produce high-quality software that delivers excellent runtime performance and is error-proof. This coding style is called Modern C++.
The material of this workshop is the first chapter of the trainer’s most successful and popular training called “Advanced Modern C++”. During the class, we will go through all the key features of the C++ language, discuss potential issues and pitfalls, and provide guidelines on how to use them correctly. This training discusses various topics ranging from identifiers that do not result in undefined behavior through vital language features like name lookup, overload resolution, one definition rule, and move semantics up to the design recommendations like Rule of Zero. Among others, we will see how we can provide a custom dynamic allocation strategy for our programs and how we should design and implement customization points for our engine.
If you are wondering if you should attend this class, maybe this short quiz will help you decide:. Those and many other questions will be addressed during the training.
What You Will Learn?
  • Emphasis on understanding the philosophy and mechanisms of C++ programming language and learning how to reuse this knowledge in one’s own code.
  • Particular focus on the usage of C++ templates in practical tasks.
  • Development of error-unfriendly code.
  • Selection of useful patterns and techniques that prove in a demanding production code.
Workshop Structure
  • 40% lecture
  • 30% discussion
  • 20%hands-on coding
  • 10% knowledge quiz
Environment
  • A laptop with a web browser and access to the Internet
  • All hands-on exercises will be implemented using Compiler Explorer

Presenters
avatar for Mateusz Pusz

Mateusz Pusz

C++ Trainer, Train IT
Mateusz Pusz is a C++ architect and voting member of the ISO C++ Committee (WG21), with 100% meeting attendance since 2017. As an active contributor to Library Evolution, he originated variable template template parameters (P2008, now part of C++26), co-authored heterogeneous lookup... Read More →
Monday September 21, 2026 09:00 - 15:00 MDT

09:00 MDT

C++23 in Practice: A Complete Introduction
Monday September 21, 2026 09:00 - 15:00 MDT
** Separate registration is required for CppCon Academy Classes. **

Class Page

C++23 is now fully available by major C++ compilers so that more and more projects and companies are using it. Therefore, it is time to look at the contents of C++23 (new features and significant extensions in both the language and the standard library).
This three-days training introduces and discusses all major language and library features of C++23. The goal is to be ready to use them in practice and benefit from their purpose and design in your day-to-day work.
Many features extend C++20 features and make them (more) usable in practice. For example, std::generator is the first interface class to deal easily with coroutines, so that C++23 introdcues a new paradigm to implement generators and state machines. For these topics, the basics of C++20 will be part of this training.
As usual for his trainings and books, Nicolai Josuttis will focus on both the design and the practical usability of the new features. Attendees will understand why we have them and how to use them right. As a long-term active member of the C++ Standard Commitee and well-known educator, the quality of this training will give you the best revenue for understanding, use, and avoiding the traps of C++23.
Presenters
avatar for Nicolai Josuttis

Nicolai Josuttis

Author and Teacher
I teach and teach and teach and teach C++. For centuries. Still learning this language. However in principle, C++ is no longer teachable...
Monday September 21, 2026 09:00 - 15:00 MDT
 
Tuesday, September 22
 

09:00 MDT

C++ Fundamentals You Wish You Had Known Earlier
Tuesday September 22, 2026 09:00 - 15:00 MDT
** Separate registration is required for CppCon Academy Classes. **

C++ is a complex programming language. When used correctly, it delivers the best possible performance. Unfortunately, it is often misused, which causes many problems.
However, it turns out that consciously using selected language features can make it relatively easy to produce high-quality software that delivers excellent runtime performance and is error-proof. This coding style is called Modern C++.
The material of this workshop is the first chapter of the trainer’s most successful and popular training called “Advanced Modern C++”. During the class, we will go through all the key features of the C++ language, discuss potential issues and pitfalls, and provide guidelines on how to use them correctly. This training discusses various topics ranging from identifiers that do not result in undefined behavior through vital language features like name lookup, overload resolution, one definition rule, and move semantics up to the design recommendations like Rule of Zero. Among others, we will see how we can provide a custom dynamic allocation strategy for our programs and how we should design and implement customization points for our engine.
If you are wondering if you should attend this class, maybe this short quiz will help you decide:. Those and many other questions will be addressed during the training.
What You Will Learn?
  • Emphasis on understanding the philosophy and mechanisms of C++ programming language and learning how to reuse this knowledge in one’s own code.
  • Particular focus on the usage of C++ templates in practical tasks.
  • Development of error-unfriendly code.
  • Selection of useful patterns and techniques that prove in a demanding production code.
Workshop Structure
  • 40% lecture
  • 30% discussion
  • 20%hands-on coding
  • 10% knowledge quiz
Environment
  • A laptop with a web browser and access to the Internet
  • All hands-on exercises will be implemented using Compiler Explorer

Presenters
avatar for Mateusz Pusz

Mateusz Pusz

C++ Trainer, Train IT
Mateusz Pusz is a C++ architect and voting member of the ISO C++ Committee (WG21), with 100% meeting attendance since 2017. As an active contributor to Library Evolution, he originated variable template template parameters (P2008, now part of C++26), co-authored heterogeneous lookup... Read More →
Tuesday September 22, 2026 09:00 - 15:00 MDT

09:00 MDT

C++23 in Practice: A Complete Introduction
Tuesday September 22, 2026 09:00 - 15:00 MDT
** Separate registration is required for CppCon Academy Classes. **

Class Page

C++23 is now fully available by major C++ compilers so that more and more projects and companies are using it. Therefore, it is time to look at the contents of C++23 (new features and significant extensions in both the language and the standard library).
This three-days training introduces and discusses all major language and library features of C++23. The goal is to be ready to use them in practice and benefit from their purpose and design in your day-to-day work.
Many features extend C++20 features and make them (more) usable in practice. For example, std::generator is the first interface class to deal easily with coroutines, so that C++23 introdcues a new paradigm to implement generators and state machines. For these topics, the basics of C++20 will be part of this training.
As usual for his trainings and books, Nicolai Josuttis will focus on both the design and the practical usability of the new features. Attendees will understand why we have them and how to use them right. As a long-term active member of the C++ Standard Commitee and well-known educator, the quality of this training will give you the best revenue for understanding, use, and avoiding the traps of C++23.
Presenters
avatar for Nicolai Josuttis

Nicolai Josuttis

Author and Teacher
I teach and teach and teach and teach C++. For centuries. Still learning this language. However in principle, C++ is no longer teachable...
Tuesday September 22, 2026 09:00 - 15:00 MDT
 
Wednesday, September 23
 

09:00 MDT

C++ Fundamentals You Wish You Had Known Earlier
Wednesday September 23, 2026 09:00 - 15:00 MDT
** Separate registration is required for CppCon Academy Classes. **

C++ is a complex programming language. When used correctly, it delivers the best possible performance. Unfortunately, it is often misused, which causes many problems.
However, it turns out that consciously using selected language features can make it relatively easy to produce high-quality software that delivers excellent runtime performance and is error-proof. This coding style is called Modern C++.
The material of this workshop is the first chapter of the trainer’s most successful and popular training called “Advanced Modern C++”. During the class, we will go through all the key features of the C++ language, discuss potential issues and pitfalls, and provide guidelines on how to use them correctly. This training discusses various topics ranging from identifiers that do not result in undefined behavior through vital language features like name lookup, overload resolution, one definition rule, and move semantics up to the design recommendations like Rule of Zero. Among others, we will see how we can provide a custom dynamic allocation strategy for our programs and how we should design and implement customization points for our engine.
If you are wondering if you should attend this class, maybe this short quiz will help you decide:. Those and many other questions will be addressed during the training.
What You Will Learn?
  • Emphasis on understanding the philosophy and mechanisms of C++ programming language and learning how to reuse this knowledge in one’s own code.
  • Particular focus on the usage of C++ templates in practical tasks.
  • Development of error-unfriendly code.
  • Selection of useful patterns and techniques that prove in a demanding production code.
Workshop Structure
  • 40% lecture
  • 30% discussion
  • 20%hands-on coding
  • 10% knowledge quiz
Environment
  • A laptop with a web browser and access to the Internet
  • All hands-on exercises will be implemented using Compiler Explorer

Presenters
avatar for Mateusz Pusz

Mateusz Pusz

C++ Trainer, Train IT
Mateusz Pusz is a C++ architect and voting member of the ISO C++ Committee (WG21), with 100% meeting attendance since 2017. As an active contributor to Library Evolution, he originated variable template template parameters (P2008, now part of C++26), co-authored heterogeneous lookup... Read More →
Wednesday September 23, 2026 09:00 - 15:00 MDT

09:00 MDT

C++23 in Practice: A Complete Introduction
Wednesday September 23, 2026 09:00 - 15:00 MDT
** Separate registration is required for CppCon Academy Classes. **

Class Page

C++23 is now fully available by major C++ compilers so that more and more projects and companies are using it. Therefore, it is time to look at the contents of C++23 (new features and significant extensions in both the language and the standard library).
This three-days training introduces and discusses all major language and library features of C++23. The goal is to be ready to use them in practice and benefit from their purpose and design in your day-to-day work.
Many features extend C++20 features and make them (more) usable in practice. For example, std::generator is the first interface class to deal easily with coroutines, so that C++23 introdcues a new paradigm to implement generators and state machines. For these topics, the basics of C++20 will be part of this training.
As usual for his trainings and books, Nicolai Josuttis will focus on both the design and the practical usability of the new features. Attendees will understand why we have them and how to use them right. As a long-term active member of the C++ Standard Commitee and well-known educator, the quality of this training will give you the best revenue for understanding, use, and avoiding the traps of C++23.
Presenters
avatar for Nicolai Josuttis

Nicolai Josuttis

Author and Teacher
I teach and teach and teach and teach C++. For centuries. Still learning this language. However in principle, C++ is no longer teachable...
Wednesday September 23, 2026 09:00 - 15:00 MDT
 
Saturday, September 26
 

09:00 MDT

Using C++ for Low-Latency Systems
Saturday September 26, 2026 09:00 - 17:00 MDT
** Separate registration is required for CppCon Academy Classes. **

Class Page

This course will focus on techniques programmers can use to get better, more predictable or more stable performance from systems with low-latency constraints. It is subdivided in sections that cover subsets of the subject matter; each section discusses C++ features that help achieving the section’s objectives, with emphasis on contemporary (C++20 and C++23) features wherever that makes sense.
This training emphasizes portable C++ code. We might on occasion examine platform-specific aspects of programming, but the intent is that participants will be able to use the ideas and techniques covered in this class regardless of their chosen platform.


Presenters
avatar for Patrice Roy

Patrice Roy

Professor, Université de Sherbrooke
Patrice Roy has been playing with C++, either professionally, for pleasure or (most of the time) both for over 30 years. After a few years doing R&D and working on military flight simulators, he moved on to academics and has been teaching computer science since 1998. Since 2005, he’s... Read More →
Saturday September 26, 2026 09:00 - 17:00 MDT
 
Sunday, September 27
 

09:00 MDT

Using C++ for Low-Latency Systems
Sunday September 27, 2026 09:00 - 17:00 MDT
** Separate registration is required for CppCon Academy Classes. **

Class Page

This course will focus on techniques programmers can use to get better, more predictable or more stable performance from systems with low-latency constraints. It is subdivided in sections that cover subsets of the subject matter; each section discusses C++ features that help achieving the section’s objectives, with emphasis on contemporary (C++20 and C++23) features wherever that makes sense.
This training emphasizes portable C++ code. We might on occasion examine platform-specific aspects of programming, but the intent is that participants will be able to use the ideas and techniques covered in this class regardless of their chosen platform.


Presenters
avatar for Patrice Roy

Patrice Roy

Professor, Université de Sherbrooke
Patrice Roy has been playing with C++, either professionally, for pleasure or (most of the time) both for over 30 years. After a few years doing R&D and working on military flight simulators, he moved on to academics and has been teaching computer science since 1998. Since 2005, he’s... Read More →
Sunday September 27, 2026 09:00 - 17:00 MDT
 
Share Modal

Share this link via

Or copy link

Filter sessions
Apply filters to sessions.