C++ is a high level programming language that is extremely useful for scientific applications. The language has historically had a bad reputation, but modern C++ is much improved so that your code can be relatively short and elegant. In this workshop we will teach the basics of C++ for people who are familiar with the basics of programming, and we will especially compare and contrast C++ with Python (only the material covered in SCMP142 "Intro to Programming with Python" is required). Knowing multiple programming languages may be a useful skill: while Python is a wonderful programming language, execution speed is often a practical issue for pure Python applications. For applications where this is an issue, coding in C++ can significantly improve performance. As C++ can relatively easily be integrated in a Python project, it is also possible (and common) to code just the bottleneck in that language.