My next mentoring program, "C++20: Get the Details", starts in July. Registration will open in June.

Here is more information about my third mentoring program.
C++20: Get the Details:
The mentoring program consists of 16 stations. You have to invest at least 3 hours per week for each one. This means the program takes four months, and you can integrate my program into your workday.
16 Stations
- Introduction
- History
- C++ Compiler Standard Support
- Preparation
- Concepts
- Motivation
- Usage
- Placeholders
- Abbreviated Function Templates
- Concepts
- Predefined Concepts
- Definition of Concepts
- Requires Expressions
- User-Defined Concepts
- An Evolution or a Revolution
- Comparison
- Equality Comparison
- The Three-Way Comparison Operator
- Safe Comparison of Integers
- Constness
- consteval
- constinit
- std::is_constant_evaluated
- constexpr Containers and Algorithms
- Further Core Language Improvements
- Designated Initialization
- Templates
- Lambdas
- The Ranges Library
- Ranges and Views
- Characteristics
- Range Adaptors
- Comparison of std and std::ranges Algorithms
- Modules
- Advantages
- Module Interface Unit and Module Implementation Unit
- Submodules and Module Partitions
- Guidelines
- std::span and New Container Functions
- std::span
- Unified Deletion of Elements
- Uniform Checking of Elements
- String: starts_with and ends_with
- Formatting Library
- Overview
- Format String
- User-Defined Types
- Calendar and Time Zones
- Basic Types
- Time of Day
- Calendar Dates
- Time Zones
- Standard Library Utilities
- Mathematical Constants
- Midpoint and Linear Interpolation
- Bit Manipulation
- std::source_location
- Coroutines
- Characteristics
- The Framework
- Awaitables and Awaiters
- The Workflows
- Atomics
- std::atomic_flag
- std::atomic
- std::atomic_ref
- Synchronization and Coordination
- Latches and Barriers
- Semaphores
- Synchronized Output Streams
- Cooperative Interruption
- std::jthread
- std::condition_variable_any
- std::stop_source, std::stop_token, and std::stop_callback
C++20 is my third mentoring program. Here is more information about this program, "C++20: Get the Details" and more information about my mentoring programs: modernescpp.org. The following ones are open or will open in the next two years.
Mentoring Programs

- October 2022: "Fundamentals for C++ Professionals" is open
- May 2023: "Design Patterns and Architectural Patterns with C++" is open
- July 2023: "C++20: Get the Details" will open (registration open in June)
- January 2023 - January 2025: The remaining mentoring programs are open for registration. I publish a new mentoring program each half a year. Here are the upcoming mentoring programs in the next two and a half years.
- Clean Code: Best Practices for Modern C++
- Generic Programming (Templates) with C++
- Concurrency with Modern C++
- HPC with Modern C++
All mentoring programs are based on my books, classes, presentations, and posts. The mentoring programs have three different competency levels.
Competency Levels
The competency levels of the mentoring programs are beginner, intermediate, and advanced.
- Beginner
- Fundamentals for C++ Professionals
- Intermediate
- Design Patterns and Architectural Patterns with C++
- Clean Code: Best Practices for Modern C++
- C++20: A Deep Insight
- Advanced
- Generic Programming (Templates) with C++
- Concurrency with Modern C++
- HPC with Modern C++
To master the intermediate or advanced mentoring programs, you must master the beginner mentoring program "Fundamentals for C++ Professionals" or any similar content. If you want to know more about the running mentoring programs "Fundamentals for C++ Professionals" or "Design Pattern and Architectural Pattern with C++", follow the links.
- I host my mentoring program on modernescpp.org.
- I'm happy to answer your question: This email address is being protected from spambots. You need JavaScript enabled to view it..
- If you want to stay informed, subscribe here: https://bit.ly/ModernesCppMentorings
Modern C++ Mentoring,

Read more...