The STL is more than std::accumulate

Different compilers deal with provably unused entities

Inheritance is for sharing an interface (and so is overloading)

Classically polymorphic visit replaces some uses of dynamic_cast

Two musings on the design of compiler warnings

The “OO” Antipattern

const is a contract

Default function arguments are the devil

c_str-correctness

When is *x also &x?

Thoughts on “The C++ Rvalue Lifetime Disaster”

OpenSSL client and server from scratch, part 1

Hidden reinterpret_casts

Holiday fun with template<class> and template<typename>

Slack’s new WYSIWYG input box is terrible

ADL insanity

Covariance and contravariance in C++

The “unsigned for value range” antipattern