Welcome to SwedenCpp
Latest blogs, videos, podcasts and releases in one stream
Wednesday, April 15, 2026
GEOINT Symposium 2026At the USGIF GEOINT Symposium 2026, the leading event for the geospatial intelligence community, Kitware will present its latest advancements in AI test and evaluation (T&E), computer vision, and interactive visualization. Our work supports national security missions by enabling organizations to better analyze complex data and make informed decisions with confidence.📝Kitware Inc
Why is there a long delay between a thread exiting and the WaitForSingleObject returning?Maybe it didn't really exit. The post Why is there a long delay between a thread exiting and the WaitForSingleObject returning? appeared first on The Old New Thing .📝The Old New Thing
C++ Insights - Episode 73: Things you can do effortlessly with C++20s concepts🎥Andreas Fertig
From C+ to C++: Modernizing a GameBoy Emulator - Tom Tesch - CppCon 2025🎥CppCon
Accelerate UI Development - Seamless Designer-Developer Collaboration with Web Tools - Ryan Wardell🎥audiodevcon
The Compile-Time Trick Most Developers Miss #programming #tutorial🎥CppOnline
C++ Insights Episode 73: Things you can do effortlessly with C++20s conceptsI published a new C++ insights episode: Things you can do effortlessly with C++20s concepts. In this episode, you'll learn how C++20s concepts help you to write less code that's easier to maintain at the same time. Andreas📝AndreasFertig.comThis page runs on coffee, please consider supporting it.
Tuesday, April 14, 2026
Elegant D by Walter Bright - Opening Keynote - D Language Symposium 2026 - Talk 1 of 8🎥Mike Shah
Let CTest discover GTest Test Cases🎥Refactoring Bitcoin
Why was there a red telephone at every receptionist desk?Not a direct line to Bill Gates's office. The post Why was there a red telephone at every receptionist desk? appeared first on The Old New Thing .📝The Old New Thing
CTRACK: C++ Performance Tracking and Bottleneck Discovery - Grischa Hauser - CppCon 2025🎥CppCon
MSVC Build Tools Version 14.51 Release Candidate Now AvailableTry out the final preview of MSVC Build Tools v14.51 The post MSVC Build Tools Version 14.51 Release Candidate Now Available appeared first on C++ Team Blog .📝C++ Team Blog
What C++ Developers Fear Most #cplusplus #concurrency #mindblown🎥CppOnline
ActiViz on ARM64Announcing ARM64 support for Activiz📝Kitware Inc
Open-Enrollment classes in 2026The year 2026 is already four months old. I hope you had a good start to this year. If you're interested in working with me at one of my public classes, here is what you need to know. I will give a one-day online workshop on Safe and Efficient C …📝AndreasFertig.comMonday, April 13, 2026
Suspend and Resume: How C++20 Coroutines Actually Work - Lieven de Cock - C++Online 2026🎥CppOnline
Understanding CTest's Entry Point🎥Refactoring Bitcoin
Finding a duplicated item in an array of N integers in the range 1 to N − 1Taking advantage of special characteristics of the array. The post Finding a duplicated item in an array of N integers in the range 1 to N − 1 appeared first on The Old New Thing .📝The Old New Thing
C++ Weekly - Ep 528 - Protecting From Fallthrough🎥Jason Turner
Persistence Squared: Persisting Persistent Data Structures - Juan Pedro Bolivar Puente - CppCon 2025🎥CppCon
C++26 Reflection Is Insane #cplusplus #coding🎥CppOnline
Building Better Software through Cross-Functional Collaboration - Matt Morton - ADC 2025🎥audiodevcon
std::pmr::generator, a generator without heap allocationC++23 std::generator heap-allocates the coroutine frame by default. With std::pmr::generator you can run the generator with a stack arena instead.📝Engineering the Craft
What I learned from improving Unity's Mono codegen, part 2My current sidequest is to improve the codegen for Unity games (and the editor) running on Mono. This post is a continuation of last week’s post about this journey. To LLVM or not to LLVM? As demonstrated last time, Mono’s codegen is often lackluster. The first decision I had to...📝Sebastian Schöner
Can we finally use C++ Modules in 2026?Kinda? Maybe? It's complicated.📝Mathieu RopertSunday, April 12, 2026
Get a List of Tests from the GTest Binary🎥Refactoring Bitcoin
April's Overload Journal has been published.The April 2026 ACCU Overload journal has been published and should arrive at members' addresses in the next few days. Overload 192 and previous issues of Overload can be accessed via the Journals menu.📝ACCU
Dockable Editor Panels | Devlog #6 | Pard Engine🎥PardCode
The concurrency skill everyone needs #programming #dev🎥CppOnlineSaturday, April 11, 2026
Speed of Thought🎥Matt Godbolt
Watch Your Threads Fall Into Perfect Sync #cpp #concurrency #cpp20🎥CppOnline
Automatically add Tests by Parsing GTest Sources🎥Refactoring Bitcoin
Lecture 21. Multithreaded Queues (MIPT, 2025-2026).🎥Konstantin Vladimirov
Change of Plans: Building a C++ SaaS in 2 Weeks vertical🎥Kea Sigma Delta
Change of Plans: Building a C++ SaaS in 2 Weeks🎥Kea Sigma Delta
`auto{x} != auto(x)`Recently it was asked: What’s the difference between the expressions auto(x) and auto{x} in C++23?📝Arthur O’Dwyer
Preventing Integer Overflow in Physical ComputationsPreventing Integer Overflow in Physical Computations Integers overflow. That is not a controversial statement. What is surprising is how easily overflow can hide behind the abstraction of a units library. Most developers immediately think of explicit or implicit scaling operations — calling .in(unit) to convert a quantity, constructing a quantity from a different unit, or assigning between quantities with different units. These are indeed places where overflow can occur, and the library cannot prevent it at compile time when the values are only known at runtime. But at least these operations are visible in your code : you wrote the conversion, you asked for the scaling, and you can reason about whether the multiplication or division might overflow your integer type. The far more insidious problem is what happens when you don't ask for a conversion. When you write 1 * m + 1 * ft , the library must automatically convert both operands to a common unit before performing the addition. That conversion — which you never explicitly requested — involves multiplication or division by scaling factors. With integer representations, those scaling operations can overflow silently, producing garbage results that propagate through your calculations undetected. No compile-time programming can prevent this. The values are only known at runtime. But very few libraries provide proper tools to detect it. This article explains why that limitation is real, how other libraries have tried to work around it, and what mp-units provides to close the gap as tightly as the language allows.📝mp-unitsFriday, April 10, 2026
Exploring Urban Infrastructure Risk with GeoDatalyticsUrban infrastructure systems, such as transportation networks, are increasingly vulnerable to extreme weather events, aging infrastructure, and growing urban demand. Understanding how these pressures affect interconnected systems is critical for cities and infrastructure operators working to improve resilience.📝Kitware Inc
Mastering C++ Clocks: A Deep Dive into std::chrono - Sandor DARGO - C++Online 2026🎥CppOnline
Using GTest in CMake🎥Refactoring Bitcoin
How do you add or remove a handle from an active WaitForMultipleObjects?, part 2Waiting for the waiting thread to acknowledge the change. The post How do you add or remove a handle from an active WaitForMultipleObjects ?, part 2 appeared first on The Old New Thing .📝The Old New Thing
Digital Pathology and AI Congress 2026Kitware is heading to Columbus, Ohio, on May 7–8 to exhibit at the Digital Pathology & AI Congress. This event brings together experts across pathology, artificial intelligence, and biomedical research to explore how digital technologies are transforming the study and diagnosis of disease.📝Kitware Inc
C++: Some Assembly Required - Matt Godbolt - CppCon 2025🎥CppCon
PhilTorch: Accelerating Automatic Differentiation of Digital Filters In PyTorch - Chin-Yun Yu🎥audiodevcon
Building C/C++ libraries for HarmonyOS with vcpkgWe're currently working on porting Qt to HarmonyOS . For our CI and developer machines, we need a number of third-party libraries built for HarmonyOS. Cross-compiling open-source C and C++ libraries for this platform has been a manual, error-prone process. Each library has its own build system, whether CMake, Autotools, or Meson. Each needs individual attention to produce correct binaries for the OHOS target. We have been maintaining a hand-written shell script that builds libraries one by one, with per-library workarounds for cross-compilation quirks. With our vcpkg fork, that script is now a single command.📝Qt Blog
Three Ways to Get Trapped in Your CareerAt some point, something stops making sense.📝The Dev LadderThursday, April 9, 2026
Applied modern C++: efficient expression evaluator with type erasure - Olivia Quinet - Meeting C++25🎥MeetingCpp
C++23 Support in MSVC Build Tools 14.51We’re pleased to provide an update on C++23 support in the Microsoft C++ (MSVC) Build Tools. This blog post will cover the feature additions in MSVC Build Tools version 14.51, including C++23 language features, libraries, and ISO C++ Core Working Group (CWG) and Library Working Group (LWG) Issue resolutions. We’ll also discuss the plans for […] The post C++23 Support in MSVC Build Tools 14.51 appeared first on C++ Team Blog .📝C++ Team Blog
Introduction to Testing in CMake🎥Refactoring Bitcoin
A brief history of C/C++ programming languagesInitially, we had languages like Fortran (1957), Pascal (1970), and C (1972). Fortran was designed for number crunching and scientific computing. Pascal was restrictive with respect to low-level access (it was deliberately “safe”, as meant for teaching structured programming). So C won out as a language that allowed low-level/unsafe programming (pointer arithmetic, direct memory access) … Continue reading A brief history of C/C++ programming languages📝Daniel Lemire's blog
How do you add or remove a handle from an active WaitForMultipleObjects?You can't, but you can cooperate with the other thread. The post How do you add or remove a handle from an active WaitForMultipleObjects ? appeared first on The Old New Thing .📝The Old New Thing
Beyond the Big Green Button: Demystifying the Embedded Build Process - Morten Winkler Jørgensen🎥CppCon
Managing Versions Programmatically with LibGit2🎥Utah Cpp Programmers
iX Article: Neue Features in C++26An article I wrote for the German iX magazine "Neue Features in C++26" is available in issue 2026/04. It is available as a printed edition as well as online . I hope you find the article both interesting and inspiring. Andreas📝AndreasFertig.com