{"id":6267,"date":"2021-12-31T09:30:41","date_gmt":"2021-12-31T09:30:41","guid":{"rendered":"https:\/\/www.modernescpp.com\/index.php\/my-mentoring-program-fundamentals-for-c-professionals\/"},"modified":"2021-12-31T09:30:41","modified_gmt":"2021-12-31T09:30:41","slug":"my-mentoring-program-fundamentals-for-c-professionals","status":"publish","type":"post","link":"https:\/\/www.modernescpp.com\/index.php\/my-mentoring-program-fundamentals-for-c-professionals\/","title":{"rendered":"My Mentoring Program &#8220;Fundamentals for C++ Professionals&#8221;"},"content":{"rendered":"<p>I&#8217;m happy to provide you with more details about my mentoring program, &#8220;Fundamentals for C++ Professionals&#8221;.&nbsp;<\/p>\n<p><!--more--><\/p>\n<p>&nbsp;<img loading=\"lazy\" decoding=\"async\" class=\" size-full wp-image-6266\" src=\"https:\/\/www.modernescpp.com\/wp-content\/uploads\/2021\/12\/mentoring.jpg\" alt=\"mentoring\" width=\"400\" height=\"267\" style=\"display: block; margin-left: auto; margin-right: auto;\" srcset=\"https:\/\/www.modernescpp.com\/wp-content\/uploads\/2021\/12\/mentoring.jpg 2000w, https:\/\/www.modernescpp.com\/wp-content\/uploads\/2021\/12\/mentoring-300x200.jpg 300w, https:\/\/www.modernescpp.com\/wp-content\/uploads\/2021\/12\/mentoring-1024x684.jpg 1024w, https:\/\/www.modernescpp.com\/wp-content\/uploads\/2021\/12\/mentoring-768x513.jpg 768w, https:\/\/www.modernescpp.com\/wp-content\/uploads\/2021\/12\/mentoring-1536x1025.jpg 1536w\" sizes=\"auto, (max-width: 400px) 100vw, 400px\" \/><\/p>\n<h2><span class=\"ez-toc-section\" id=\"My_General_Idea\"><\/span>My General Idea<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>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.<\/p>\n<p>After my general idea, I want to give you more details about my mentoring.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Title\"><\/span>Title<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<ul>\n<li>Fundamentals for C++ Professionals (Become a C++ Professional in Nine Months)<\/li>\n<\/ul>\n<h2><span class=\"ez-toc-section\" id=\"Stations\"><\/span>Stations<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Here are all 28 stations. Therefore, you know what you get:<\/p>\n<ol>\n<li>Introduction<\/li>\n<li>Literals<\/li>\n<li>Types: enumerations, pointer, references, and casts<\/li>\n<li>Types: type deduction with <code>auto<\/code> and <code>decltype<\/code><\/li>\n<li>Values: initialization, conversion, <code>const<\/code>, and <code>constexpr<\/code><\/li>\n<li>Values: move semantics and perfect forwarding<\/li>\n<li>Memory<\/li>\n<li>Functions<\/li>\n<li>Classes: attributes and constructors<\/li>\n<li>Classes: initialization, destructors, and member functions<\/li>\n<li>Classes: <code>default<\/code>, and <code>delete<\/code>, operator overloading, explicit, access rights, friends, and structs<\/li>\n<li>Inheritance: abstract base classes, access rights, constructors, base class initializers<\/li>\n<li>Inheritance: destructor, virtuality, <code>override<\/code>, and <code>final<\/code>, and multiple inheritances<\/li>\n<li>Templates: functions and classes<\/li>\n<li>Templates: parameters and arguments<\/li>\n<li>Template Specialization<\/li>\n<li>Type Traits<\/li>\n<li>Smart Pointers<\/li>\n<li>STL: General Ideas (containers, algorithms, iterators, callables, range-based)<\/li>\n<li>STL: Common Interface of the Containers<\/li>\n<li>STL: sequential containers and associative containers<\/li>\n<li>STL: algorithms<\/li>\n<li>Strings including string views<\/li>\n<li>Regular Expressions<\/li>\n<li>In- and Output<\/li>\n<li>Threads: creation, data sharing, mutexes, and locks<\/li>\n<li>Threads: thread-local data, thread-safe initialization, condition variables<\/li>\n<li>Tasks<\/li>\n<\/ol>\n<h2><span class=\"ez-toc-section\" id=\"One_Station\"><\/span>One Station<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>I publish on each Friday a new station (content). But I have more valuable content for you if you like.<\/p>\n<p>One station contains theory, practice, and mentoring.<\/p>\n<ul>\n<li>Theory\n<ul>\n<li>Pure theory with approx. ten slides (video)<\/li>\n<li>Applied theory with approx. five examples (video)<\/li>\n<\/ul>\n<\/li>\n<li>Practice\n<ul>\n<li>Explain the exercises (video)<\/li>\n<li>Explain the sample solutions to the exercises (video)<\/li>\n<\/ul>\n<\/li>\n<li>Mentoring\n<ul>\n<li>Live Q&amp;A session on each Friday of each week, in which I address questions about the week&#8217;s topic; I record this session.<\/li>\n<li>E-mail queries by participants; I publish the e-mail responses anonymously if appropriate or address them in the Q&amp;A sessions.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>There is more one-to-one mentoring.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"One-To-One_Mentoring\"><\/span>One-To-One Mentoring<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>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.<\/p>\n<ul>\n<li>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.<\/li>\n<li>In the end: I want to provide you with additional guidance for your career as a C++ programmer because you are never done learning.<\/li>\n<\/ul>\n<p>Additionally, I develop an online library that provides the following content to support your learning.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Online_Library\"><\/span>Online Library<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<ul>\n<li>\n<p>Videos of very valuable lectures<\/p>\n<\/li>\n<li>\n<p>A coupon for my educative courses &#8220;<a href=\"https:\/\/www.educative.io\/courses\/cpp-fundamentals-for-professionals\">C++ Fundamentals for Professionals<\/a>&#8220;<\/p>\n<\/li>\n<li>\n<p>A coupon for my book &#8220;<a href=\"https:\/\/leanpub.com\/cpplibrary\">The C++ Standard Library<\/a>&#8220;<\/p>\n<\/li>\n<li>\n<p>Articles to the each station<\/p>\n<\/li>\n<li>\n<p>Recorded Q&amp;A sessions<\/p>\n<\/li>\n<li>\n<p>Respond to e-mails if they are relevant to the course<\/p>\n<\/li>\n<\/ul>\n<h2><span class=\"ez-toc-section\" id=\"Additional_Stations\"><\/span>Additional Stations<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>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.<\/p>\n<p>The buffer is necessary for several reasons:<\/p>\n<ul>\n<li>Short-term bottlenecks in your job or private (vacation or illness).<\/li>\n<li>Short-term bottlenecks in the mentoring program (many exciting questions have accumulated)<\/li>\n<li>Deepening of the contents<\/li>\n<\/ul>\n<p>This week there will be a general Q&amp;A session on Friday, where I will address questions and challenges around my mentoring.<\/p>\n<p>Now, you may ask yourself, should I apply?<\/p>\n<h2><span class=\"ez-toc-section\" id=\"For_Whom_is_This_Mentoring_Program\"><\/span>For Whom is This Mentoring Program?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>First of all, 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.<\/p>\n<p>Here are a few typical participant profiles I have in mind:<\/p>\n<ul>\n<li>Young professionals who want to master the start of their career<\/li>\n<li>Students who wish to prepare for their first job (interview)<\/li>\n<li>Software developers who want to qualify themselves further professionally<\/li>\n<li>Team leaders that want to bring their members on the same page<\/li>\n<\/ul>\n<p>If you don&#8217;t know if my program is appropriate for you, write me an e-mail: <a href=\"mailto:info@ModernesCpp.de\">info@ModernesCpp.de<\/a>.<\/p>\n<p>Here are a few technical details<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Technical_Details\"><\/span>Technical Details<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<ul>\n<li><strong>Course star<\/strong>t: My goal is to launch this course in April.<\/li>\n<li><strong>Course size:<\/strong> At least 105 hours, 17.5 training days, or 3 1\/2 typical 3-days training.<\/li>\n<li><strong>Registration<\/strong>: I open the registration window four weeks before the course starts and close it one week before it starts.<\/li>\n<li><strong>Stay informed<\/strong>: If you want to stay informed, write an e-mail to <a href=\"mailto:info@ModernesCpp.de\">info@ModernesCpp.de<\/a> with the subject &#8220;Mentoring&#8221;. Write me also an e-mail if you need more information.<\/li>\n<li><strong>Price<\/strong>: Due to this first installment of <span data-preserver-spaces=\"true\">my mentoring program(and some improvisation),&nbsp;<\/span> the price of the program is drastically reduced by roughly 50%: \u20ac250\/month.\n<ul>\n<li>For participants from Germany and final consumers, I have to add 19% VAT (<a href=\"https:\/\/en.wikipedia.org\/wiki\/European_Union_value_added_tax\">European_value_add_tax<\/a>)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>In the end, I want to write about my long-term vision.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"My_Vision\"><\/span>My Vision<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<ul>\n<li>\n<p>Build an active C++ community. You help each other to solve your exercises and challenges around modern C++.<\/p>\n<\/li>\n<li>\n<p>You can master this course at your pace.<\/p>\n<\/li>\n<li>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.\n<ul>\n<li>C++20<\/li>\n<li>Clean Code with Modern C++<\/li>\n<li>Concurrency with Modern C++<\/li>\n<li>Design Pattern and Architectural Pattern with C++<\/li>\n<li>Embedded Programming with C++<\/li>\n<li>Generic Programming (Templates) with C++<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;m happy to provide you with more details about my mentoring program, &#8220;Fundamentals for C++ Professionals&#8221;.&nbsp;<\/p>\n","protected":false},"author":21,"featured_media":6266,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[377],"tags":[],"class_list":["post-6267","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-mentoring"],"_links":{"self":[{"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/posts\/6267","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/users\/21"}],"replies":[{"embeddable":true,"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/comments?post=6267"}],"version-history":[{"count":0,"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/posts\/6267\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/media\/6266"}],"wp:attachment":[{"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/media?parent=6267"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/categories?post=6267"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/tags?post=6267"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}