Even big websites may still be manually managing TLS certificates (or close)

I've written before about how people's soon to expire TLScertificates aren't necessarily a problem ,because not everyone manages their TLS certificates through Let'sEncrypt like '30 day in advance automatedrenewal' and perhaps short-lived TLS certificates. For example,some places (like Facebook) have automation but seem to only deployTLS certificates that are quite close to expiry. Other places atleast look as if they're still doing things by hand, and recentlyI got to watch an


We outsource our public web presence and that's fine

I work for a pretty large Computer Science department , one where we have the expertise andneed to do a bunch of internal development and in general we maintainplenty of things, including websites. Thus, it may surprise somepeople to learn that the department's public-focused web site is currently hosted externally on aSaaS provider. Even the previous generation of our outside-facing web presence was hosted and managed outside of thedepartment. To some, this might seem like the wrong decision for adepartment of Computer


Options for genuine ECC RAM on the desktop in (early) 2024

A traditional irritation with building (or specifying) desktopcomputers is the issue of ECC RAM , which fora long time was either not supported at all or was being used byIntel for market segmentation .First generation AMD Ryzens sort of supported ECC RAM with the rightmotherboard, but there are many meanings of 'supporting' ECC RAM and questions lingered about how meaningfulthe support was ( recent information suggests the support was real ). Here in early 2024 the situationis somewhat better and I'm going


(Some) X window managers deliberately use off-screen windows

I mentioned recently that the X Window System allows you toposition (X) windows so that they're partially or completely offthe screen ( when I wrote about how I accidentally put some iconsoff screen ). Some window managers, such as fvwm , actually make significant use of thisX capability.

To start with, windows can be off screen in any direction, because Xpermits negative coordinates for window locations (both horizontally andvertically). Since the top left of the screen is 0, 0 in the


Understanding a recent optimization to Go's reflect.TypeFor

Go's reflect.TypeFor() isa generic function that returns the reflect.Type for its type argument. It wasadded in Go 1.22, and its initial implementation was quite simplebut still valuable , because it encapsulateda complicated bit of reflect usage.Here is that implementation:

func TypeFor[T any]() Type {  return TypeOf((*T)(nil)).Elem()}

How this works is that it constructs a nil pointer value of thetype '


What is in (Open)ZFS's per-pool "txgs" /proc file on Linux

As part of (Open)ZFS's general 'kstats' system for reportinginformation about ZFS overall and your individual pools and datasets,there is a per-pool /proc file that reports information about themost recent N transaction groups ('txgs') , /proc/spl/kstat/zfs//txgs.How many N is depends on the zfs_txg_history parameter, and defaults to 100. The information in here may be quiteimportant for diagnosing certain sorts


Linux kernel boot messages and seeing if your AMD system has ECC

In general, consumer x86 desktops have generally not supportedECC memory , at least not if you wantedthe 'ECC' bit to actually do anything. With Intel this seems tohave been an issue of market segmentation , but things with AMD weremore confusing. The initial AMD Ryzen series seemed to generallysupport ECC in the CPU , but themotherboard support was questionable, and even if your motherboardaccepted ECC DIMMs there was an open question of whether the ECCwas doing anything on any particular motherboard ( cf )


Go 1.22's go/types Alias type shows the challenge of API compatibility

Go famously promises backward compatibility to the first releaseof Go and pretty much delivers onthat (although the tools used to build Go programs have changed).Thus, one may be a bit surprised to read the following about go/types in the Go 1.22 ReleaseNotes :

The new Alias type representstype aliases. Previously, type aliases were not representedexplicitly, so a reference to a type alias was equivalent to spellingout the aliased type, and the name of the alias was lost. [.


My plan for backups of my home machine (as of early 2024)

In theory, what I should do to back up my home desktop is fairly straightforward. I should get one or two USB hard drivesof sufficient size, then periodically connect one and do a backupto it (probably using tar, and potentially not compressing the tararchives to make them more recoverable in the face of disk errors).If I'm energetic, I'll have two USB hard drives and periodicallyrotate one to the office as an offsite backup. Modern USB should be fast enough for this,


Compatibility lingers long after it's needed (until it gets noticed)

We have a system for propagating login and password informationaround our fleet . In this system, allinformation about user logins flows out from our 'password master'machine, and each other machine can filter and transform that globallogin information as the machine merges it into the local /etc/passwd.Normal machines use the login information more or less as-is, butunusual ones can do things like set the shells of all non-staffaccounts to a program that just prints out 'only staff can log in