not hear g24fbc3241 1280

The Lack of Training Culture: Four Signs

Our software industry has a significant Lack of Training Culture. What makes this Lack of Training Culture even worse is that the demand for high-quality software and the complexity of software will drastically increase in the nearer future.

not hear g24fbc3241 1280

Today, I want to write about my heart’s desire. The Lack of Training Culture. To better understand my heart’s desire, here are a few words about my professional career:

Professional Career

  • I’ve worked as a software architect, team lead, and instructor since 1999.
  • In 2002, I created company-intern meetings for further education.
  • I have been given training courses since 2004.
  • In 2011, I published the first C++11 book worldwide. Since then, I have published eight additional C++ books translated into six languages.
  • Since 2016 I have been an independent instructor for C++ and Python doing the job I love: learning and teaching.

The last points gave my short story. If you want the whole story, read this post About Me.

Now you understand my commitment, and I can start this article.

Four Signs

The four signs address the employee and the employer. For most of my professional career, I was an employee. Consequently, I argue from the employer’s perspective, but this is only a stylistic choice.

Here are my Four Signs of the Lack of Training Culture.

  • Learning is not an integral part of your profession
  • Your employer does not support your learning
  • You hire for Skills but not for Attitude
  • You unlearned learning

Let me add content to my statements.

Learning is not an Integral Part of your Profession

Why should learning be an integral part of your profession?

The Systemic Challenge

Learning must be an integral part of your daily routine. Learning is not done after you mastered your first education, such as at school or university. The reason is simple: Our software domain is complex and highly dynamic. We are often confronted with new challenges, new programming languages, and new techniques. Sometimes we face more than one unknown in our new project. Mastering these challenges requires that you always have to ask yourself the question: Do I use the appropriate technique? Asking the questions requires an open culture.


Rainer D 6 P2 500x500Modernes C++ Mentoring

Be part of my mentoring programs:

  • "Fundamentals for C++ Professionals" (open)
  • "Design Patterns and Architectural Patterns with C++" (open)
  • "C++20: Get the Details" (open)
  • "Concurrency with Modern C++" (starts March 2024)
  • Do you want to stay informed: Subscribe.


    The Training Culture

    To master the systemic challenge of our domain, you need a training culture in your company. A training culture is a culture that embraces training and is supportive. This culture regards training not as a cost factor but as an investment into your and your company’s future. I hear your question: Who is responsible for the training culture? The responsibility lies on two shoulders: the employer and the employee.

    The Responsibility

    Let me start with the employer.


    First, the employer must consider training and a training culture a precious commodity. The employees are the biggest asset of the employer and a guarantee for ongoing business success. There are many ways in which an employer can support their employees. Here are a few ideas:

    • Books and magazines
    • Mentoring (very experienced professionals mentor new ones; the mentors can be company interns or externs)
    • Company intern training programs
    • Further education groups (regular presentations of interesting techniques; this often ends in a valuable discussion)
    • Abonnnemonts of learning platforms such as educative or coursera
    • 2 or 3 days training
    • Participation on conferences

    So, what are the duties of the employee?


    The employee’s responsibility is more important than you may think. First, as an employee, you must convince your employer that building a training culture in your company is an investment with a very high dividend. This conviction is necessary because non-software-related people may not see the systemic challenge of software as clearly as you do. You also know your company’s culture and business-related difficulties well. You must actively claim the training culture and show how to establish them in your business. The employer is the patron who supports this training culture in your company with time and money.

    If you don’t establish a training culture in your company, you will get what you deserve.


    What are the consequences of companies having no training culture?

    In the medium term, the good and best software developers will leave the company because they want an environment where they can improve themselves. They are eager to learn. Only the bad programmers stay because they will not find a new employer and care more about a secure job. This effect is enforced by the fact that the best software developers only want to work with the best software developers.

    In the long term, a company ends up with bad software developers. Consequently, they can maintain legacy software at most but cannot implement new products. The maintenance of your legacy software could be faster and cheaper, and you can only hope that no competitor performs better. You cannot significantly improve your products or create new ones in the long run, Darwin will catch you.

    Ending up with bad software developers takes three years typically. I experienced it twice.

    To Be Continued

    Both parties, employer and employee, must do their job professionally and regard learning as an integral part of our profession. In the following article, I will write about the second sign of the “Lack of Training Culture”: Your employer does not support your learning.


    I’m curious to hear your thoughts and want to keep the ball running. Please write an e-mail to and state if I can quote you. I will write a follow-up post about this key challenge of your software domain. 




    Modernes C++,








    Thanks a lot to my Patreon Supporters: Matt Braun, Roman Postanciuc, Tobias Zindl, G Prvulovic, Reinhold Dröge, Abernitzke, Frank Grimm, Sakib, Broeserl, António Pina, Sergey Agafyin, Андрей Бурмистров, Jake, GS, Lawton Shoemake, Jozo Leko, John Breland, Venkat Nandam, Jose Francisco, Douglas Tinkham, Kuchlong Kuchlong, Robert Blanch, Truels Wissneth, Kris Kafka, Mario Luoni, Friedrich Huber, lennonli, Pramod Tikare Muralidhara, Peter Ware, Daniel Hufschläger, Alessandro Pezzato, Bob Perry, Satish Vangipuram, Andi Ireland, Richard Ohnemus, Michael Dunsky, Leo Goodstadt, John Wiederhirn, Yacob Cohen-Arazi, Florian Tischler, Robin Furness, Michael Young, Holger Detering, Bernd Mühlhaus, Stephen Kelley, Kyle Dean, Tusar Palauri, Juan Dent, George Liao, Daniel Ceperley, Jon T Hess, Stephen Totten, Wolfgang Fütterer, Matthias Grün, Phillip Diekmann, Ben Atakora, Ann Shatoff, Rob North, Bhavith C Achar, Marco Parri Empoli, moon, Philipp Lenk, Hobsbawm, Charles-Jianye Chen, and Keith Jeffery.

    Thanks, in particular, to Jon Hess, Lakshman, Christian Wittenhorst, Sherhy Pyton, Dendi Suhubdy, Sudhakar Belagurusamy, Richard Sargeant, Rusty Fleming, John Nebel, Mipko, Alicja Kaminska, Slavko Radman, and David Poole.

    My special thanks to Embarcadero
    My special thanks to PVS-Studio
    My special thanks to 
    My special thanks to Take Up Code
    My special thanks to SHAVEDYAKS


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

    Standard Seminars (English/German)

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

    • C++ – The Core Language
    • C++ – The Standard Library
    • C++ – Compact
    • C++11 and C++14
    • Concurrency with Modern C++
    • Design Pattern and Architectural Pattern with C++
    • Embedded Programming with Modern C++
    • Generic Programming (Templates) with C++
    • Clean Code with Modern C++
    • C++20

    Online Seminars (German)

    Contact Me

    Modernes C++ Mentoring,



    0 replies

    Leave a Reply

    Want to join the discussion?
    Feel free to contribute!

    Leave a Reply

    Your email address will not be published. Required fields are marked *