news
Programming Leftovers
-
Var Zero ☛ Post-Mortems and Accountability
Post-mortems are one of those things that most software teams have learned to do almost automatically. Something breaks, an outage happens, data is lost, everyone gets together afterwards and tries to figure out what went wrong.
They're familiar enough that we rarely stop to ask what the meeting is actually for. I think that's a problem because I've seen post-mortems turn into something they really shouldn't be: a place to assign personal responsibility.
-
Sandor Dargo ☛ C++26: Module improvements
C++20 introduced modules as a - potential - fundamental shift in how we organize and consume C++ code. Sadly, the adoption has been slow — build system support lagged, compiler implementations were incomplete and diverging, and some of the original design decisions created unnecessary friction. C++26 addresses some of these pain points with three targeted fixes.
-
Olaf Alders ☛ Who Handles Your Security Reviews?
I’ve had a closer look at what’s happening in the world of OSS security these past few months, and I’ve seen firsthand where vulnerabilities are turning up. What I find particularly surprising is that it’s not just in legacy code. CVEs are also turning up in brand new code that’s being uploaded right now. Just because we now have more tools at our disposal doesn’t mean that security issues are a solved problem.
-
Daniel Lemire ☛ A quick overview of atomics in C
If you write in C, by default, you use a single thread. Extra cores do not help until you create more threads. However, if you include the header <threads.h>, you can pass a function to thrd_create, and wait for it with thrd_join.
-
R / R-Script
-
Dirk Eddelbuettel ☛ Dirk Eddelbuettel: RcppXts 0.0.7 on CRAN: Minor Maintenance
A new maintenance release 0.0.7 of RcppXts is now on CRAN, and has been built for r2u. The RcppXts package demonstrates how to access the export C API of xts which we contributed a looong time ago. There are by now a more example packages around this C level access to another package, but this one was an early
This release is strictly maintenance, updating continuous integration, the README.md file and other packaging conventions adopted since the last release four years ago.
-
R Studio Data Lab ☛ How to Create a Function in R: Custom Median & ggplot2 Examples
If you've written the same block of R code three times this week — a group summary, a plot, a cleanup step — you don't need another package. You need a function. A custom function is the solution. For example, two functions you'll actually reuse: a custom median() built from scratch, and a reusable ggplot2 function that plots group means for any variable in any data frame — the kind of thing that saves real time across dissertation chapters.
-
Thierry Moudiki ☛ ahead (Time Series Forecasting with uncertainty quantification) gets a lot faster to install: most dependencies are now optional
ahead supports a lot of forecasting methods, and each one can lean on a different modeling package: forecast, randomForest, e1071, glmnet, gam, quantreg, vars, fGarch, VineCopula, mboost, ranger, ForecastComb. Historically, most of these were plain Imports in DESCRIPTION, which means R installs all of them before you can even load the package — regardless of whether you plan to use ahead::dynrmf with a random forest or ahead::ridge2f for a multivariate model with none of the above.
-
Rlang ☛ ahead (Time Series Forecasting with uncertainty quantification) gets a lot faster to install: most dependencies are now optional
-
-
Python
-
Eric Matthes ☛ In defense of temporary variables
There are two main reasons I tend to use temporary variables. First, I'm often just trying to work out how to accurately extract the data I want from a source. That often looks like writing a line like this: [...]
-
-
Perl
-
Olaf Alders ☛ Sort Your Perl Imports
perlimports can now sort your imports. If you like to see your list of imported libraries in alpha-sorted order, you're in the right place.
-
Russ Allbery ☛ Russ Allbery: podlators v6.1.1
podlators is the package containing Pod::Man, Pod::Text, and other tools for converting POD documentation into manual pages and simple text documents.
-
-
Java/Golang
-
Chris Smith ☛ Lego, ACME DNS-01, and negatively-cached surprises
Recently a friend was deploying Centauri, my reverse proxy service that can obtain TLS certificates using ACME DNS-01 challenges. He asked a seemingly innocent question: “When Centauri is ‘waiting for record propagation’ is there an option to increase the time?” But that’s a question with a hidden, concerning XY problem. We both use the same DNS provider, and it definitely shouldn’t take more than a minute to see a DNS record after it’s been created. Plus, I don’t have issues with it timing out!
-
-
Rust
-
Rust Weekly Updates ☛ This Week In Rust: This Week in Rust 668
Hello and welcome to another issue of This Week in Rust!
-
LWN ☛ A decade of Rustls
Joe Birr-Pixton has written a blog post reflecting on a decade of the Rustls TLS-library project and looking ahead to the upcoming 0.24 release and an eventual 1.0 release.
Rustls began with a first commit on May 2, 2016. Progress was quick: a month later, on June 5, it could interoperate with most sites on the web. The first release, 0.1.0, followed on August 27, 2016 – less than four months after the first commit.
-
-
Standards/Consortia
-
Max Glenister ☛ Antiquated CSS and why we needed it
I came across a catalogue of antiquated HTML snippets and artefacts, the kind of markup we just accepted as necessary in the &t;head> of every site.
It got me thinking about the CSS side of that same period, the stylesheets rather than the markup. My first job in 2009 was building marketing campaign pages for an electronics distributor’s B2B storefront, where dropping IE6 was not a conversation anyone was going to have. Developers eventually landed on one clean way to target different IE versions, but getting there took a lot of less elegant detours.
-