Ressources

About the Content on this Page

All content on the page is based on my experience. This list is, by no means, exhaustive and serves one purpose: to support my Mentees. Ask me for details if you need more information.

Please use the "Table of Content" Menü on the to navigate through the Content of this Page.

Blogs

Collector

General

Concurrency

Coroutines

Design Patterns

Microsoft

Collector

General

Concurrency

Coroutines

Design Patterns

Microsoft

Books

General

Best Practices


Clean Code

  • Beautiful C++: 30 Core Guidelines for Writing Clean, Safe, and Fast Code by J.Guy Davidson, and Kate Gregory (I was a proofreader)
  • Clean C++20: Sustainable Software Development and Best Practices by Stephan Roth (clean code, C++ idioms, functional programming, testing, and design patterns)
  • C++ Coding Standards: 101 Rules, Guidelines, and Best Practices by Herb Sutter and Andrei Alexandrescu (covers legacy C++)
  • C++ Core Guidelines Explained: Best Practices for Modern C++ by Rainer Grimm

Effective C++

  • Effective C++: 55 Specific Ways to Improve your Programs and Design (the classic; covers C++98)
  • More Effective C++: 32 New Ways to Improve your Programs and Design (the extension to the classic; covers C++98)
  • Effective Modern C++: 42 Specific Ways to Improve your Programs and Design (I was a proofreader; covers C++11/14) by Scott Meyers

Exceptional C++

  • Exceptional C++: 47 Engineering Puzzles, Programming Problems, and Solutions (intermediate/advanced challenges; based on C++98)
  • Exceptional C++ Style: 40 New Engineering Puzzles, Programming Problems, and Solutions (intermediate/advanced challenges; based on C++98) by Herb Sutter

Legacy Code

Refactoring

Concurrency

Cookbooks

  • Modern C++ Programming Cookbook (Second Edition) by Marius Bancila (More than 100 recipes from core language, library, best practices, testing, including C++20)
  • C++20 STL Cookbook by Bill Weinman (Standard Template library based recipes, including C++20)

Embedded

Efficiency

Functional Programming

Implementation

Introduction

Libraries

Open Source C++ Libraries

Boost

ACE

Patterns

Anti-Patterns

Design Patterns

Embedded

C++

Pattern-Oriented Software Architecture

Software Design

Performance

Software Engineering

  • Peopleware: Productive Projects and Teams by Tom DeMarco and Timothy Lister (the classic about software management)
  • The Mythical Man-Month: Essays on Software Engineering by Fred Brooks (the classic about typical scheduling failures; a must read)
  • The Deadline: A Novel About Project Management by Tom DeMarco


Standard Library

Theory

Templates

Template Metaprogramming

Tools

CMake

Conferences

Conference

Time

Duration

Participants

Place

Video

Characteristics

C++ Russia

Spring and autumn

3 days

200 - 300

Moscow or St. Petersburg

  • Very good organized with family atmosphere
  • Created by Sergey Platanov and now maintained by JetBrains
  • Great social events
  • Will probably move to Cyprus

Spring

3 days

150 -200

Bochum


  • Very familiar and friendly atmosphere
  • Organized by Auto-Intern
  • Nice social programs
  • Focus on embedded programming with C++

Spring

2 days

200 -300

Bucharest

  • Very good organized with family atmosphere
  • Organized by Mosaic Works

April

3 days

150 -200

Bristol

  • Very good organized by Archer Yates Associates
  • Long and intensive talks (90 min)

Documentation

General

C++ FAQ

C++ Idioms

Guideliness

  • AUTOSAR C++14 (Guidelines for the use of the C++14 language in critical and safety-related systems by the AUTOSAR development partnership)
  • C++ Core Guidelines (Community driven guidelines for best practices in modern C++; editors are Bjarne Stroustrup, and Herb Sutter)
  • MISRA C++ (Based on C++03; the upcoming update is based on C++17 and includes C++20)

Tools

CMake

Conan

Libraries

General

  • Boost C++ Libraries (the unofficial standard for C++ libraries; incubator for future C++ standards)

C++20

Concurrency

Networking

  • POCO by Günther Obiltschnig (lightweight and convenient to use library)

Unicode

  • ICU – International Components for Unicode (industry standard for unicode in C++)

Online Compilers

General

Special

Successors

Carbon

Cppfront

Val

  •  Val homepage
  • A Future of Value Semantics and Generic Programming by Dave Abrahams

Talks

2022

Title

Language

Event

Town

Date

Length

Slides/Video

const and constexpr

English

Meeting C++

Online

25-Jan-2022

60 min

Extend and Embed Python

English

EmBO++

Online

26-Mar-2022

50 min

C++20: The Small Pearls

English

ACCU

Bristol

06-Apr-2022

90 min

Ranges

English

C++20 Techniques for Algorithmic Trading

Online

26–Apr-2022

150min (incl. Q&A)

Podcasts

  • ADSP: The Podcast by Bryce Adelstein Lelbach and Conor Hoekstra (Algorithms + Data Structures = Programs)
  • CppCast by Rob Irving and Jason Turner (the C++ podcast; ended after 349 episodes)
  • cpp.chat by Jon Kalb and Phil Nash (chats with guests from the C++ community)

Videos

Design Patterns