Please rotate your tablet to be horizontal.

You can dismiss this notice but please note that this experience has not been designed for mobile devices and so will be less than optimal

Looking for an interactive way to learn modern C++? Have a look at my in-person training at CppNorth 2023:

https://cppnorth.ca/workshop-fromc-tocpp.html

Meet me in Toronto!

#cpp #CppNorth #training

In today’s @CppNorth talk "Using Sender/Receiver to Implement Control Flow for Async Processing" (9 AM MDT), Steve Downey will explore how the components & connectors for C++26's Sender/Receiver framework are to fit together
#cpp #cpp26 #cplusplus #CppNorth
https://bloom.bg/3NQlKOn

We are excited to have Bill Hoffman speaking about CMake at the CppNorth conference. His talk covers the latest in C++20 modules in #CMake. For more information, visit: http://ow.ly/OcnF50OlCUN #cpp #CppNorth

In today’s @CppNorth talk "Exceptionally Bad" (11:00 AM MDT), Peter Muldoon will discuss the original intent of exceptions & how their mechanics work, as well as cases of exception misuse + some better ways to handle each situation
#cpp #cplusplus #CppNorth
https://bloom.bg/3NJPmwX

In today’s @CppNorth talk "C++ Modules” (2:30 PM MDT), @Bloomberg’s Daniel Ruoso will explore the challenges that header units, as specified in C++20, create for implementers, plus some possible solutions to those challenges
#cpp20 #cpp #cplusplus #CppNorth
https://bloom.bg/41nxCuB

During tonight's lightning talks session at @CppNorth (8 PM MDT), @Bloomberg engineer Chris Fretz will share some fascinating tricks that can be used to simulate modern C++ features in older standards
#cpp #CppNorth #cplusplus
https://bloom.bg/3LPsTff

It's nice to have people on campus again! C++ is happening now! Check out their video from past years at the Center: https://www.youtube.com/watch?v=Um2pH_fLv6o #CppNorth @CppNorth #cpp #cpp23

In today’s @CppNorth talk "Requirements for C++ Successor Languages" (9:00 AM MDT), @Bloomberg engineer @bretbrownjr will discuss how to consider the feasibility & velocity in converting existing #cplusplus projects to the Next Big Thing
#cpp #CppNorth #cpp20
https://bloom.bg/3LGKbLp

Off I go to #CppNorth! The estimated travel time is 27 hours. Excited to give a talk about BLADE, the GPU-based beamforming pipeline of the Allen Telescope Array.

I'll be airing grievances about integers at #CppNorth in Aspen in May https://CppNorth.org/ I got a lot of problems with you people and now you're gonna hear about it!

The CppNorth 2023 Call for Submissions is now open!

https://CppNorth.org/announcements/2022/12/2023-CfS/

#CppNorth

Today, during @CppNorth 2022 (11 AM MDT), Peter Muldoon will share some of the key lessons he's learned about how to successfully redesign a legacy system during his 30-year career as a software engineer
https://bloom.bg/3KN1hF7
#cplusplus #cpp #CppNorth

The style of `const unsigned int` is named "const west". `unsigned int const` is "east const". This style debate has split the C++ community. My compromise style was rejected, I feel, without sufficient consideration -- central const: `unsigned const int`. #CppNorth

Back To Schedule

Writing C++ to Be Read

16:45 - 17:45 Tuesday 18th July 2023 EDT Kensington
Beginner
Intermediate
Design

Most developers spend more time reading code than writing code, and teams include developers with varying levels of C++ proficiency. This talk is a collection of advice on how to write simple code that states your intent clearly so that both you and your coworkers can understand it and maintain it.

I'll show how following the rule of zero and using aggregates can lead to code that is simpler, shorter, and easier to get right, by leveraging the code the compiler writes for you. I'll demonstrate a compelling use case for designated initializers. Learn how to form a common understanding among your coworkers using vocabulary types like optional and span. I'll also summarize the C++ Core Guidelines recommendations on how to choose appropriate parameter types in function signatures to clarify meaning, mutability, and ownership, including at the call site.

Presenting these tips as part of an onboarding process should help everyone in your team contribute to a cohesive and maintainable codebase.

View Slides

Vincent Zalzal

Vincent Zalzal is a software developer with 15 years of experience in the computer vision industry. Vincent enjoys writing efficient, modern C++ to solve all kinds of math-oriented problems, especially those involving linear algebra, geometry or statistics. He likes the low-level aspects of optimizing memory access patterns as much as the high-level challenges of writing simple and maintainable code. He has an insatiable curiosity for learning about language features, programming idioms, good practices and random math facts.