Sane C++ Live Streams

Subscribe to watch future live streams here:
Youtube Live Stream Channel

Live streams happen on Wednesday at 7pm GMT

Sane C++ is a weekly live stream with Stewart Lynch. Stewart will take you through files in his C++ codebase sharing his experience on how to write performant and maintainable C++.

The live streams will be on Wednesday's at 7pm GMT and will last between 30-60 minutes. Please come and ask questions or make comments in the live chat.

Stewart has over 30 years of experience in programming. He worked for 17 years in the games industry and now works at PureDev Software developing software for other programmers.

10x: Sane C++ Live Stream 4

Making the case for using a simple subset of C++. Brain cycles on language rather than problem. A case for auto? C style enums compared to C++ enum classes. Scope for enums and enum values. Bitwise combining of enum values. Enum operators. Using a macro for quickly declaring operators? Rvalue references and why they are needed. Alternative, MoveTo() function.

10x: Sane C++ Live Stream 3

Simple C++. Why use C++ and not C. ASSERT_CODE() question. Enum class operator question. Lambdas: Why use lambdas, inline code, capturing. Walkthrough of a number of simple examples. How to do the same thing without using lambdas. Comparing with my Function class. Lambdas require auto keyword. When to factor out code into a function. Potential problems with capturing local variables. RenderPrimitive lambda example. Debugging lambdas. Good threading practices and lambdas. Walkthrough of real world examples in the 10x codebase, converting existing code over to lambdas and comparing with and without. Layout and formatting for easy reading of code. Function length and when to factor out. How to write threading code so that it's easy to maintain.

10x: Sane C++ Live Stream 2

Why I never think about C++. Why keeping the language simple is so important. My RISC brain. How my usage of my language has evolved over time. What is good code. Using namespace and why it's ok to use. How good practices all fit together and why you can't look at rules in isolation. Why use 'private' at all. More on 'auto'. Examples of where auto could be ok, and why I still don't use it. Tabs or spaces? A good argument for tabs. How I evolved from C to C++. Comparison of modern C and my C++.

10x: Sane C++ Live Stream 1

This first stream starts with a short introduction to this series. It is recommended that you watch this first before watching the other streams.

We briefly covered a lot of C++ topics in this stream. 'using namespace' statements. Why put constants in unnamed namespaces. The Function template class for storing function pointers. Why not use stl. Layout of functions in a file. Touched on coding conventions. Why not lambdas. ObjArray and POD Array classes. When to use public/private. Smart pointers and when to use them. Should we use auto.