Kitware Awarded up to $17.5 Million ARPA-H Contract to Develop Virtual Testing Platform for Robot-Assisted Stroke Interventions3.5-year TAIR project will create a realistic, patient-specific virtual environment to accelerate the development and evaluation of robotic stroke devices. Clifton Park, NY — August 6, 2026 — Kitware has been awarded up to $17.5 million by the Advanced Research Projects Agency for Health (ARPA-H), an agency within the U.S. Department of Health and Human […]Kitware Inc
Measurement uncertainty and measured constantsMeasurement uncertainty and measured constants When you write constexpr double G = 6.674e-11; in your code, the type system makes a claim that is not true. It claims the value is exact. It is not. The Newtonian constant of gravitation is one of the least precisely known constants in physics. CODATA 2018 lists it as 6.674 30(15) × 10⁻¹¹ m³ kg⁻¹ s⁻² , and the (15) means the fifth significant digit is already uncertain. Only four digits of G are actually known. Every result derived from that double inherits an uncertainty that the program neither tracks nor reports. The code happily prints ten significant digits of a solar mass computed from a constant that guarantees four. mp-units now models this honestly. This post introduces the uncertain representation type, the standard_uncertainty and relative_standard_uncertainty metadata for measured constants, and the measurement_of helper that connects them.mp-units
Creating a fake agile wrapper that is technically agile but is not useful outside its home apartment, part 3Forcing an object into the global interface table. The post Creating a fake agile wrapper that is technically agile but is not useful outside its home apartment, part 3 appeared first on The Old New Thing .The Old New Thing
ColourfieldsOver on the (inexplicably login-walled) site "NewEnigma," Keith Austin [writes](https://www.newenigma.com/enigma/view/1277/Colourfields): > Draw a 4-by-4 grid. Colour each square red or blue. Select any square, S, and write 1 in it. > Then write 1 in every square you can reach from S by a series of moves, where each move is from > a square to an adjacent, horizontally, vertically, or diagonally, square of the same colour [...] In brief: What is the maximum number of _queenwise-connected_ monochromatic regions you can make by coloring each square of an $$n\times n$$ grid either red or blue?Arthur O’Dwyer
New bazel.build websites incoming!We're happy to announce the launch of the new bazel.build documentation site and the new web UI for the Bazel Central Registry! New documentation site Last year, Alan Mond wrote a viral blog post that highlighted the issues with Bazel's documentation site. This led to his Let's Build the Future of Bazel Documentation birds-of-a-feather session at BazelCon 2025, where we decided to overhaul the documentation completely. Alan and a group of volunteers from the community and Google have now completed the first and most significant milestone by migrating https://bazel.build from a proprietary Google hosting site to Mintlify . This step improves the experience for contributors and readers alike: It's easier to make (significant) changes to the docs since we now use the well-documented .mdx format. Moreover, contributors can now generate a preview of their changes either locally or by using the new automated PR preview feature ( example ). For readers, Mintlify offers AI features such as an embedded assistant that allows them to prompt the docs directly. Documentation content continues to live in the bazelbuild/bazel GitHub repository next to the Bazel source code. The new bazel-contrib/bazel-docs repository contains the documentation pipeline and the navigation. There are still some rough edges that we plan to address in the near future. Known issues are being tracked here - please post a comment when you encounter a bug. We hope that the new website makes it easier for external developers to contribute to the documentation, especially when it comes to significant changes like revamping the structure or adding new pages such as codelabs and tutorials. Consequently, we welcome anyone to contribute to these efforts - please check https://bazel.build/contribute/docs for instructions, or visit us in the #documentation Slack channel . New BCR UI Community member Paul Johnston has built an entirely new web UI for the Bazel Central Registry at https://registry.bazel.build/ . The new site brings several improvements over the previous one: Detailed overview : The new site features a denser display of key information about the module, including its dependencies, maintainers, and other versions. It also puts the prose documentation of the module front and center, pulled directly from the README.md file of the corresponding GitHub repo. Smarter information retrieval : Beside pulling README files, the new site has quite a few new tricks up its sleeve. It tries to surface official API documentation from the module, and if it's missing, it runs Stardoc on the .bzl files automatically and surfaces the result. It also presents the attestations and presubmit configs associated with each module version. Powerful search and indexes : Beyond searching for modules by their names, you can also search by symbols - try searching for go_library . You can also view the list of available modules filtered by their primary language or maintainers. Faster UI update times : Module authors should expect quicker updates to the BCR UI. When new commits land in the BCR GitHub repo, a repository dispatch triggers a new BCR UI build that takes on average less than 5 minutes. The new static assets are deployed to GitHub Pages in another 1-2 minutes. Other tidbits : The new site has many other corners to explore. One of them is the Bazel flags page , which lists all the command-line flags present in the past few Bazel LTS releases. For each individual flag, it also tells you which Bazel versions it is present in, and which Bazel subcommands it applies to. Please take it for a drive, and file issues and send PRs to https://github.com/bazel-contrib/bcr-frontend ! Finally, a huge thank you again to all community members who contributed to these efforts, especially Kayce Basques, Alex Eagle, Paul Johnston, Alan Mond, Armando Montanez, Anthony Pratti, Nikki Vijaybhaskar and Kapunahele Wong - they wouldn't have been possible without you!Bazel Blog
Say hello to the new bazel.build websiteSay hello to the new bazel.build website Today, the new https://bazel.build/ website has finally launched. This is thefirst step in a larger evolution of Bazel's documentation story. Much ofthe content remains the same (the eagle-eyed among you may notice a few newpages), but this change marks a new era of Bazel documentation. What motivated this change? The Bazel site migration is more than just a fresh coat of paint. One of theunderlying motivations for this change is to empower the Bazel community to makemore changes to Bazel's documentation. Before the migration, Bazel's website wasbuilt on Google documentation infrastructure. While the capabilities of thatinfrastructure were largely sufficient for Bazel's needs up to now, thecontribution experience was not. Today's https://bazel.build/ is built on Mintlify .With this new platform, each incoming documentation pull request to Bazel isautomatically greeted with a preview. For even faster iteration, you can build the sitelocally . Theseimprovements eliminate guesswork, and better equip contributors to make changesto the Bazel docs with confidence.EngFlow Blog
C++26: #embedIf you’ve ever needed to ship a binary file — a certificate, a small image, a default configuration — inside a C++ program, you know the ritual. You find or write a tool that converts the file into a C array, you wire it into your build system, and you pray that nobody forgets to re-run the conversion after updating the original file. C++26 ends this with #embed (P1967R14 by JeanHeyd Meneide)....Sandor Dargo's Blog
How PVS-Studio helps enhance quality of embedded projectsEmbedded development comes with a wide variety of custom configurations, compilers, and build systems, which can make standard analysis approaches difficult to apply. To address this challenge...from pvs-studio.com
BANFF-AID: AI-powered Banff ScoringBefore donated organs can be used, pathologists assess histologic features (including several features covered by Banff lesion scores) based on their overall health and whether key chronic injury indicators are discovered. Unfortunately, this evaluation is largely subjective, resulting in conservative decision-making and the discarding of viable donor organs. The scoring process is also very time-consuming […]Kitware Inc
cppdashboard.dev – The aggregator of what matters in C++ right nowI am excited to announced I launched cppdashboard.dev, a website that aggregates the activity of the C++ community into one place. The post cppdashboard.dev – The aggregator of what matters in C++ right now first appeared on Marius Bancila's Blog .Marius Bancila's Blog
Creating a fake agile wrapper that is technically agile but is not useful outside its home apartment, part 2Using a reference stored in the global interface table. The post Creating a fake agile wrapper that is technically agile but is not useful outside its home apartment, part 2 appeared first on The Old New Thing .The Old New Thing
Möbius-strip crosswordsRandall Rothenberg in the _New York Times_ (1988-08-10) writes that although ["Puzzle Makers Exchange Cross Words"](https://archive.is/K2Hw8) about the fall of ERNE and ESNE and the rise of XEROX and PEACE PLAN, one Robert Guilbert Sr. > was ignorant of the dispute two years ago when he developed a competitive crossword game > called Pago Pago and first became aware of crossword fans' passion for the pastime.Arthur O’Dwyer
More compile-time checks with std::nullptr_tIn today's post, I like to show you the benefit of a often unknown type: std::nullptr_t . You have that data type in the language since C++11, together with the much more frequently used nullptr . While nullptr is the value, std::nullptr_t is the data type that can hold …AndreasFertig.com
An Honest Review of AI ProgrammingThey gave me a Claude subscription and told me to get tokenmaxxing, so I tried to give it a fair shot.Mathieu Ropert
Creating a fake agile wrapper that is technically agile but is not useful outside its home apartment, part 1Looking for a COM reference that is between strong and weak. The post Creating a fake agile wrapper that is technically agile but is not useful outside its home apartment, part 1 appeared first on The Old New Thing .The Old New Thing
San Diego C++ Meetup #87 – July 2026 Edition: Modern Container Filtering, std::span, and a Pause to RethinkHello everyone! Here’s the summary of our July session, San Diego C++ Meetup #87, held on Tuesday, July 22nd, 2026. As always, if you missed the live session, the recording is up on our YouTube channel (link below once it’s shared publicly). You can also find the specific Luma event details for this session right […]Vorbrodt's C++ Blog
Tomviz 3.0 Released: A Reimagined Pipeline for Tomographic Data AnalysisWe are pleased to announce the release of Tomviz 3.0, the biggest release in the history of the project. Tomviz is a free, open source, cross-platform application for the reconstruction, visualization, and analysis of 3D tomographic data, developed openly on GitHub and distributed under the 3-clause BSD license. Tomviz 3.0 is the culmination of more […]Kitware Inc
How fast is C++26’s std::hive?C++26 adds a new container to the standard library: std::hive. It is meant to occupy the ground between std::vector and std::list. Like a vector, it keeps its elements in contiguous blocks of memory, so scanning it does not require you to chase a pointer for every element. Like a list, it never moves an element … Continue reading How fast is C++26’s std::hive?Daniel Lemire's blog
IEEE International Geoscience and Remote Sensing Symposium (IGARSS) 2026August 9-14, 2026 | Washington, D.C. Kitware is excited to participate in the IEEE International Geoscience and Remote Sensing Symposium (IGARSS) 2026 in Washington, D.C. Each year, IGARSS brings together the global remote sensing community to share research, discuss emerging technologies, and build new collaborations. This year’s theme, The Future of Earth Observations, reflects the […]Kitware Inc
Making an agile version of a Windows Runtime delegate in C++/WinRT, part 10What failure of the context callback means. The post Making an agile version of a Windows Runtime delegate in C++/WinRT, part 10 appeared first on The Old New Thing .The Old New Thing
Kinton Ford’s _Canto I_In “Varaldo’s Shahrazad and Chiti’s Centunesimo Canto” (2025-08-11) I mentioned the existence of a lipogrammatic translation of Canto I of Dante’s Inferno performed by one Kinton Ford (a pseudonym, as far as I know) for Rick Whitaker’s now-defunct literary e-zine Exquisite Pandemic (2020–2021). A year later, seeing it’s still unavailable anywhere else online, I feel justified in preserving that whole tour-de-force here for posterity.Arthur O’Dwyer