How to Teach C++ and Influence a Generation

By Christopher Di Bella

Learning to correctly use C++ is not difficult: teaching proper C++ usage is where the challenge lies, and at some point in your career, you’ll need to teach someone something about C++. You may not be a university lecturer or on-site trainer, but you could find yourself helping a colleague with their problem, presenting at a lunch-time session, or even at a conference! Perhaps you are someone who contributes to the company style guide or 'Intro to Our Repo' manual.

Correctly teaching C++ is a tough endeavour. C++ is underrepresented at the university level, and is often incorrectly taught both at a formal level (e.g. university, textbook, etc.) and an informal level (e.g. online tutorials, YouTube, etc.). Many resources are still outdated or refuse to change with the enormous paradigm shift that the C++ community has undergone over the past two decades.

We should seek to convey correct information and provide resources that stick with the facts. We should make learning C++ an enjoyable experience; and that stems from the way in which we teach it. In this talk, we will address how to:

  • keep material simple for beginners to both C++ and your project

  • source resources that teach students how to write programs using C++ (as opposed to learning C++ language features)

  • convey the philosophy of programming using C++, what makes that unique to C++, and how it can be adapted to your project

  • get students or colleagues started with tools that can help them on the way to success

  • help people realise that C++ isn’t a scary language

  • contribute to efforts seeking to research teaching computer science and C++, and improve teaching C++