Skip to content

Back to the Basics: Intent-Driven API Design in C++

  • by

C++ News Section

As per usual we started the evening with a small roundup of news in the c++ World.

2026 Conference Calendar

C++ Online / March 11-13 / Online / http://cpponline.uk
using std::cpp / March 16-18 / Spain / https://eventos.uc3m.es/141471/detail/using-std-cpp-2026.html
C++ Now / May 4-8 / USA / https://cppnow.org
NDC Toronto / May 5-8 / Canada / https://ndctoronto.com
ACCU on Sea / June 17-20 / UK / https://accuconference.org
CppCon / Sept 12-18 / USA / https://cppcon.org
NDC Techtown / Sept 21-24 / Norway / https://ndctechtown.com
C++ Under The Sea / Oct 15-16 / Netherlands / https://cppunderthesea.nl
Meeting C++ / Nov 26-28 / Germany / https://meetingcpp.com

More listed here: https://isocpp.org/wiki/faq/conferences-worldwide

Advent of Compiler Optimization

This blog series by Matt Godbolt explores how modern compilers transform C and C++ code—through a 25-day “Advent of Compiler Optimisations” journey that breaks down real optimisation techniques, mostly on x86, and reflects on the effort behind building the series.

https://xania.org/AoCO2025

The AI-ReadySoftware Developer

This blog post by Jason Gorman describes why AI coding assistants often fail to improve software delivery in struggling teams: speeding up code generation only amplifies existing bottlenecks like testing, review, and integration. Drawing on industry studies and practical experience, he argues that teams only benefit from AI when they already have strong engineering practices and delivery processes in place.

C++26 Reflection

Reflections are officially coming to C++26, bringing powerful new compile-time metaprogramming capabilities to the language — check out this talk from Herb Sutter with more information on the topic.

A little Introduction to Control Flow Integrity

James McNellis explores the evolution of control flow integrity technologies, focusing on stack canaries as a defense against memory safety bugs. The session examines how these compiler-driven security measures work to prevent arbitrary code execution on modern 64-bit systems.

More Speed & Simplicity:
Practical Data-Oriented Design in C++

Vittorio Romeo challenges conventional object-oriented programming approaches by demonstrating how shifting to a data-oriented mindset can enhance performance and maintainability. Using a particle simulation, they showcase practical C++ techniques for optimizing memory layout and improving cache locality.

How to Change the World

In this keynote, Kate Gregory explores how individuals can drive meaningful change within teams, companies, and the wider software industry by starting small, building influence over time, and turning “somebody should” into practical action.

Back to the Basics: Intent-Driven API Design in C++ – Fridtjof Sterna

When you design function APIs, how do you choose parameter types? C++ offers many ways to pass objects to functions, but choosing the right parameter types for an API often still feels like guesswork.
We learn the mechanics and rules, yet rarely step back to ask the fundamental questions that should guide our decisions.

In this talk, we revisit parameter passing from first principles. Starting from intent rather than language features, we view a function call as a negotiation between caller and callee, with ownership and mutability as the two key questions at the boundary. This perspective reframes value categories as evidence, demystifies std::move, and leads to a practical decision guide for API design. The goal is to provide a mental model that helps both learners and experienced developers reason more confidently about C++ code.

Until Next Time

We look forward to seeing both familiar faces and new ones at our upcoming meetups. New dates will be announced soon on https://cppusergroupvienna.org.

Disclaimers

A big thank you to 42 Vienna for providing us with such a great venue! And hey! Why not join too?