My Mentoring Program "Fundamentals for C++ Professionals"?

My Mentoring Program "Fundamentals for C++ Professionals"

I'm happy to provide you with more details about my mentoring program, "Fundamentals for C++ Professionals".?

My General Idea

My general idea of the mentoring program is straightforward. I will teach you what you should know about modern C++. Modern C++ includes the core language and the library based on C++17 in 28 stations. Each week, I publish a new station. To master a station, you have to invest about three hours. Therefore, you can integrate my program into your workday.

After my general idea, I want to give you more details about my mentoring.

Title

  • Fundamentals for C++ Professionals (Become a C++ Professional in Nine Months)

Stations

Here are all 28 stations. Therefore, you know what you get:

  1. Introduction
  2. Literals
  3. Types: enumerations, pointer, references, and casts
  4. Types: type deduction with auto and decltype
  5. Values: initialization, conversion, const, and constexpr
  6. Values: move semantics and perfect forwarding
  7. Memory
  8. Functions
  9. Classes: attributes and constructors
  10. Classes: initialization, destructors, and member functions
  11. Classes: default, and delete, operator overloading, explicit, access rights, friends, and structs
  12. Inheritance: abstract base classes, access rights, constructors, base class initializers
  13. Inheritance: destructor, virtuality, override, and final, and multiple inheritances
  14. Templates: functions and classes
  15. Templates: parameters and arguments
  16. Template Specialization
  17. Type Traits
  18. Smart Pointers
  19. STL: General Ideas (containers, algorithms, iterators, callables, range-based)
  20. STL: Common Interface of the Containers
  21. STL: sequential containers and associative containers
  22. STL: algorithms
  23. Strings including string views
  24. Regular Expressions
  25. In- and Output
  26. Threads: creation, data sharing, mutexes, and locks
  27. Threads: thread-local data, thread-safe initialization, condition variables
  28. Tasks

One Station

I publish on each Friday a new station (content). But I have more valuable content for you if you like.

One station contains theory, practice, and mentoring.

  • Theory
  • Pure theory with approx. ten slides (video)
  • Applied theory with approx. five examples (video)
  • Practice
  • Explain the exercises (video)
  • Explain the sample solutions to the exercises (video)
  • Mentoring
  • Live Q&A session on each Friday of each week, in which I address questions about the week's topic; I record this session.
  • E-mail queries by participants; I publish the e-mail responses anonymously if appropriate or address them in the Q&A sessions.

There is more one-to-one mentoring.

One-To-One Mentoring

During the program and at the end, I will have a one-to-one mentoring call with each participant. Each one-to-one mentoring call has a unique purpose.

  • During the mentoring program: You decide when it should happen. The purpose of this one-to-one call is simple. I want to support you in mastering my mentoring program.
  • In the end: I want to provide you with additional guidance for your career as a C++ programmer because you are never done learning.

Additionally, I develop an online library that provides the following content to support your learning.

Online Library

Additional Stations

You have noticed that I wrote about 28 stations, but the program takes nine months (35 stations). After big topics, I do not publish new content but deepen the previous topic. This unique week serves as a buffer to allow participants to work through gaps.

The buffer is necessary for several reasons:

  • Short-term bottlenecks in your job or private (vacation or illness).
  • Short-term bottlenecks in the mentoring program (many exciting questions have accumulated)
  • Deepening of the contents

This week, there will be a general Q&A session on Friday, where I will address questions and challenges around my mentoring.

Now, you may ask yourself, should I apply?

For Whom is This Mentoring Program?

First, you need a basic knowledge of C++, and you want to become a professional C++ developer in nine months. You have to invest about 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 typical participant profiles I have in mind:

  • Young professionals who want to master the start of their career
  • Students who wish to prepare for their first job (interview)
  • Software developers who want to qualify themselves further professionally
  • Team leaders that want to bring their members on the same page

If you don't know if my program is appropriate for you, write me an e-mail: info@ModernesCpp.de.

Here are a few technical details

Technical Details

  • Course start: My goal is to launch this course in April.
  • Course size: At least 105 hours, 17.5 training days, or 3 1/2 typical 3-days training.
  • Registration: I open the registration window four weeks before the course starts and close it one week before it starts.
  • Stay informed: If you want to stay informed, write an e-mail to info@ModernesCpp.de with the subject "Mentoring". Write me also an e-mail if you need more information.
  • Price: Due to this first installment of my mentoring program(and some improvisation),? the price of the program is drastically reduced by roughly 50%: €250 €/month. ( participants from Germany and final consumers in Europa, I have to add VAT (Germany 19 %, final consumers in Europa (European_value_add_tax)))

In the end, I want to write about my long-term vision.

My Vision

  • Build an active C++ community. You help each other to solve your exercises and challenges around modern C++.
  • You can master this course at your pace.
  • I will develop additional mentoring programs about the following more advanced topics. I will start these other mentoring programs at the end of this year.
  • C++20
  • Clean Code with Modern C++
  • Concurrency with Modern C++
  • Design Pattern and Architectural Pattern with C++
  • Embedded Programming with C++
  • Generic Programming (Templates) with C++

?

Thanks a lot to my Patreon Supporters: Matt Braun, Roman Postanciuc, Tobias Zindl, Marko, G Prvulovic, Reinhold Dr?ge, Abernitzke, Frank Grimm, Sakib, Broeserl, António Pina, Sergey Agafyin, Андрей Бурмистров, Jake, GS, Lawton Shoemake, Animus24, Jozo Leko, John Breland, espkk, Louis St-Amour, Venkat Nandam, Jose Francisco, Douglas Tinkham, Kuchlong Kuchlong, Robert Blanch, Truels Wissneth, Kris Kafka, Mario Luoni, Neil Wang, Friedrich Huber, lennonli, Pramod Tikare Muralidhara, Peter Ware, Daniel Hufschl?ger, Red Trip, Alessandro Pezzato, Evangelos Denaxas, Bob Perry, Satish Vangipuram, Andi Ireland, Richard Ohnemus, Michael Dunsky, Leo Goodstadt, Eduardo Velasquez, John Wiederhirn, Yacob Cohen-Arazi, Florian Tischler, Robin Furness, Michael Young, Holger Detering, Haken Gedek, Bernd Mühlhaus, Challanger, and Matthieu Bolt

Thanks in particular to Jon Hess, Lakshman, Christian Wittenhorst, Sherhy Pyton, Dendi Suhubdy, Sudhakar Belagurusamy, Richard Sargeant, Rusty Fleming, and Ralf Abramowitsch.

My special thanks to Embarcadero

My special thanks to PVS-Studio

?

Seminars

I'm happy to give online seminars or face-to-face seminars worldwide. Please call me if you have any questions.

Bookable (Online)

German

Standard Seminars (English/German)

Here is a compilation of my standard seminars. These seminars are only meant to give you a first orientation.

New

Contact Me

Modernes C++


?

?

?

?

?

Dr.-Ing. Gerhard Stein

Always thinking outside the box

3 å¹´

I am a bit sceptical with C++ on embedded systems, especially considering that the Linux kernel and Torvalds avoid C++. Still though, I think modern C++ deserves a chance.

赞
回复

As a previous trainee in one of Rainer's classes in CppCon, The C++ Conference, this particular mentoring program seems very complete, and knowing Rainer, he's hands-on, with examples galore and attention to detail. If I could describe Rainer's approach to teaching, it is that he tackles the material and problems heads on, with mastery, curiosity, and engaging you as a participant. If you have the time, resources and commitment to this program, I'm sure you'll end up a much, much better professional once you're through.

要查看或添加评论,请登录

Rainer Grimm的更多文章

  • My ALS Journey (21/n): ALS Fundraiser by Jen and Jason

    My ALS Journey (21/n): ALS Fundraiser by Jen and Jason

    Today, I want to present you something special. My ALS Journey so far ALS Fundraiser by Jen and Jason https://x.

    1 条评论
  • A Lock-Free Stack: A Hazard Pointer Implementation

    A Lock-Free Stack: A Hazard Pointer Implementation

    Hazard Pointers solve all issues of the previous implementation: A Lock-Free Stack: A Simple Garbage Collector. From…

  • A Lock-Free Stack: A Simple Garbage Collector

    A Lock-Free Stack: A Simple Garbage Collector

    My next lock-free stack includes a simple garbage collector. I discussed the concurrent execution of more than one…

  • A Lock-Free Stack: Atomic Smart Pointer

    A Lock-Free Stack: Atomic Smart Pointer

    The easiest way to solve this memory leak issue from the last post is to use a std::shared_ptr. Atomic Smart Pointer…

  • A Lock-Free Stack: A Complete Implementation

    A Lock-Free Stack: A Complete Implementation

    My last lock-free stack implementation was incomplete. It only supported push operations.

    2 条评论
  • My ALS Journey (20/n): Aids

    My ALS Journey (20/n): Aids

    Today, I would like to introduce all the important aids that allow me and Beatrix to get through the day My ALS…

    2 条评论
  • My Next Mentoring Program: “Generic Programming (Templates) with C++” starts

    My Next Mentoring Program: “Generic Programming (Templates) with C++” starts

    My next mentoring program, “Generic Programming (Templates) with C++,” starts on February 28th. Registration is open.

  • A Lock-Free Stack: A Simplified Implementation

    A Lock-Free Stack: A Simplified Implementation

    Today, I continue my mini story about lock-free data structures. General Considerations From the outside, the caller’s…

    1 条评论
  • Deferred Reclamation in C++26: Read-Copy Update and Hazard Pointers

    Deferred Reclamation in C++26: Read-Copy Update and Hazard Pointers

    A common problem in concurrency is the so-called ABA problem. That means you read a variable twice, which returns the…

  • std::format Extension

    std::format Extension

    Displaying the address of an arbitrary pointer in C++ 20 fails but succeeds with C++26. C++20 Only void, const void…

社区洞察

其他会员也浏览了