CppNow
Jason Turner: Thinking Portable: How and why to make your C++ cross platform
updated
---
Parallel Range Algorithms - The Evolution of Parallelism in C++ - Ruslan Arutyunyan - C++Now 2025
---
A talk will be given by one of the authors of the C++ proposal that aims to introduce Parallel Range Algorithms, bringing together the power of C++ Ranges and parallel execution. This talk explores how these new algorithms improve code clarity, expressiveness, and performance.
We’ll consider the following key aspects:
- What Parallel Range Algorithms are, and how they differ from C++17 parallel algorithms and serial range algorithms;
- What design choices were made, specifically addressing bounded ranges and range-as-the-output, and some corner cases;
- The performance implications of Parallel Range Algorithms;
- The safety implications of Parallel Range Algorithms;
- How these algorithms apply to heterogeneous computing based on oneAPI DPC++ library (oneDPL) experience.
This talk is based on an active C++ standard proposal (P3179) that has strong potential to land in C++26. We will break down key design decisions, explore code examples, and discuss how these algorithms enable more expressive and scalable parallelism in modern C++.
While this session will be technical, it is targeted to be accessible to different audiences, from library authors to everyday C++ developers. Expect technical insights, and a look into the future of parallel programming in C++.
---
Slides: github.com/boostcon/cppnow_presentations_2025/blob/main/Presentations/Parallel_Range_Algorithms.pdf
Join think-cell as a C++ Developer and work on cutting-edge challenges with a focus on code excellence, innovation, and working alongside an international team of experts — apply now to be part of a team shaping the future of business presentations. think-cell.com/en/career
---
Ruslan Arutyunyan
Ruslan is a Senior Middleware Development Engineer specializing in parallel and threading runtimes. He joined Intel in 2017 and has experience in the autonomous driving domain, where he led the development of two libraries.
Currently, Ruslan is the lead developer of oneAPI DPC++ library (oneDPL) while also contributing to other Intel products, including oneAPI Threading Building Blocks (oneTBB). He is an active member of the C++ Standard Committee (WG21), focusing on the C++ standard library, concurrency, and parallelism, with several accepted proposals. His current priorities are standardizing std::simd enhancements, extending C++ parallel algorithms, and contributing to Senders/Receivers.
Ruslan recently stepped into the role of SG1 (Concurrency and Parallelism) co-chair in the C++ Standard Committee.
---
C++Now 2026 - 27th April - 1st May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: think-cell and Bloomberg
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#ranges #algorithms #boost #cpp #cplusplus #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus #softwaredevelopment
---
CPS in Cmake - Marching Towards Standard C++ Dependency Management - Bill Hoffman - C++Now 2025
---
In 2023, Bret Brown and Bill Hoffman gave a talk at CppCon "Libraries: First Step Toward Standard C++ Dependency Management". This was an introduction to the Common Package Specification (CPS), a specification for the declaration of meta data that can accompany prebuilt libraries with full usage specifications. Prebuilt libraries have existed for decades… they predate C++ even. After all these years, techniques to use prebuilt libraries are still ad hoc and difficult to maintain. A root cause of this variety of techniques is the variety of things that are C++ libraries: header-only libraries, statically linked archives, dynamically linked binaries, and so on. Consuming projects need to build against these libraries in consistent ways or risk catastrophic failure in production environments. This creates enormous interoperability problems across broad portions of the wide programming ecosystem, not just the C++ parts of it.
In that talk, there was a promise of using CMake's installation base and existing export/import (in the CMake language) of similar meta data to help promote and test this new specification. Progress has been moving forward, and in CMake 4.0 (released in 2025) an experimental CPS implementation can be found in CMake. This talk will explore the current implementation in CMake. The talk will also cover the ramifications of this new standard on package managers, IDE's, SBOM generation. The talk is intended for anyone who produces or consumes C++ libraries. Special knowledge of C++ tooling, build systems, or package managers is not required.
---
Slides: github.com/boostcon/cppnow_presentations_2025/blob/main/Presentations/CPS_in_CMake.pdf
Join think-cell as a C++ Developer and work on cutting-edge challenges with a focus on code excellence, innovation, and working alongside an international team of experts — apply now to be part of a team shaping the future of business presentations. think-cell.com/en/career
---
Bill Hoffman
Mr. Hoffman is a founder of Kitware and currently serves as Chairman of the Board, Vice President, and Chief Technical Officer (CTO). He is the original author and la ead architect of CMake, an open source, cross-platform build and configuration tool that is used by millions of developers around the world, and he is the co-author of the accompanying text, Mastering CMake. Using his 20+ years of experience with large software systems development, Mr. Hoffman is also a major technical contributor to Kitware’s Visualization Toolkit, Insight Toolkit, and ParaView projects.
As CTO, Mr. Hoffman’s emphasis is on software development methodologies and establishing best practices across the breadth of Kitware’s development efforts. As one of the visionaries leading the quality software process efforts at Kitware, Bill has been instrumental in adopting agile programming practices, fueling Kitware’s software development. He is a frequent speaker on these subjects at CppCon, C++Now, and other conferences.
Mr. Hoffman received a B.S. in Computer Science from the University of Central Florida and an M.S. in Computer Science from Rensselaer Polytechnic Institute (RPI). Prior to the formation of Kitware, he spent nine years at the General Electric Corporate Research and Development center, working in the Computer Vision Group. He has planned and taught several graduate-level courses at RPI as well as a course in object-oriented programming at New York University.
---
C++Now 2026 - 27th April - 1st May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: think-cell and Bloomberg
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#cmake #tooling #boost #cpp #cplusplus #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus #softwaredevelopment
---
Computing Correctness | Is your C++ Code Correct? - Nick Waddoups - C++Now 2025
---
Do the words "formal verification" send shivers of concern down your spine? This talk will introduce the concept of automated formal verification, and explore how learning about automated formal verification provides a foundation for writing clean code that can be reasoned about. While formally verifying an entire code base is not needed for many projects, the principles behind formal verification apply to all projects and can improve your code. This talk specifically explores model checking and deductive reasoning techniques, demonstrates how we can reason "like a computer", and aims to enable better software design.
---
Join think-cell as a C++ Developer and work on cutting-edge challenges with a focus on code excellence, innovation, and working alongside an international team of experts — apply now to be part of a team shaping the future of business presentations. think-cell.com/en/career
---
Nick Waddoups
Nick Waddoups is a computer engineer fascinated with language design, computer architecture, and formal methods. He learned C++ during his second semester of his undergraduate degree, and has lovingly struggled with it ever since. He is pursuing a master's degree in computer engineering at Utah State University, focusing on the areas of formal verification, model checking, and digital system verification.
---
C++Now 2026 - 27th April - 1st May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: think-cell and Bloomberg
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#correctness #computing #boost #cpp #cplusplus #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus #softwaredevelopment
---
How to Pinpoint Runtime Errors in Mixed C++ & Rust Code For Busy Engineers - Steve Barriault - C++Now 2025
---
As C++ developers explore Rust for new development, the challenge of interoperability between the two languages grows. Large-scale C++ codebases now integrate Rust, requiring the use of the C ABI, which introduces risks like undefined behavior in C++ and runtime panics in Rust. Today, formal verification is often limited to specific programming languages (Ada, C, C++), with few tools supporting mixed-language environments. As Rust adoption increases alongside C++, new formal verification tools must evolve to ensure safe, predictable interactions between Rust and C++ libraries.
This talk explores how formal verification techniques can be adapted to hybrid systems to detect runtime errors both within the language-specific segments and across the language divide. We will also provide a few coded examples to illustrate how formal methods can be leveraged to pinpoint these errors with no false negatives and a low percentage of false positives.
---
Slides: github.com/boostcon/cppnow_presentations_2025/blob/main/Presentations/Identifying_Runtime_Errors_in_Mixed_Cpp_and_Rust_Codebases_Using_Formal_Methods.pptx
Join think-cell as a C++ Developer and work on cutting-edge challenges with a focus on code excellence, innovation, and working alongside an international team of experts — apply now to be part of a team shaping the future of business presentations. think-cell.com/en/career
---
Steve Barriault
Steve Barriault is Vice President Technical Business Development at TrustInSoft, the leader in the use of formal methods for the detection of bugs in safety and security-critical applications. He has more than 20 years of experience in Embedded Software, working for the embedded division of Canonical (Ubuntu), Vector, and PolySpace, his teams and he providing complex solutions to a slew of prestigious clients in Automotive, Avionics, Medical Devices, Industrial Systems, Edge, and more.
Steve proudly wears his software engineering cap and loves to discuss how technologies can be leveraged for the benefit of all. He speaks English, French and Chinese fluently, studies Japanese at an intermediate/advanced level, and holds multiple degrees in Business, Sciences, Computer Science and International Relations.
---
C++Now 2026 - 27th April - 1st May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: think-cell and Bloomberg
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#rustprogramming #verification #boost #cpp #cplusplus #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus #softwaredevelopment
---
A View for Any Occasion - Implementing the C++ Standard Library Proposal for any_view - Patrick Roberts - C++Now 2025
---
In this talk, we will introduce a reference implementation for a proposed addition to the C++ standard library: std::ranges::any_view. This new type provides a flexible, generalized, type-erased view that can wrap any viewable range object. The any_view abstracts away the specific concrete type of the underlying container, allowing developers to define appropriate API boundaries for range adaptor pipelines. We will explore a design and implementation of std::ranges::any_view added to the Beman project, demonstrate its usage with real-world examples, and discuss how it fits into the broader context of C++'s evolving ranges library. Attendees will learn how this feature can enhance the expressiveness and reusability of their code, while maintaining performance through optimized type erasure. Additionally, we will delve into the trade-offs and challenges faced during its design and implementation, including type safety, efficiency, and compatibility with existing ranges features. This talk will provide insights into the practical applications of type-erased views and offer a glimpse into the future potential of range-based programming in C++.
---
Slides: github.com/boostcon/cppnow_presentations_2025/blob/main/Presentations/A_View_for_Any_Occasion.pdf
Join think-cell as a C++ Developer and work on cutting-edge challenges with a focus on code excellence, innovation, and working alongside an international team of experts — apply now to be part of a team shaping the future of business presentations. think-cell.com/en/career
---
Patrick Roberts
Patrick Roberts is a licensed professional engineer who graduated from the University of Houston with a Bachelor of Science in Electrical Engineering in 2017. After three years writing embedded systems firmware in C, he moved on to high frequency trading where he learned and applied modern C++ within low latency trading software. Now he implements open source device kernels for tensor accelerators to advance the development of artificial intelligence, and spends his nights pushing the limits of compilers with template metaprogramming.
---
C++Now 2026 - 27th April - 1st May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: think-cell and Bloomberg
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#ranges #algorithms #boost #cpp #cplusplus #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus #softwaredevelopment
---
Streamlining C++ Code - Avoiding Unnecessary C++ Object Creation - Chandranath Bhattacharyya & Kathleen Baker - C++Now 2025
---
Avoiding unnecessary temporary object creation in C++ is crucial for improving performance and reducing resource usage. This talk delves into common scenarios where temporary objects are created and provides practical strategies for improving code.
We'll cover some best practices identified during code reviews within our organization.
We’ll begin with techniques for reducing temporary objects in commonly used types like std::string and std::vector, and then extend our journey to other STL types such as std::pair, std::tuple, std::optional, std::expected, std::variant, std::initializer_list, as well as other sequence and associative containers.
Attendees will also learn to avoid costly operations by using transparent comparators and moving constant objects with global lifetimes to compile-time data structures.
This session includes code examples to demonstrate these principles in action. By the end of the talk, attendees will be equipped with actionable takeaways to enhance the efficiency of their C++ codebases.
---
Slides: github.com/boostcon/cppnow_presentations_2025/blob/main/Presentations/Streamlining_Cpp_Code.pdf
Join think-cell as a C++ Developer and work on cutting-edge challenges with a focus on code excellence, innovation, and working alongside an international team of experts — apply now to be part of a team shaping the future of business presentations. think-cell.com/en/career
---
Chandranath Bhattacharyya
I have been a professional programmer since 2000 with most of my time working with C++.
Kathleen Baker
Kathleen is a software engineer working at Microsoft on the Edge browser. She is very excited about presenting at her first C++ conference. In her free time, she likes to do triathlons and try new foods.
---
C++Now 2026 - 27th April - 1st May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: think-cell and Bloomberg
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#performance #objects #boost #cpp #cplusplus #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus #softwaredevelopment
---
Declarative Refactoring for the Masses in C++ - Andy Soffer - C++Now 2025
---
Designing and writing refactoring tools has historically been an expensive process with an exceptionally steep learning curve. What can we do to reduce this barrier to entry? In this talk we'll discuss the design of a refactoring paradigm that makes C++ refactoring tooling accessible to the general C++ developer. Rather than needing to learn bespoke APIs, or gain familiarity with the idiosyncrasies of Clang's AST, developers can simply write examples of the code patterns they wish to detect and the replacements they wish to generate in everyday C++. This enables a background task to generate, test and apply refactorings, freeing developers to work on more complex and business-critical tasks.
---
Slides: https://brontosource.dev/short/bb3a10e9
Join think-cell as a C++ Developer and work on cutting-edge challenges with a focus on code excellence, innovation, and working alongside an international team of experts — apply now to be part of a team shaping the future of business presentations. think-cell.com/en/career
---
Andy Soffer
Andy Soffer is a lapsed mathematician turned software engineer. He spent eight years at Google, before founding BrontoSource in late 2024. His time at Google culminated in leading the C++ Core Libraries team (responsible for Abseil and GoogleTest) and the C++ Large Scale Refactoring team, responsible for building and executing multimillion line migrations across the codebase. At BrontoSource, he is excited to share what he has learned about effective automated refactoring techniques with the rest of the C++ community.
---
C++Now 2026 - 27th April - 1st May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: think-cell and Bloomberg
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#refactoring #tooling #boost #cpp #cplusplus #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus #softwaredevelopment
---
How To Affect the Future of C++ Standard in 90 Minutes - River Wu - C++Now 2025
---
Not satisfied with the current C++ standard library? Check out the latest progress of ongoing C++ standard library proposals in the Beman project! Not seeing “the” library proposal you’re looking for? Host an implementation with us!
The Beman Project was bootstrapped from C++Now 2024 to advance future standard libraries by providing implementation experience and fostering community engagement. Over the past year, the project has grown significantly, attracting a wealth of expertise in building and maintaining high-quality C++ libraries. Ten libraries that implement standard library proposals targeting near-term, medium-term, and long-term C++ evolution are under active development, with several projects ready for production.
In this talk, audiences will learn about some of the latest standard library proposals and their status in the Beman project (with an emphasis on libraries targeting C++26), including their motivations, implementation status, example usage, as well as how to provide feedback and get involved.
Audiences will also learn about how to contribute to the Beman project, whether they are interested in testing ideas for standardization or if they would like to contribute a new implementation. Including developer infrastructure the Beman project has built over the past year that will assist their contribution, including our refined approach to uniformity, continuous integration, build system, and package management.
Whether you are curious about the latest library proposal, or a library author, this talk will equip you with practical ways to engage with the Beman Project and, by extension, the standardization process.
---
Slides: docs.google.com/presentation/d/1lCXHHtgcgg0fQMHjiHnF3F-zq-7d5GudtivPQId-iyw/edit?usp=sharing
Join think-cell as a C++ Developer and work on cutting-edge challenges with a focus on code excellence, innovation, and working alongside an international team of experts — apply now to be part of a team shaping the future of business presentations. think-cell.com/en/career
---
River Wu
River (xueqing) Wu is a recent University of Michigan Ann Arbor graduate, with a bachelor degree in Computer Science. He has a heavy interest in C++ language and library evolution. He is a core contributor to the Beman project for his work on Beman’s infrastructure inplace_vector. He is actively looking for new opportunities and mentorship in the C++ space in the NYC metropolitan area. Please go chat with him!
---
C++Now 2026 - 27th April - 1st May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: think-cell and Bloomberg
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#futureofcoding #community #boost #cpp #cplusplus #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus #softwaredevelopment
---
Balancing the Books: Access Right Tracking for C++ - Lisa Lippincott - C++Now 2025
---
Writing a well-functioning computer program is an exercise in following rules. Complying with the rules is made much easier when a program can verify its own compliance. This is why we write assertions: they express the rules we wish a program to follow in a way that allows the program to verify its compliance.
But assertions are limited to a particular kind of rule: the rule must be parameterized only by the data the program has at hand. Assertions work wonderfully for “don’t divide by zero,” but they struggle with “don’t read from an uninitialized object” or “don’t write past the end of an array,” and fail entirely with “don’t destroy an object twice” or “don’t write to an object from which another thread might be reading.” The information needed to verify compliance with these rules is simply not available.
So let’s make it available! Let’s try writing extra declarations into programs, and recording the information needed to verify compliance with all the rules. This is, of course, what sanitizers attempt to do. But for compatibility, sanitizers rely on a great deal of guesswork, particularly about objects accessed from more than one translation unit. By providing extra declarations, we can make our intent clear and take the guesswork out of verifying code.
These new declarations form a bookkeeping system for our program. By keeping balanced books, we can detect imminent violations of our programming rules, and head off much undefined behavior before it happens. In this lecture, I will explore the details of this bookkeeping system.
---
Slides: github.com/boostcon/cppnow_presentations_2025/blob/main/Presentations/Balancing_the_Books.pdf
Join think-cell as a C++ Developer and work on cutting-edge challenges with a focus on code excellence, innovation, and working alongside an international team of experts — apply now to be part of a team shaping the future of business presentations. think-cell.com/en/career
---
Lisa Lippincott
Lisa Lippincott designed the software architectures of Tanium and BigFix, two systems for managing large fleets of computers. She's currently assistant chair of the numerics study group of the C++ standardization committee. In her spare time, she studies mathematical logic, and wants to make computer-checked proofs of correctness a routine part of programming.
---
C++Now 2026 - 27th April - 1st May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: think-cell and Bloomberg
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#safety #futureofcoding #boost #cpp #cplusplus #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus #softwaredevelopment
---
Alex Stepanov, Generic Programming, and the C++ STL - Jon Kalb - C++Now 2025
---
This talk introduces Alex Stepanov, the creator of the Standard Template Library and the founder of the generic programming,stl.
Audiences will come away knowing about Alex’s career, but more importantly, knowledge of the Generic Programming paradigm and a deep understanding of the STL, its design, and how best to use and extending it to solve real-world problems with high levels of reliability and efficiency.
---
Join think-cell as a C++ Developer and work on cutting-edge challenges with a focus on code excellence, innovation, and working alongside an international team of experts — apply now to be part of a team shaping the future of business presentations. think-cell.com/en/career
---
Jon Kalb
Jon Kalb is using his decades of software engineering experience and knowledge about C++ to make other people better software engineers. He trains experienced software engineers to be better programmers. He presents at and helps run technical conferences and local user groups.
Jon is passionate about quality code and wants to inspire others to achieve their best engineering work. He is excited about modern C++ and how we can exploit the latest hardware developments with standard, portable C++.
---
C++Now 2026 - 27th April - 1st May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: think-cell and Bloomberg
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#stl #historyofcomputing #boost #cpp #cplusplus #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus #softwaredevelopment
---
Are We There Yet? - The Future of C++ Software Development - Sean Parent - C++Now 2025
---
At the first BoostCon in 2007, I gave the keynote address, "A Possible Future of Software Development." Unfortunately, my work in the area stopped just a couple of years later. Adobe's Software Technology Lab 2.0 is picking it back up. What has happened during the last 18 years, and what does the future look like now?
---
Slides: sean-parent.stlab.cc/papers-and-presentations/#are-we-there-yet
Join think-cell as a C++ Developer and work on cutting-edge challenges with a focus on code excellence, innovation, and working alongside an international team of experts — apply now to be part of a team shaping the future of business presentations. think-cell.com/en/career
---
Sean Parent
Sean Parent is a senior principal scientist and software architect in Adobe’s Software Technology Lab. Sean joined Adobe in 1993, working on Photoshop, and is one of the creators of Photoshop Web, Photoshop Mobile, Lightroom Mobile, and Lightroom Web. In 2009, Sean spent a year at Google working on Chrome OS before returning to Adobe. From 1988 through 1993, Sean worked at Apple, where he was part of the system software team that developed the technologies that allowed Apple’s successful transition to PowerPC.
---
C++Now 2026 - 27th April - 1st May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: think-cell and Bloomberg
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#futureofcoding #boost #cpp #cplusplus #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus #softwaredevelopment
---
std::optional — Standardizing Optionals over References - A Case Study - Steve Downey - C++Now 2025
---
Optionals were first proposed for C++ in 2005.
Optional<T>, where T is constrained not to be a reference, was added in 2017.
Optionals for lvalue references are on track to be added in C++ 26.
What were the concerns that made the process take so long? How were concerns addressed? What did we end up with? And, what remains to be done?
This talk will discuss the early history of Optionals, starting with Boost.Optional and “N1878: A Proposal to Add an Utility Class to Represent Optional Objects (Revision 1)”, and what the early concerns were for the reference specialization. “P1175R0: A Simple and Practical Optional Reference for C++” then re-proposed reference support for C++20, which was not adopted. In 2020, “P1683R0: References for Standard Library Vocabulary Types - an optional<&> case study” surveyed existing behavior of optional references in the wild, and pointed out the trap of assignment behavior being state dependent. In 2023, “P2988R0: Std:Optional” picked up the torch again, and Revision 9 of that is the proposal that is design-approved by the Library Evolution Working Group.
In 2024, “P3168R0: Give Std:Optional Range Support”, the proposal to make optional a range -- as opposed to having a separate range of zero or one -- was adopted. The reference implementation for optional<T&> and the test cases for views::maybe were used to vet the additional interfaces for optional range support. This merged implementation became one of the first Beman libraries, where the library and the optional reference proposal benefited immensely from the visibility and feedback.
The core of the difficulty has been that references are not values, and that types containing a reference do not have value semantics. References do not fit comfortably in the C++ type system. The core value semantic type that also has reference semantics is a pointer, but pointers have under-constrained and unsafe semantics. The lengthy discussion has been a proxy for what reference semantic types should look like in value semantic types within the standard library, particularly for "sum" types, like expected and variant, but also for types, such as single.
This talk will discuss the ISO Standards Process, Project Beman, Value and Reference Semantic Types, Sum and Product Types, CoData, and Lifetime Safety, among other topics.
---
Slides: github.com/boostcon/cppnow_presentations_2025/blob/main/Presentations/std_optional_T&.pdf
Join think-cell as a C++ Developer and work on cutting-edge challenges with a focus on code excellence, innovation, and working alongside an international team of experts — apply now to be part of a team shaping the future of business presentations. think-cell.com/en/career
---
Steve Downey
Steve Downey has been a programmer for more than 30 years. Steve graduated from SUNY Purchase with a BS in Mathematics. A Computer Science degree would have involved two classes before 11:00 am, so was impossible.
He has worked at Bloomberg since 2003, and is currently working as an Engineer on the C++ Infrastructure team.
---
C++Now 2026 - 27th April - 1st May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: think-cell and Bloomberg
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#optionals #references #boost #cpp #cplusplus #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus
---
Advanced Ranges - Writing Modular, Clean, and Efficient Code with Custom Views - Steve Sorkin - C++Now 2025
---
In this talk, we will explore the power of C++20 ranges and how custom views can simplify complex data transformations and improve code expressiveness. By creating reusable, lazy-evaluated views that operate on ranges, developers can avoid unnecessary intermediate containers and simplify complex data transformations. While standard views like std::views::transform and std::views::filter offer powerful tools for basic operations, custom views provide additional flexibility, allowing developers to create highly specialized transformations and handle more complex, state-dependent logic. Through real-world examples, we will demonstrate how custom views enhance performance and maintainability, showcasing how they can streamline everything from basic filtering to complex, state-dependent transformations in modern C++ applications.
---
Slides: github.com/boostcon/cppnow_presentations_2025/blob/main/Presentations/Advanced_Ranges.pdf
Join think-cell as a C++ Developer and work on cutting-edge challenges with a focus on code excellence, innovation, and working alongside an international team of experts — apply now to be part of a team shaping the future of business presentations. think-cell.com/en/career
---
Steve Sorkin
Steve Sorkin has been at Bloomberg since 2019, where he is a software engineer working on Bloomberg’s Execution Management System (EMSX) as part of the Portfolio Trading Engineering team. He is enthusiastic about writing clean, scalable, and maintainable code for use in low latency and high throughput applications. Prior to joining Bloomberg, Steve worked as a securities/derivatives attorney. He holds a bachelor’s degree in computer engineering from Lehigh University, a master’s degree from Georgia Tech, and a J.D. from Harvard Law School.
---
C++Now 2026 - 27th April - 1st May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: think-cell and Bloomberg
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#ranges #views #boost #cpp #cplusplus #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus
---
Zngur - Simplified Rust/C++ Integration - David Sankel - C++Now 2025
---
Struggling with Rust/C++ interop? Existing solutions often involve excessive boilerplate, feature gaps, or build system constraints. This talk introduces Zngur, a new approach simplifying integration by leveraging the subset relationship between Rust and C++ semantics. We'll explore Zngur's architecture and demonstrate how it enables more seamless interaction between these languages.
---
Slides: github.com/boostcon/cppnow_presentations_2025/blob/main/Presentations/Zngur.pdf
Join think-cell as a C++ Developer and work on cutting-edge challenges with a focus on code excellence, innovation, and working alongside an international team of experts — apply now to be part of a team shaping the future of business presentations. think-cell.com/en/career
---
David Sankel
David Sankel is a Principal Scientist, leads Adobe's Software Technology Lab, and is an active member of the C++ Standardization Committee. His experience spans microservice architectures, CAD/CAM, computer graphics, visual programming languages, web applications, computer vision, and cryptography. He is a frequent speaker at C++ conferences and specializes in large-scale software engineering and advanced C++ topics. David’s interests include dependently typed languages, semantic domains, EDSLs, and functional reactive programming. He was the project editor of the C++ Reflection TS, is the Executive Director of the Boost Foundation, and authored several C++ proposals including pattern matching and language variants.
---
C++Now 2026 - 27th April - 1st May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: think-cell and Bloomberg
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#rustlang #interoperability #boost #cpp #cplusplus #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus
---
How to Build a Flexible Robot Brain One Bit at a Time - Ramon Perez - C++Now 2025
---
Your roomba can't philosophize about the nature of dust, and your washing machine won't debug your code while spinning your clothes - not because they lack ambition, but because running AI models on constrained hardware has traditionally meant sacrificing either performance or memory - usually both. Cortex.cpp is an open-source engine to run AI models on everything from Raspberry Pis to industrial robots without breaking the bank. This talk goes over how AI models work on different hardware from a C++ perspective, different ways of using Python from within C++ and vice-versa, and how to enable near-metal performance through aggressive bit manipulation, custom memory allocators, and SIMD optimizations. We will also go through the architecture of Cortex and compare it to different C++ implementations while highlighting the tradeoffs we have been making along the way. If you're interested in pushing the boundaries between AI and constrained hardware or just want to see how far you can stretch a bit, this session will show you how we're giving everyday devices the gift of intelligence, one carefully-aligned memory block at a time.
---
Join think-cell as a C++ Developer and work on cutting-edge challenges with a focus on code excellence, innovation, and working alongside an international team of experts — apply now to be part of a team shaping the future of business presentations. think-cell.com/en/career
---
Ramon Perez
Ramon is a research engineer and educator working at the intersection of AI and robotics at Menlo Labs. Currently, he is helping build the brain of a robot, a C++ tool to help bring different AI models into robots. Before that, he worked as a product developer and researcher, creating custom data tools, running workshops and developing training programs for clients in various industries. He has participated in several conferences and meetup events including PyCon, SciPy, PyData, MLOps World, and ODSC. In his free time, you will most likely find him traveling to a new place, mountain biking, or both.
---
C++Now 2026 - 27th April - 1st May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: think-cell and Bloomberg
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#robotics #robot #ai #boost #cpp #cplusplus #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus
---
Post-Modern Cmake - From 3.0 to 4.0 - Vito Gamberini - C++Now 2025
---
CMake 4.0 is here, which is the perfect opportunity to talk about the features that have made it in over the last 10 years of development. Much like C++, the phrase "modern CMake" has become overloaded, referring to over a decade of evolving practices. Let's talk about what CMake-based projects should look like in the new 4.0 era.
---
Slides: github.com/boostcon/cppnow_presentations_2025/blob/main/Presentations/Post-Modern_Cmake.pdf
Join think-cell as a C++ Developer and work on cutting-edge challenges with a focus on code excellence, innovation, and working alongside an international team of experts — apply now to be part of a team shaping the future of business presentations. think-cell.com/en/career
---
Vito Gamberini
Originally a member of the Naval Nuclear Propulsion community with the US Navy, Vito Gamberini transitioned to C/C++ developer and educator in his post-naval career.
Vito lectured on computer architecture and toolchain development at NYU Tandon School of Engineering for four years before joining Kitware to work on build tooling for a range of language communities, with a focus on C/C++.
---
C++Now 2026 - 27th April - 1st May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: think-cell and Bloomberg
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#tooling #devtools #cplusplusprogramming #boost #cpp #cplusplus #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus
---
C++ Memory Safety in WebKit - Geoffrey Garen - C++Now 2025
---
Transitioning to memory safe programming is a requirement for modern browser engines. But… how? Is memory safety even possible in a large C++ codebase? And if so, what would it look like?
This talk will review the approach we’ve taken in WebKit over the last year, and the results we’ve achieved. I’ll define memory un-safety and memory safety from the perspective of an engineering project. Then I’ll show how we use safe idioms backed by static analysis to eliminate categories of un-safety. Notably, we do not use analysis to search for bugs; rather, we use it to define a safer C++ dialect.
Finally I’ll show how we approach transitioning to a memory safe language (Swift) — not as an either/or, but as a yes/and, in which the work we do in C++ creates a composable interface for verifying safety across programming languages.
---
Slides: github.com/boostcon/cppnow_presentations_2025/blob/main/Presentations/C++_Memory_Safety_in_WebKit.pdf
Join think-cell as a C++ Developer and work on cutting-edge challenges with a focus on code excellence, innovation, and working alongside an international team of experts — apply now to be part of a team shaping the future of business presentations. think-cell.com/en/career
---
Geoffrey Garen
I'm the WebKit Architect @ Apple. I've been working on WebKit, as an engineer and manager, for about 20 years. During that time, I've worked on just about everything in WebKit, including engineering and management, programming languages, performance, API design, process architecture, OS integration, porting to various OS's and CPU's, and security. My current focus is WebKit's transition to memory safe programming.
---
C++Now 2026 - 27th April - 1st May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: think-cell and Bloomberg
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#safety #webkit #staticanalysis #boost #cpp #cplusplus #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus
https://www.cppnow.org
---
From SIMD Wrappers to SIMD Ranges - Part 2 Of 2 - Denis Yaroshevskiy & Joel Falcou - C++Now 2025
---
Basic std::simd was voted into the working draft in November. But there are active ongoing discussions, with a slew of proposals still coming.
One of those proposals is probably a ranges library. In the eve library we already have one. We implemented a lot of algorithms in abstractions not dissimilar to the ones being standardized.
We’d like to share our experience.
In the first part of the talk we will go through a few algorithms at a high level: memcmp, reduce, find min_element, search (subject to change).
In the second half, armed with that knowledge, we will go through different problems and their possible solutions, along with their tradeoffs, when designing a SIMD ranges library.
---
Slides: denisyaroshevskiy.github.io/presentations/dyaroshev_presentations/conference_talks/from_simd_wrappers_2.html
Join think-cell as a C++ Developer and work on cutting-edge challenges with a focus on code excellence, innovation, and working alongside an international team of experts — apply now to be part of a team shaping the future of business presentations. think-cell.com/en/career
---
Denis Yaroshevskiy
Denis is a performance engineer at Meta, working on the folly team. He is one the maintainers for EVE - open source simd library, where he is mostly responsible for the algorithms. He also has a few contributions to libc++, chromium/base and some other open source.
---
C++Now 2026 - 27th April - 1st May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: think-cell and Bloomberg
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#simd #ranges #algorithms #boost #cpp #cplusplus #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus
https://www.cppnow.org
---
From SIMD Wrappers to SIMD Ranges - Part 1 Of 2 - Denis Yaroshevskiy & Joel Falcou - C++Now 2025
---
Basic std::simd was voted into the working draft in November. But there are active ongoing discussions, with a slew of proposals still coming.
One of those proposals is probably a ranges library. In the eve library we already have one. We implemented a lot of algorithms in abstractions not dissimilar to the ones being standardized.
We’d like to share our experience.
In the first part of the talk we will go through a few algorithms at a high level: memcmp, reduce, min_element, copy_if.
In the second half, armed with that knowledge, we will go through different problems, their possible solutions and tradeoffs, which arise when designing a SIMD ranges library.
---
Slides: denisyaroshevskiy.github.io/presentations/dyaroshev_presentations/conference_talks/from_simd_wrappers_1.html
Join think-cell as a C++ Developer and work on cutting-edge challenges with a focus on code excellence, innovation, and working alongside an international team of experts — apply now to be part of a team shaping the future of business presentations. think-cell.com/en/career
---
Denis Yaroshevskiy
Denis is a performance engineer at Meta, working on the folly team. He is one the maintainers for EVE - open source simd library, where he is mostly responsible for the algorithms. He also has a few contributions to libc++, chromium/base and some other open source.
---
C++Now 2026 - 27th April - 1st May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: think-cell and Bloomberg
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#simd #ranges #algorithms #boost #cpp #cplusplus #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus
---
Harnessing constexpr - A Path to Safer C++ - Mikhail Svetkin - C++Now 2025
---
In the ongoing debate about the safety of C++, undefined behavior (UB), bounds checking, and memory leaks often dominate the conversation.
While some argue that these pitfalls are inherent to the language’s power and flexibility, modern C++ standards have introduced mechanisms to mitigate these risks.
This talk explores how leveraging constexpr from its inception in C++11 through its evolution in C++26, can significantly enhance code safety.
We’ll look at common safety issues in C++, explore tools and sanitizers that can help, and demonstrate how constexpr can be a powerful but often overlooked solution.
---
Slides: github.com/boostcon/cppnow_presentations_2025/blob/main/Presentations/Harnessing_constexpr_A_Path_to_Safer_C++.pdf
Join think-cell as a C++ Developer and work on cutting-edge challenges with a focus on code excellence, innovation, and working alongside an international team of experts — apply now to be part of a team shaping the future of business presentations. think-cell.com/en/career
---
Mikhail Svetkin
I am a Principal Software Engineer at reMarkable, with over 12 years of experience designing and developing software across diverse projects, platforms, and environments—with and without operating systems, using C++.
I have a passion for analyzing code to understand its inner workings and identify opportunities for improvement.
My main areas of interest include libraries, frameworks, architecture, build systems, package management, and ‘constexpr all the things.’
---
C++Now 2026 - 27th April - 1st May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: think-cell and Bloomberg
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#safety #memory #boost #cpp #cplusplus #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus
---
Safer C++ at Scale with Static Analysis - Yitzhak Mandelbaum - C++Now 2025
---
Code safety is quickly changing from a luxury to a necessity, driven by increased security requirements and regulatory pressure. Rust demonstrates that it is possible to achieve memory safety without compromising performance. Existing C++ codebases are under pressure to adapt to this new environment. This is especially true for organizations like Google, where a massive C++ codebase presents unique challenges for ensuring memory safety at scale.
In this talk, I'll dive into a suite of projects at Google that use static analysis and code transformations to dramatically improve the C++ safety experience. These static approaches offer significant cost advantages over dynamic techniques and enable us to virtually eliminate entire classes of bugs, moving beyond merely catching them in testing or later stages. I'll discuss our efforts in null safety, spatial safety, and uninitialized memory safety, including unique obstacles in each and our (potential) solutions. I'll also touch on the major open challenge: temporal safety.
---
Slides: github.com/boostcon/cppnow_presentations_2025/blob/main/Presentations/Safer_Cpp_at_Scale_with_Static_Analysis.pdf
Join think-cell as a C++ Developer and work on cutting-edge challenges with a focus on code excellence, innovation, and working alongside an international team of experts — apply now to be part of a team shaping the future of business presentations. think-cell.com/en/career
---
Yitzhak Mandelbaum
Yitzhak Mandelbaum is a Staff Software Engineer at Google, leading the C++ Static Safety team. He and his team are committed to improving memory safety in C++ through innovative static analysis techniques. Yitzhak has been tackling challenges at the intersection of C++ security, static analysis, and large-scale change tooling since 2016, leading development of the Clang Dataflow Analysis and Clang Transformer frameworks, along the way. Prior to Google, he researched parsing, type theory and computer security at CMU's Software Engineering Institute and AT&T Labs-Research. He holds a PhD (2006) and an A.B. (1999) in Computer Science from Princeton University.
---
C++Now 2026 - 27th April - 1st May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: think-cell and Bloomberg
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#safety #staticanalysis #google #boost #cpp #cplusplus #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus
---
Extending std::execution - Implementing Custom Algorithms with Senders & Receivers - Robert Leahy - C++Now 2025
---
P2300 introduces `std::execution` and the Senders & Receivers (S&R) model as a new paradigm for expressing asynchronous computation. `std::execution` specifies a fixed set of algorithms that, in some sense, define the baseline DSL of S&R, but this set is not exhaustive. Extending it to cover new use cases is possible, but the standard provides no guide to doing so, because the standard is not a guide.
This talk will detail the process of adding a new S&R algorithm by examining the implementation of `when_all_range`, a variation of `when_all` which is part of `std::execution`. Through this example, the audience will see how transformations and control flow can be expressed within `std::execution`, how new algorithms fit into the broader execution model, and what considerations ensure they remain efficient and composable.
By the time they leave the talk, attendees will have a clearer understanding of how to extend the S&R framework and implement `std::execution`-based algorithms that integrate seamlessly with modern C++ codebases.
---
Slides: github.com/boostcon/cppnow_presentations_2025/blob/main/Presentations/Extending_std_execution.pdf
Join think-cell as a C++ Developer and work on cutting-edge challenges with a focus on code excellence, innovation, and working alongside an international team of experts — apply now to be part of a team shaping the future of business presentations. think-cell.com/en/career
---
Robert Leahy
Robert is a graduate of the University of Victoria where he specialized in graphics, gaming, and digital geometry processing. After spending 4.5 years in full stack web development he pivoted to financial infrastructure in early 2016 and now works on next generation market data storage and retrieval mechanisms. In 2019 he became involved in the ISO C++ committee with a particular focus on library evolution.
---
C++Now 2026 - 27th April - 1st May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: think-cell and Bloomberg
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#executions #executor #boost #cpp #cplusplus #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus
---
Missing (and Future?) C++ Range Concepts - Jonathan Müller - C++Now 2025
---
Iterators and ranges have been essential parts of the C++ standard library since its inception. With C++20, they were brought to the next level in the form of `std::ranges`: We now have formalized requirements on the algorithms, lazy views to enable pipelines, and much more powerful iterators. Since then, more and more views and algorithms have been added in C++23.
However, the fundamental concepts have mostly been left unchanged, even though there are still some rough edges. This talk explores new kinds of ranges that are not possible with the existing C++ range concepts. We will first look at compile-time-sized, approximately sized, and infinite ranges, then at noncontiguous ranges with contiguous chunks. Finally, we will explore an optimization to make many algorithms much more efficient by using a pushed-based `for_each_while(rng, sink)` customization point instead of pull-based iterators.
Optimization gives us a glimpse into a world where ranges are no longer constrained by iterators, enabling heterogeneous ranges of multiple types. Heterogeneous ranges allow us to use types like `std::tuple` in range algorithms, do type-based metaprogramming using regular views, and efficiently handle ranges over polymorphic types. This truly takes the power of ranges to the next level!
---
Slides: github.com/boostcon/cppnow_presentations_2025/blob/main/Presentations/Missing_and_Future_Cpp_Range_Concepts.pdf
Join think-cell as a C++ Developer and work on cutting-edge challenges with a focus on code excellence, innovation, and working alongside an international team of experts — apply now to be part of a team shaping the future of business presentations. think-cell.com/en/career
---
Jonathan Müller
Jonathan is a Software Engineer at think-cell. There, he is responsible for maintaining think-cell's core libraries, which include a custom range library, a fast and convenient JSON parser, and many other utilities and data structures to write elegant C++ code. Before working at think-cell, he wrote many useful open-source C++ libraries. Jonathan is also a member of the C++ standardization committee, where he serves as the chair of the std::ranges study group and is a frequent conference speaker.
---
C++Now 2026 - 27th April - 1st May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: think-cell and Bloomberg
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#ranges #algorithms #boost #cpp #cplusplus #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus #softwaredevelopment
---
Welcome to v1.0 of the meta::[[verse]]! - Inbal Levi - C++Now 2025
---
This talk will introduce what is (likely) the final version of the "Reflection" feature targeting C++26.
With a proposal to introduce reflection to C++26 (including the “std::meta” namespace) slated to be voted into the standard in June 2025, we can already start imagining a whole new world of possibilities.
In this session, we will dive into reflection and its transformative potential within our codebases. We will start with a brief history of "reflection" history. We'll continue with an introduction of utilities from the latest reflection proposal. Then, we delve deeper into practical applications and demonstrate solutions to problems that commonly use reflection and the power it holds. For the last part, we will explore the possibilities within “Reflection Libraries”. This includes both “traditional” libraries which provide functionality, and more “novel” approaches which reshape users’ code. We will look at examples of what such libraries can cover, and demonstrate potential directions the future holds. Last but not least, we will discuss how "Reflection" may impact the way we manage our codebases and the delivery process.
Join us as we traverse the meta::[[verse]]!
---
Slides: slides.com/inballevi/welcome-to-v1-0-of-the-meta-verse-cpp-now
Join think-cell as a C++ Developer and work on cutting-edge challenges with a focus on code excellence, innovation, and working alongside an international team of experts — apply now to be part of a team shaping the future of business presentations. think-cell.com/en/career
---
Inbal Levi
Inbal Levi is a Lead Software Engineer at Microsoft with an interest in code readability, compilers, language and software design.
She is an active member of the ISO C++ Standards Committee as Library Evolution Work Group Chair, and as the ISO C++ Israeli NB Chair.
Inbal is also a director at ISO C++ Foundation and the Boost Foundation and puts effort into evolving both the local and international C++ communities, as an organizer of the CoreC++ conference and meetup group, and as the program chair of C++Now.
---
C++Now 2026 - 27th April - 1st May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: think-cell and Bloomberg
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#reflection #boost #cpp #cplusplus #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus #softwaredevelopment
---
Beyond Sequential Consistency - Leveraging Atomics for Fun and Profit - Christopher Fretz - C++Now 2025
---
In 2011, C++ introduced a formally defined memory model, providing a foundation for portable, multi-threaded code with well-defined correctness guarantees. This was a major milestone, enabling expressive threading primitives and safe concurrency patterns while allowing low-level optimizations for performance.
By default, C++ atomics enforce sequential consistency, which ensures intuitive, predictable behavior. However, these strong guarantees often exceed what’s necessary for correctness and come with a performance cost.
This talk delves into weaker memory orderings, particularly acquire/release and relaxed semantics, using a ring buffer as a practical example of how they can be used. We’ll also examine how the C++ memory model maps to real hardware, focusing on x86’s native guarantees, and comparing against less coherent platforms like ARM. We'll explore how strategic use of weaker synchronization can unlock significant performance gains without sacrificing correctness.
---
Slides: github.com/boostcon/cppnow_presentations_2025/blob/main/Presentations/Beyond_Sequential_Consistency.pptx
Join think-cell as a C++ Developer and work on cutting-edge challenges with a focus on code excellence, innovation, and working alongside an international team of experts — apply now to be part of a team shaping the future of business presentations. think-cell.com/en/career
---
Christopher Fretz
Chris is a senior C++ engineer working at Bloomberg LP on a developer experience team for a large organization within the company's market data pipeline. Chris has 8 years of experience working professionally with C++ and has worked on a wide breadth of projects, from low-latency stream processing, to lock free data structure design, to DevX and build system orchestration.
---
C++Now 2026 - 27th April - 1st May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: think-cell and Bloomberg
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#performance #atomic #boost #cpp #cplusplus #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus #softwaredevelopment
---
Undefined Behavior From the Compiler’s Perspective - A Deep Dive Into What Makes UBs So Dangerous, and Why People Rightfully Continue To Use Them Anyways - Shachar Shemesh - C++Now 2025
---
There are two ways people react to Undefined Behavior (UB) in C++. One reaction is to make this the big bad demon, out to eat all of your bits. The other is to shrug it off as some niche subject which won't matter much.
Both attitudes have some merit while, at the same time, being quite wrong.
This talk approaches UBs, not as the big bad wolf, but from the compiler's perspective. It covers what they are, what the compiler does with them and what makes them dangerous. It also covers C++ misguided approach to them, and what the C++ language (and compilers) can (and should) do to make life easier on developers.
---
Slides: docs.google.com/presentation/d/16Vq2vzsXMqtK7DWbH-RuhCgJNJneF37D8tQLvyMTcR4/edit?usp=sharing
Join think-cell as a C++ Developer and work on cutting-edge challenges with a focus on code excellence, innovation, and working alongside an international team of experts — apply now to be part of a team shaping the future of business presentations. think-cell.com/en/career
---
Shachar Shemesh
Shachar started programming over 40 years ago, and still finds pleasure in it. Programming at all levels, from bare metal to GUI, and even building whole computers on FPGAs, some with even more bits than 8.
Shachar is operating a technological YouTube channel called "Some Assembly required" and a less technical one called "Less Assembly required".
---
C++Now 2026 - 27th April - 1st May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: think-cell and Bloomberg
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#compiler #ub #boost #cpp #cplusplus #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus
---
import CMake; // Mastering C++ Modules - Marching Towards Standard C++ Dependency Management - Bill Hoffman - C++Now 2025
---
C++20 modules represent a significant advancement in the language, promising to improve compile times, enhance code organization, and streamline dependency management. This talk is tailored for developers eager to harness the power of C++20 modules in their projects. We will explore the fundamentals of building both shared and static libraries using CMake, the de facto build system for C++. Attendees will gain practical insights into setting up build files and organizing source code with modules. We will dissect real-world open-source module projects, offering a concrete understanding of how modules are being used in the wild. A key focus will be on the "import std" model, demonstrating how to create a module interface for large, existing libraries, facilitating a smoother transition to modular codebases. Significantly, CMake released non-experimental support for C++20 modules in October 2023, marking a pivotal moment for developers. Visual Studio, Clang and GCC all have some level of support for modules. However, the adoption of this feature is still in its early stages, with relatively few projects currently leveraging it. This session will bridge that gap, providing the essential knowledge and hands-on techniques to confidently integrate C++20 modules into your development workflow. By the end of this session, participants will be equipped with the knowledge to effectively use CMake for building projects with C++20 modules, making the most of this cutting-edge feature to enhance their codebases. Whether you're maintaining legacy code or starting a new project, this talk will provide the essential tools and techniques to master C++20 modules.
---
Slides: github.com/boostcon/cppnow_presentations_2025/blob/main/Presentations/Import_CMake_Mastering_Cpp_Modules.pdf
Join think-cell as a C++ Developer and work on cutting-edge challenges with a focus on code excellence, innovation, and working alongside an international team of experts — apply now to be part of a team shaping the future of business presentations. think-cell.com/en/career
---
Bill Hoffman
Mr. Hoffman is a founder of Kitware and currently serves as Chairman of the Board, Vice President, and Chief Technical Officer (CTO). He is the original author and la ead architect of CMake, an open source, cross-platform build and configuration tool that is used by millions of developers around the world, and he is the co-author of the accompanying text, Mastering CMake. Using his 20+ years of experience with large software systems development, Mr. Hoffman is also a major technical contributor to Kitware’s Visualization Toolkit, Insight Toolkit, and ParaView projects.
As CTO, Mr. Hoffman’s emphasis is on software development methodologies and establishing best practices across the breadth of Kitware’s development efforts. As one of the visionaries leading the quality software process efforts at Kitware, Bill has been instrumental in adopting agile programming practices, fueling Kitware’s software development. He is a frequent speaker on these subjects at CppCon, C++Now, and other conferences.
Mr. Hoffman received a B.S. in Computer Science from the University of Central Florida and an M.S. in Computer Science from Rensselaer Polytechnic Institute (RPI). Prior to the formation of Kitware, he spent nine years at the General Electric Corporate Research and Development center, working in the Computer Vision Group. He has planned and taught several graduate-level courses at RPI as well as a course in object-oriented programming at New York University.
---
C++Now 2026 - 27th April - 1st May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: think-cell and Bloomberg
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#tooling #builds #boost #cpp #cplusplus #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus
---
How to Avoid Headaches with Simple CMake - Bret Brown - C++Now 2025
---
CMake headaches? Modern CMake has been around for about a decade now, but in practice CMake use tends to be uneven and overcomplicated. This causes frustration among maintainers and steep learning curves among developers. It also results in overly complicated C++ projects. Even first-class open-source C++ projects often have CMake snarls and snags. Is there a basic CMake approach that just works?
In this talk, hear from a CMake veteran about how to keep it simple with CMake. We’ll cover modern CMake principles to keep in mind while maintaining projects built with CMake. We’ll talk about up-to-date CMake basics you’ll find useful – and (some of) the bells and whistles you can skip. To make it easier to keep coming back to these concepts, these recommendations will all be demonstrated with a project you can refer back to. Along the way, we’ll cover some new open-source C++ projects meant to improve our quality of life, while maintaining that “it just works” experience.
---
Join think-cell as a C++ Developer and work on cutting-edge challenges with a focus on code excellence, innovation, and working alongside an international team of experts — apply now to be part of a team shaping the future of business presentations. think-cell.com/en/career
---
Bret Brown
Bret likes making authoring and maintaining C++ codebases simpler and more intuitive by treating projects more like cattle and less like pets. He is especially interested in the software development lifecycle, development automation, modern build systems, packaging, code transformation, software governance, and code analysis.
Bret is currently an engineer in Bloomberg's developer experience department. He has worked in embedded C++ and safety critical C++ for previous employers.
---
C++Now 2026 - 27th April - 1st May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: think-cell and Bloomberg
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#tooling #builds #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus #softwaredevelopment #coder #talk
---
Lightning Talk: Submarines and Spies - Sherry Sontag - C++Now 2024
---
Sherry Sontag, a former author and now Bloomberg employee, shares an intriguing story about her past work on submarines and spies during the Cold War. She highlights the similarities between submarine missions and the audience's experiences, emphasizing creativity and bravery over strict military protocols. One particular story revolves around a submarine captain who ingeniously discovered and tapped Soviet underwater communication cables, providing crucial intelligence. This operation revealed that the Soviets were as fearful of a first strike as the Americans, contributing to the end of the Cold War by fostering mutual understanding. The speaker concludes by inviting the audience to read her book for more detailed accounts of these fascinating missions.
---
---
Sherry Sontag
Sherry Sontag came to Bloomberg Engineering after co-authoring “Blind Man’s Bluff,” a New York Times bestseller about submarine espionage during the Cold War. Hired by Bloomberg 18 years ago for her ability to talk to anyone and actually listen, she is now working to create community consensus among developers for rules governing Bloomberg's massive C++ code base. She is a member of Bloomberg's Code Governance Solutions team.
She is a graduate of Columbia University’s Graduate School of Journalism and Barnard College, Columbia University.
---
C++Now 2025 - 28th April - 2nd May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: millennium and think-cell
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#coldwar #submarines #cia #usnavy #spying
---
Lightning Talk: Hilbert Hotel - The Grand Reopening - Tobias Loew - C++Now 2024
---
Continuing the story of David and Donald Hilbert's family business
---
Tobias Loew
Born in the analog year of 1973.
Made my first programming experience on a Commodore 64.
Wrote a course-management software while in high-school (1992), which is still in use.
Finished university with a Phd in Maths: math-models for functional languages.
Started C++ in 1999 working on a thermodynamic simulation tool.
Got a large Boost when I stumbled over its libraries.
Frequent BoostCon/C++Now attendant/speaker since then.
---
C++Now 2025 - 28th April - 2nd May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: millennium and think-cell
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#boost #thoughtexperiment #infinity #cpp #paradox
---
Lightning Talk: Reflecting Types in C++17/20 - Patrick Roberts - C++Now 2024
---
This lightning talk explores how modern C++ standards have enabled us to manipulate type lists using constexpr range algorithms in C++17 onward.
---
I've been writing C++ professionally for 4 years now, and have had the privilege to develop using the latest available standards, and to learn working alongside some of the leading experts in C++ library development.
---
C++Now 2025 - 28th April - 2nd May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: millennium and think-cell
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#boost #cpp #cplusplus #cppprogramming #softwaredevelopment
---
Lightning Talk: Debugging Like House - SW Differential Diagnosis - Michael Okyen - C++Now 2024
---
In the TV series House, the doctors use a method called 'differential diagnosis' to solve difficulty medical anomalies. In this talk, we'll discuss how this technique can also be used to debug challenging software problems more strategically.
---
Michael Okyen
Michael is a Staff Software Engineer at Plexus in Raleigh, NC, where he primarily focuses on developing embedded software for medical devices. Over a decade of experience at contract engineering companies has given him opportunities to work on a variety of projects ranging from green-field design to final verification testing. Michael is passionate about software design, architecture, and unit testing, and he is always looking for opportunities to learn.
---
C++Now 2025 - 28th April - 2nd May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: millennium and think-cell
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#boost #cpp #softwareengineering #softwaredevelopment #debugging
---
Lightning Talk: Fun? with NTTPs in C++ - Ben Deane - C++Now 2024
---
Some oddities about NTTPs
---
Ben Deane
Ben has been programming in C++ for this whole millennium. He spent just over 20 years in the games industry working for companies like EA and Blizzard; many of the games he worked on used to be fondly remembered but now he’s accepted that they are probably mostly forgotten. After getting more interested in modern C++, in the teens he started giving internal company talks and then talks at various conferences, spreading ideas about types, algorithms and declarative and functional techniques.
In 2018 he left the games industry and worked in finance for a short spell, writing high-frequency trading platforms using the most modern C++ that compilers could support. Now he is a Principal Engineer at Intel where he puts monads inside your CPU.
---
C++Now 2025 - 28th April - 2nd May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: millennium and think-cell
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#boost #cpp #cppprogramming #cplusplus #softwaredevelopment
---
Designing a Slimmer Vector of C++ Variants - Christopher Fretz - C++Now 2024
---
Heterogeneous containers ("vectors of variants") are an extremely flexible and useful abstraction across many data domains, but std::vector<std::variant<...>> can exhibit extremely bad memory characteristics for mixed types of disparate size, especially if the largest types are relatively uncommon in practice. Variants always have to be at least as large as their largest contained type, and vector implicitly requires all of its members to be the same size, leading to significant bloat in such cases. This talk explores the design of a bit-packed replacement data structure that can achieve massive improvements in memory usage while exporting essentially the same API.
---
Slides: github.com/boostcon/cppnow_presentations_2024/blob/main/Presentations/Designing_a_Slimmer_Vector_of_Variants.pdf
---
Christopher Fretz
Chris is a senior C++ engineer working at Bloomberg LP on a developer experience team for a large organization within the company's market data pipeline. Chris has 8 years of experience working professionally with C++ and has worked on a wide breadth of projects, from low-latency stream processing, to lock free data structure design, to DevX and build system orchestration.
---
C++Now 2025 - 28th April - 2nd May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: millennium and think-cell
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#boost #cpp #cppprogramming #cplusplus #softwareengineering
---
Closing Keynote: C++ Development Development Tools: Past, Present and Future - Marshall Clow - C++Now 2024
---
We are tool-using animals. We create tools to improve our lives. As C++ software developers, we use tools to make better software. They enable us to do things that we have never done before. But they also limit the things that we can do.
In this talk, I will explore the history of C++ development tools, talk about how people have dealt with limitations in their tools (including writing new tools), and how the last decade has seen an explosion of new, more powerful C++ tools.
New tools are being written all the time. What does the future hold? More tools, certainly. Better tools, certainly. But what kind of tools? I don't claim to know the future, but I will offer some (hopefully) thought-provoking ideas.
---
Slides: github.com/boostcon/cppnow_presentations_2024/blob/main/Presentations/Development_tools-Past_Present_and_Future.pdf
---
Marshall Clow
Marshall has been writing code for more than 40 years. He has been writing open source code for 20+ years. He contributes to Boost (since 2002), was the tech lead for libc++ for many years, and was the chair of the Library Working Group of the C++ standards committee.
---
C++Now 2025 - 28th April - 2nd May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: millennium and think-cell
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#boost #cpp #cppprogramming #softwaredeveloper #cplusplusprogramming
---
Glean: C++ Code Indexing at Meta - Michael Park - C++Now 2024
---
Code indexing is an important technology the powers many essential developer tools. Code navigation in IDEs, to symbol search, to semantic analysis tools such as dead code elimination, etc. Glean is a system built at Meta to accurately index multiple languages of very large codebases. This includes the very large C++ codebase at Meta, but also the build system (Buck2) definitions, and the RPC protocol (Thrift) definitions which we can tie together to get an understanding of the full codebase. This talk will focus on the the intricacies of indexing C++ itself, such as collecting accurate information of macro definitions and their usage.
---
Slides: github.com/boostcon/cppnow_presentations_2024/blob/main/Presentations/glean.pdf
---
Michael Park
Michael is a Software Engineer at Meta, working on developer productivity efforts. He has been working on a C++ code indexer for Glean, a system for collecting, deriving and querying facts about source code.
---
C++Now 2025 - 28th April - 2nd May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: millennium and think-cell
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#boost #cpp #softwareengineering #meta #cppprogramming
---
Modernizing Finite State Machines Implementation in C++ - Empower Simplicity and Boost Performance With std::variant - Amandeep Chawla - C++Now 2024
---
Finite State Machines (FSMs) are fundamental tools in computer science for modeling behavior in various systems, from software applications to hardware controllers. Traditionally, implementing FSMs in C++ involved using multiple inheritance hierarchies for representing states, events and actions along with heap-allocated objects. However, with the introduction of std::variant in modern C++, there is a compelling opportunity to revolutionize FSM design, offering simplicity, type safety, and performance improvements.
In this talk, we explore how leveraging std::variant transforms FSM implementation, allowing for a more intuitive representation of states and transitions. By embracing variant-based FSMs, developers can streamline code, enhance readability, and mitigate common pitfalls associated with traditional FSM designs. Furthermore, we delve into performance considerations and showcase how std::variant facilitates efficient state management, removing need for heap allocation at all.
Attendees will gain insights into the principles of FSM design, understand the benefits of adopting std::variant for FSM implementation, and learn practical strategies for incorporating modernized FSMs into their C++ projects. Whether you're a seasoned C++ developer seeking to simplify FSMs or a newcomer exploring advanced language features, this talk offers valuable perspectives on harnessing the power of std::variant to elevate FSM development to new heights.
---
Slides: github.com/boostcon/cppnow_presentations_2024/blob/main/Presentations/Modernizing_Finite_State_Machines_Implementation.pdf
---
Amandeep Chawla
Amandeep Chawla is a seasoned software engineer with over 20 years of experience in C++. Since graduating in 2002, he has been actively working with C++ throughout his career. In his early years, Amandeep specialized in embedded systems, where he utilized a small subset of C++. This foundational experience provided him with a deep understanding of low-level programming and resource-constrained environments. In 2006, Amandeep joined Adobe, where he has held various roles over the past 17 years. Throughout his tenure at Adobe, he has been extensively involved in projects that heavily rely on C++. As a Senior Computer Scientist - II, Amandeep is currently a valued member of the core team responsible for Adobe CC Libraries. His contributions to the team involve leveraging C++ to develop robust and cross-platform solutions. With his extensive experience in C++, Amandeep has gained valuable insights into the language's strengths, limitations, and best practices. He has a deep appreciation for tackling complex challenges and finding innovative solutions to optimize performance, maintainability, and cross-platform compatibility.
---
C++Now 2025 - 28th April - 2nd May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: millennium and think-cell
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#boost #cpp #cppprogramming #softwareengineering #cplusplusprogramming
---
The C++ Vector Challenge - Lisa Lippincott - C++Now 2024
---
Many years ago, a conversation with a C++ luminary lead me to focus my attention on a particular question: How can we extend a procedural language like C++ to express the reasoning that underlies our programs in a way that can be statically checked? And how can we make it practical to express the interfaces between the various parts of our programs, so that we may check that the parts fit together properly?
In the years since I have made some progress, particularly with the interfaces for functions. But I’ve held onto one remark from that early conversation, taking it as a challenge, as a milepost on the horizon: someday I should write a formal interface for the standard template vector.
Twenty years later, vector remains a difficult problem. In this lecture I will describe not only the progress I’ve made, but also the difficulties that remain, and the properties that make vector so troublesome. It will also be my first foray into describing object interfaces.
So this talk can be seen from several angles. For some, it will be a deep dive into the way vector works. For others, it will explore the specification of object interfaces. And underlying that, it will examine some streams of thought that came together in C++, and the conflicts between those streams that impede formal specification.
---
Slides: github.com/boostcon/cppnow_presentations_2024/blob/main/Presentations/The_Vector_Challenge.pdf
---
Lisa Lippincott
Lisa Lippincott designed the software architectures of Tanium and BigFix, two systems for managing large fleets of computers. She's currently assistant chair of the numerics study group of the C++ standardization committee. In her spare time, she studies mathematical logic, and wants to make computer-checked proofs of correctness a routine part of programming.
---
C++Now 2025 - 28th April - 2nd May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: millennium and think-cell
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#boost #cpp #programming #cppprogramming #vector
---
This is C++: Uncompromised Performance, Undefined Behavior, and Move Semantics - Jon Kalb - C++Now 2024
---
The mandate for C++ is to deliver uncompromised performance and leave no room for a lower level language.
This presentation looks at C++’s superpower for delivering on this mandate. We explore this both to understand how to write better C++ code and to better understand how to evolve C++.
We’ll look at several examples showing how this superpower is applied in different ways, including one of the most controversial issues facing the C++ community today.
---
Slides: github.com/boostcon/cppnow_presentations_2024/blob/main/Presentations
---
Jon Kalb
Jon Kalb is using his decades of software engineering experience and knowledge about C++ to make other people better software engineers. He trains experienced software engineers to be better programmers. He presents at and helps run technical conferences and local user groups.
Jon is passionate about quality code and wants to inspire others to achieve their best engineering work. He is excited about modern C++ and how we can exploit the latest hardware developments with standard, portable C++.
---
C++Now 2025 - 28th April - 2nd May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: millennium and think-cell
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#boost #cpp #cppprogramming #cplusplus #softwaredeveloper
---
Security in C++ - Hardening techniques from the trenches - Louis Dionne - C++Now 2024
---
C++ has gotten a lot of attention lately for being a memory-unsafe language. However, less well-known is the existence of mitigation techniques for certain spatial and temporal memory safety issues. While imperfect, these techniques can help greatly improve the security of existing C++ applications often without requiring any code changes.
This talk will go over two concrete mitigation techniques we implemented as extensions in the Clang and libc++ toolchain: Standard Library hardening and typed memory allocation. Standard Library hardening allows catching common cases of undefined behavior such as out-of-bounds memory accesses and turning them into guaranteed traps. Typed memory allocation allows passing compiler-inferred type information to the system allocator, which can then isolate memory allocations based on types so as to make it more difficult to put together a type confusion attack by exploiting a temporal memory safety issue.
We will discuss our experience adopting and enabling these mitigation techniques in production on large, performance and security critical code bases. We will also go over some of the evolutionary challenges we met along the way and how we resolved them. Finally, we will propose a path forward to make targeted changes to the C++ Standard that would allow these mitigation techniques to be first class citizens of the Standard.
---
Slides: github.com/boostcon/cppnow_presentations_2024/blob/main/Presentations/Hardening_Techniques_from_the_Trenches.pdf
---
Louis Dionne
I work at Apple where I lead the development of libc++, the Standard Library under the LLVM project and used by the Clang compiler.
---
C++Now 2025 - 28th April - 2nd May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: millennium and think-cell
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#boost #cpp #cppprogramming #cplusplusprogramming #softwaredevelopment
---
The Most Important API Design Guideline - No, It's Not That One - Jody Hagins - C++Now 2024
---
Scott Meyers has famously proclaimed that the most important general design guideline is to make interfaces easy to use correctly and hard to use incorrectly. I don't dispute that claim, for the general case. However, for the specific case of an API, and in particular C++ library code, this guideline must take a back seat to something else.
So, what should that something else be? Obviously, since the above paragraph mentions C++ specifically, it must relate to performance in some way. Could it be to make interfaces as efficient as possible? If not, then what in the world could it be?
This talk will take a brief survey of general software design guidelines. Then, we will look at some specific examples. For some libraries, like the standard library, the design guidelines are well documented. For others, like many boost components, the design guidelines are part of the documentation. For others, we need to actually look at the API to see if we can determine the design guidelines that were used, if indeed, any guideline was used at all.
Finally, I will discuss what I believe to be the most important design guideline, and the implications for how we design and implement software in C++. In support of this claim, I will also present some patterns that can be used to effectively achieve this (and other) design goals.
---
Slides: github.com/boostcon/cppnow_presentations_2024/blob/main/Presentations/The_Most_Important_API_Design_Guideline.pdf
---
Jody Hagins
Jody Hagins started using C++ back in the mid 1980s, with cfront. In 1993, he enjoyed writing enough C++ support code to enable writing loadable unix device drivers in C++. Since then, he has been applying C++ to various problems within the fintech space.
---
C++Now 2025 - 28th April - 2nd May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: millennium and think-cell
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#boost #cpp #api #cppprogramming #cplusplusprogramming
---
Concept Maps using C++23 Library Tech - Indirection to APIs for a Concept - Steve Downey - C++Now 2024
---
C++0x Concepts included a feature called "Concept Maps," which allowed a set of functions, types, and template definitions to be associated with a concept and the map to be specialized for types that meet that concept. This allowed for open extension of a concept. A definition could be provided that allows an algorithm to operate in terms of the API that concept presents, and the map would then define how those operations are implemented for a particular type. This is similar to how typeclasses work in Haskell.
The feature was very general, and was lost as part of the Concepts-Lite proposal that was eventually adopted. This loss of a level of indirection means that the APIs for a concept must be implemented by those names for a type, even when those names are not particularly good choices in the natural domain of a type rather than in the domain as a concept. The proliferation of transform functions for a functorial map is such a problem. It is also a problem when adapting types that are closed for extension or do not permit member functions.
In this talk, I will demonstrate a technique using inline variable templates that deliver many of the benefits of concept maps -- at the cost of some syntactic noise in the use in algorithms -- and some advanced machinery which allows minimal definitions of a basis set of operations that can be used to implement the rest of the map. In particular, we will discuss using deducing this (P0847) in addition to -- not as a replacement for -- the Curiously Recurring Template Pattern, which allows syntactically checked definitions of the minimal basis set.
To make the technique concrete, I will present a simple binary tree data structure that uses tags to classify the nodes. The tags are required to model the monoid concept, which requires that the tag type have a binary operation and an instance that is an identity for that operation. Integers with the identity element 0 and the operation plus form a monoid. Using different operations and identity elements, the tree can represent a data structure that provides sequenced indexed access – like std::vector or std::deque, a priority queue – like std::priority_queue, or searchability – like std::map, without changes to the core data structure. The binary tree operations are modeled after the more complicated fingertree data structure, which shares the flexible characteristics provided by tags with much greater efficiency.
---
Slides: github.com/boostcon/cppnow_presentations_2024/blob/main/Presentations/Concept_Maps_using_Cpp23_Library_Tech.pdf
---
Steve Downey
Steve Downey has been a programmer for more than 30 years. Steve graduated from SUNY Purchase with a BS in Mathematics. A Computer Science degree would have involved two classes before 11:00 am, so was impossible.
He has worked at Bloomberg since 2003, and is currently working as an Engineer on the C++ Infrastructure team.
---
C++Now 2025 - 28th April - 2nd May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: millennium and think-cell
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#boost #cpp #cplusplusprogramming #codingconcepts #cppprogramming
---
How do Time Travel Debuggers Work? - Design and Implementation of a Time Travel Debugger - Greg Law - C++Now 2024
---
Time-Travel Debuggers are powerful tools for debugging complex C++ code. They present the programmer with an infinitely detailed view of program execution: the programmer can inspect any piece of program state (memory or registers) for any line of code that executed. And all with surprisingly low runtime and memory overheads. This is especially relevant for C++ which, by design, allows for many kinds of bugs that are impossible in other, safer languages.
But how do these seemingly-magically tools really work? This talk dives deep into the implementation details of the three highest profile time travel debuggers: rr, Microsoft's TTD, and Undo.io. All three have some common traits and important differences. We examine the low-level interactions with the CPU, the Operating System and the language.
---
Slides: github.com/boostcon/cppnow_presentations_2024/blob/main/Presentations/How_do_Time_Travel_Debuggers_Work.pdf
---
Greg Law
Greg is the co-founder and CEO of Undo.io. He is a coder at heart, but likes to bridge the gap between the business and software worlds.
Greg's experience includes creating and working on Operating Systems, Networking Stacks and Developer Tools. He has held development and management roles at companies including the pioneering British computer firm Acorn, as well as fast-growing start ups, NexWave and Solarflare. It was at Acorn that Greg met Julian and on evenings and weekends, they invented the core technology that would eventually become Undo.
Greg holds a PhD from City University, London and was nominated for the 2001 British Computer Society Distinguished Dissertation Award. He lives in Cambridge, UK with his wife and two children and in his spare time, catches up on email.
---
C++Now 2025 - 28th April - 2nd May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: millennium and think-cell
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#boost #cpp #debugging #debugger #programming
---
Mistakes to Avoid When Writing C++ Projects - Bret Brown - C++Now 2024
---
When considering interfaces in the context of C++, software engineers typically think about C++ language constructs: namespaces, base classes, function prototypes, and other entities defined by the C++ standard.
However, the challenge for C++ library authors is to provide not just carefully-crafted code, but also well-considered projects that deliver functionality to users. Providing useful and reusable libraries means stepping outside the C++ syntax to consider other kinds of interfaces provided by our C++ projects.
This talk goes beyond the C++ syntax to fill in these gaps through an exploration of the other kinds of interfaces and contracts that are implicitly and explicitly provided by C++ projects.
During this discussion, contract-based thinking will be applied to the parts of C++ projects that are not C++ source code. Both conceptual tools and pragmatic recommendations will be suggested for use in maintaining C++ projects and rescoping the role of a C++ software engineer.
---
Slides: github.com/boostcon/cppnow_presentations_2024/blob/main/Presentations/Our_Other_Cpp_Interfaces.pdf
---
Bret Brown
Bret likes making authoring and maintaining C++ codebases simpler and more intuitive by treating projects more like cattle and less like pets. He is especially interested in the software development lifecycle, development automation, modern build systems, packaging, code transformation, software governance, and code analysis.
Currently lead of Bloomberg's C++ Infrastructure team. Bret worked in embedded C++ and safety critical C++ for previous employers.
---
C++Now 2025 - 28th April - 2nd May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: millennium and think-cell
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#boost #cpp #cppprogramming #cplusplus #softwareengineer
---
Unit Testing an Expression Template Library in C++20 - Braden Ganetsky - C++Now 2024
---
Expression templates are one of the wonders that set C++ apart from all other programming languages. Using just the C++ type system, we can store arbitrary information in a type, giving us a way to calculate anything at compile-time. As years have gone by, we now have new ways of expressing compile-time computation, removing the need for relics of the past like expression templates. However, for some of us, expression templates remain a fascination, bordering on obsession.
Regardless of the paradigm, unit testing code at compile-time is no trivial matter. In very rare cases, a compiler's output can vary between compile-time and run-time, given identical source code. Therefore, in order to properly unit test a library meant for compile-time computation, we must run compile-time tests.
This talk will use an expression template parser combinator library as a case study to delve into the world of compile-time testing. Triggering a conditional miscompile is easy, but we all know that C++ compiler output can get notoriously unruly upon hitting errors. Therefore, we will explore ways to attain as much readability as possible in our diagnostics and error messages. Throughout the talk, we will contrast the popular unit testing libraries' solutions to compile-time testing, and we will learn which features are left to be desired. We will push the language to its limits to achieve the most user-friendly error messages we can get, while looking back on how far C++ has come in terms of compile-time programming. Ultimately, we will end up where all C++ users eventually stand: wanting more features out of the language. We will end with a roadmap of sorts, showing which future versions of C++ are slated to render our compile-time testing much simpler and more expressive than we can achieve today, and which desired features have yet to commence the standardization pipeline.
---
Slides: github.com/boostcon/cppnow_presentations_2024/blob/main/Presentations/Unit_Testing_an_Expression_Template_Library_in_Cpp20.pdf
---
Braden Ganetsky
Braden Ganetsky graduated from the University of Manitoba with a degree in mechanical engineering, fueled by his passion for mechanical puzzles. During his final year of school, when all classes and activities were remote, he discovered C++ and has been hooked ever since. He interned as a C++ developer, which turned into a full time job, completing a successful pivot of his career. Now, he spends his days working on supply chain software, and spends his nights working on fun projects like parser combinators, and getting involved in the C++ community.
---
C++Now 2025 - 28th April - 2nd May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: millennium and think-cell
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#boost #cpp #cppprogramming #cplusplus #softwareengineering
---
Generic Arity: Definition-Checked Variadics in Carbon - Geoffrey Romer - C++Now 2024
---
In this talk, I will describe an approach to modeling variadic functions in the type system, by treating them as strongly typed functions that are generic over their arity, rather than as templates that are instantiated and then duck-typed. This forms the basis of the current proposed design for variadic functions in Carbon, an experimental C++ successor language.
Variadic functions are functions that are generic with respect to the arity (number of parameters), rather than only the types of the parameters. In C++, each instantiation of a generic function must be typechecked separately. However, in Carbon, generic functions can be definition-checked, meaning that the function body is fully type-checked once, using only the type constraints declared in the function signature. To extend Carbon's approach to variadic functions, we have to be able to reason about variadic argument lists as values with types, and solve problems like:
- How do we represent types with variadic components?
- How do we type-check function calls when we don't yet know which arguments correspond to which parameters?
- How can the syntax provide enough type information for definition checking to succeed, without overwhelming the business logic?
Carbon also prioritizes build performance, so we need a way to express variadic logic that can avoid the quadratic overhead (or worse) that often arises from C++'s recursion-oriented variadics model. And, as a C++ successor language, we need to do all that without compromising the expressive power of C++ variadics.
I will give an overview of how we plan to solve these problems in Carbon, enabling both tools and users to reason about the correctness of variadic code once and for all, rather than one instantiation at a time. You don't need previous familiarity with Carbon; I will introduce the relevant parts of the language as part of my talk.
---
Slides: github.com/boostcon/cppnow_presentations_2024/blob/main/Presentations/Generic_Arity.pdf
---
Geoffrey Romer
I'm a software engineer at Google, where I work on the Carbon project. I'm the lead designer for Carbon's support for sum types, subscripting, and variadics, among other things, and I've contributed extensively to the prototype Carbon interpreter. Prior to that I was a member of the C++ Libraries team, where I wrote Google's C++ concurrency guide, created the initial design for the Abseil hash framework, and authored the Core Coroutines C++ standard proposal. I'm also a co-owner of Google's C++ style guide.
---
C++Now 2025 - 28th April - 2nd May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: millennium and think-cell
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#boost #cpp #cppprogramming #cplusplus #softwaredevelopment
---
What Does It Take to Implement the C++ Standard Library? (C++Now Edition) - Christopher Di Bella - C++Now 2024
---
Due to its vast complexity, there have only been a handful of standard library implementations to date. In this session, we will discuss what separates the standard library from user code, the unique design opportunities and constraints we have, and the considerations we need to make for our users.
---
Slides: github.com/boostcon/cppnow_presentations_2024/blob/main/Presentations/What_does_it_take_to_implement_the_standard_library.pdf
---
Christopher Di Bella
Christopher Di Bella is a senior software engineer working on improving the LLVM toolchain at Google. He enjoys making contributions to Clang's C++ front-end and to libc++, with the hope of improving both performance and engineer satisfaction with respect to C++ ergonomics.
When not working on toolchains, Christopher likes improv, reading One Piece, eating, and exercise.
---
C++Now 2025 - 28th April - 2nd May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: millennium and think-cell
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#boost #cpp #cplusplus #cppprogramming #softwareengineering
---
Fun with Flags - C++ Type-safe Bitwise Operations - Tobias Loew - C++Now 2024
---
Flag-like integer types offer a lot of nice properties:
- easy to define, e.g. as macros, integer constants or enumerators
- language support for setting and querying through bitwise operators
- compact representation in memory
- simple bulk transfer in interfaces (uint32_t can hold up to 32 options)
- enforces the usage of names (preventing bool parameters in interfaces)
But on the other hand they are inherently type unsafe:
- values from different flag-types can be combined
- all types with built-in support for bitwise operators are implicitly convertibility to int
- built-in bitwise operators return int
- no distinction on the type level between flag-values and their bitwise negations
In this talk we present the library Boost.Flags which solves those problems in a non-intrusive and zero-overhead way.
Just a template-specialization away from type checking your flags!
---
Slides: github.com/boostcon/cppnow_presentations_2024/blob/main/Presentations/Fun_with_Flags.pdf
---
Tobias Loew
Born in the analog year of 1973.
Made my first programming experience on a Commodore 64.
Wrote a course-management software while in high-school (1992), which is still in use.
Finished university with a Phd in Maths: math-models for functional languages.
Started C++ in 1999 working on a thermodynamic simulation tool.
Got a large Boost when I stumbled over its libraries.
Frequent BoostCon/C++Now attendant/speaker since then.
---
C++Now 2025 - 28th April - 2nd May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: millennium and think-cell
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#boost #cpp #cppprogramming #cplusplus #cplusplusprogramming
---
Testability and C++ API Design - John Pavan, Lukas Zhao & Aram Chung - C++Now 2024
---
Good code must be both testable by its developers and usable in application test drivers and integration tests. We will explore and recommend approaches for designing APIs that result in both easily testable code and convenient interfaces for test drivers and integration tests. We will discuss specific techniques, simplified versions of examples from popular libraries such as BDE, and how to write generalized mocks.
---
Slides: github.com/boostcon/cppnow_presentations_2024/blob/main/Presentations/Testability-and-API-Design.pdf
---
John Pavan
Long time C++ developer and current Team Lead at Bloomberg LP. I'm passionate about API design and care deeply about helping others fulfill their potential.
---
Lukas Zhao
Lukas Zhao is a senior software engineer at Bloomberg, where he works on the FX Pricing Engineering team. In his eight years with the company, he contributed to the building of a distributed electronic trading platform microservice system, which won several ETFExpress awards, and some of his independent infrastructure work has turned into larger community-wide projects that are now in production across multiple departments at the firm. He also started a department-wide testing workgroup that is focused on educating and bringing modern design principles and test-driven development practices to multiple teams across Electronic Trading Engineering.
Lukas’ background is as a condensed-matter physicist. His research in topological quantum materials was published in a number of high impact journals and was presented at international conferences. He holds a Ph.D. in physics from City College of New York and earned his bachelor’s degree in physics from the University of Science and Technology of China.
---
Aram Chung
Aram Chung is a software engineer on the Insights Workflows team at Bloomberg. She thinks C++ is delightfully low-level and Python is delightfully high-level: “Recondita armonia di bellezze diverse” (and if you got the reference, she wants to be your friend). In her spare time, Aram codes, writes, draws, designs, and obsesses over edtech and education design, with the hopes of making higher education accessible for all, while breaking down barriers between STEM and the humanities.
---
C++Now 2025 - 28th April - 2nd May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: millennium and think-cell
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#boost #cpp #api #cppprogramming #apidevelopment
---
Detect C++ Memory Leaks with ALSan: Attachable Leak Sanitizer - Bojun Seo - C++Now 2024
---
Introducing ALSan, a new tool that can detect memory leaks in running user processes.
One of the most challenging aspects of debugging is reproducing the issue. Even if the problem itself is trivial, the cost of resolving it can increase exponentially if it takes days to reproduce or is rarely reproduced. Valgrind, ASan, and LSan are all great tools for detecting memory leaks. However, applying these tools requires restarting the target process. In other words, the issue needs to be tested and reproduced again after the tool is applied.
eBPF is an in-kernel VM that empowers users to inject code into the Linux Kernel. Taking advantage of this powerful feature, ALSan can be attached to running processes and detect memory leaks on the fly, allowing the root cause be better detected and reducing the cost of issue reproduction. This tool is built upon the open-source BCC(BPF Compiler Collection) project, which is one of the most famous open-source project in eBPF community. The performance impact is similar to that of llvm-project's LSan.
---
Slides: github.com/boostcon/cppnow_presentations_2024/blob/main/Presentations/ALSAN.pdf
---
Bojun Seo
Bojun is a software engineer deeply committed to detecting memory leaks. He has been working as a software engineer at LG Electronics. His primary responsibility at LG Electronics is to identify and fix memory leaks on various products, such as fridges, cars, TVs, and so on.
Recently, he has started to create tools that utilize the cutting-edge eBPF (extended Berkeley Packet Filter) functionality to solve various problems, including memory leaks. He is a contributor to the open-source BCC (BPF Compiler Collection) project, which is one of the most famous project in eBPF community.
He was a presenter at the 8th Korea Linux Kernel Developer Conference in 2023.
---
C++Now 2025 - 28th April - 2nd May
C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world.
Annual CppNow Conference - cppnow.org
linkedin.com/company/cppnow
twitter.com/cppnow
facebook.com/CppNow
reddit.com/r/CppNow
https://mastodon.social/@cppnow
Video Sponsors: millennium and think-cell
---
Videos Filmed & Edited By Bash Films: bashfilms.com
YouTube Channel Managed & Optimized By Digital Medium Ltd: events.digital-medium.co.uk
---
#boost #cpp #cppprogramming #programming #cplusplus


