Embedded Programming with modern C++

Program Overview

I’m happy to provide more details about my mentoring program, “Embedded Programming Modern C++”.

Level: Intermediate

Program Description

What are the challenges of embedded systems? Embedded systems are often critical systems that require high performance, have reduced resources, and run several tasks simultaneously. Let me teach you how to overcome these challenges with modern C++.

Each week, you should master a new station. To master a station, you have to invest about three hours. Therefore, you can integrate my program into your workday.

Features

  • 200 video lectures
  • 20 one-hour sessions
  • Plus 50 posts

Extras

  • Q&A LIVE sessions
  • All media is offline available
  • Instant access via E-Mail

Program structure

The mentoring program consists of 16 stations. For each station, you have to invest at least 3 hours per week. Therefore, you can integrate my program into your workday.

16 Stations

  1. Initialization
    • Initialization. do
    • Initialization of Class Members
  2. Type Deduction
    • auto  
    • decltype
    • Automatic Return Type
  3. enum, Pointers, Lambdas
    • Enumerations
    • Pointers
    • Lambdas
  4. Type Traits
    • static_assert
    • Introduction
    • Correctness
    • Optimization
  5. Literals
    • User-Defined
    • built_in
  6. constexpr
    • constexpr
  7. Associative Containers
    •  Introduction
    • Unordered Associative Containers
    • Ordered Associative Containers
  8. Templates
    • Introduction
    • Function Templates
    • Class Templates
  9. Templates
    • Template Parameters
    • Template Arguments
  10. Template Specialization
    • Introduction
    • Partial Template Specialization
    • Full Template Specialization
  11. Move Semantics
    • default and delete
    • Lvalue and Rvalue References
    • Copy versus Move Semantics
    • std::move
    • Move Semantics for User-Defined Types
    • Perfect Forwarding
  12. Memory
    • RAII
    • new
    • Placement new
    • delete
  13. Smart Pointers
    • Introduction
    • std::unique_ptr
    • std::shared_ptr
    • std::weak_ptr
    • Performance
  14. Threads
    • Introduction
    • Threads
    • Shared Data
    • Mutexes
    • Locks
  15. Threads
    • Thread-local
    • Thread-Safe Initialization
    • Condition Variables
  16. Tasks
    • Introduction
    • std:: async
    •  Promises and Futures

One Station Concept

Each mentoring program consists of 16 to 30 stations you have to master. A station is one week long, and you should invest about three hours/week. Therefore, you can integrate my program into your workday. Each station consists of theory, practice, and mentoring:

Theory

  • Pure theory: 10 slides (video)
  • Applied theory: 5 examples (video)
  • Additional: Posts and Training videos

Practice

  • Practical exercises (videos)
  • Sample solutions to the exercises (video)
  • Active C++ community in moderated forums

Mentoring

  • Each week: Live Q&A session based on Forum questions
  • One-to-one mentoring at the end of the mentoring program if requested

Sample Station

Try out Station 13 of my Mentoring Program “Embedded Programming with Modern C++”: Introduction, unique_ptr, shared_ptr, weak_ptr, performance of the Smart Pointer week.

Practice

Please click the button above to go to the LIVE view of my mentoring program.

Practice

Please click the button above to go to the LIVE view of my mentoring program.

Practice

Please click the button above to go to the LIVE view of my mentoring program.

Practice

Please click the button above to go to the LIVE view of my mentoring program.

Practice

Please click the button above to go to the LIVE view of my mentoring program.

The Ideal Mentee

First, you need a good knowledge of C++ and want to become fluent in patterns. If you don’t think you’re a good C++ programmer, you should first master my basic mentoring program Fundamenalts for C++ Professionals.

You have to invest at least three hours a week and can, therefore, integrate my program into your workday. In the ideal case, your company supports you with time and money.

Here are a few participant profiles I have in mind:

  • Professionals who want to master patterns
  • C++ developers who want to make their next career step
  • C++ developers interested in good software design

Mentee Membership and Community Membership

When you master your mentoring program, you can extend your Mentee Membership with a Community Membership.

Mentee Membership

  • Member of a mentoring program
  • Includes the Community Membership

Community Membership

  • Access to the previous mentoring program
  • You cannot participate in the Q&A sessions, but you can watch recorded Q&A sessions
  • Becomes a community member if requested
  • Community Membership is €150 (lifetime)

My other Mentoring Programs

Fundamentals for C++ Professionals

Level: Beginners

Design Patterns and Architectural Patterns with C++

Level: Intermediate

Concurrency with Modern C++

Level: Advanced