C++ Core Guidelines: The Philosophy

Today, I will dig a little bit deeper into the C++ Core Guidelines. In my last post about the C++ Core Guidelines I wrote about the Introduction section. Today I write about the section that is "primarily for humans". This is the most general section and is called Philosophy. The rules are so general that you can apply them to each programming language.

Read more
Views: 26101

Why do we need Guidelines for Modern C++?

This subjective post is based on more than 15 years of experience as a trainer for C++, Python, and software development in general. In the last years, I was responsible for the software and the team for building software for defibrillators. That included the regulatory affairs for our devices. Writing software for a defibrillator is extremely challenging because they can cause death or serious injury for the patient and the operator.

Read more
Views: 16306

Get the Current Pdf Bundle: "Multithreading: The High-Level Interface"

I have prepared the current pdf bundle. To get it is quite simple.

Read more
Views: 7418

My Book "Concurrency with Modern C++" is 30% complete

Concurrency with Modern C++ is a journey through current and upcoming concurrency in C++.

Read more
Views: 6559

What is Modern C++?

We often speak about classical and modern C++. What does that mean? First of all: What is modern C++?. There is a simple and a not so simple answer? The simple answer is. Modern C++ stands for C++ that is based on C++11, C++14, and C++17. I guess, you know it. This post and a series of further posts is about the not so simple answer.

Read more
Views: 179717

The Winner is: Multithreading: The high-level Interface

The winners of the next pdf bundles are.

Read more
Views: 5607

ABA - A is not the same as A

A common problem in concurrency is the so-called ABA problem. That means you read a value twice and each time it returns the same value A. Therefore you conclude that nothing changed in between. But you forgot the B.

Read more
Tags: atomics
Views: 17555

Which pdf bundle should I provide? Make your cross!

Now, it's time to choose the next pdf bundle? You will get all posts, all source files, and a cmake file to the chosen topic.

Read more
Views: 5922

Blocking and Non-Blocking Algorithms

Blocking, non-blocking, lock-free and wait-free. Each of these terms describes a key characteristic of an algorithm when executed in a concurrent environment. So, reasoning about the runtime behaviour of your program often means to put your algorithm in the right bucket. Therefore, this post is about buckets.

Read more
Views: 46848

Malicious Race Conditions and Data Races

This post is about malicious race conditions and data races. Malicious race conditions are race conditions that cause the breaking of invariants, blocking issues of threads, or lifetime issues of variables.

Read more
Views: 15233

My Newest E-Books

Course: Modern C++ Concurrency in Practice

Course: C++ Standard Library including C++14 & C++17

Course: Embedded Programming with Modern C++

Course: Generic Programming (Templates)

Course: C++ Fundamentals for Professionals

Subscribe to the newsletter (+ pdf bundle)

Blog archive

Source Code

Visitors

Today 8121

Yesterday 5369

Week 8121

Month 121584

All 5418688

Currently are 166 guests and no members online

Kubik-Rubik Joomla! Extensions

Latest comments