The Extended Validation TLS certificate endgame is here (to my surprise)

Today, Troy Hunt published Extend Validation Certificates areDead ,which runs over the pretty strong evidence for that proposition.I'm genuinely startled by the pace of these developments; I expectedthe EV certificate endgame to happen sometime, but nowhere nearthis fast and this definitively. To me, what stands out in TroyHunt's article is not just that major mobile browsers have aggressivelymoved away from doing special things for EV certificates, but thatlarge organizations are considering migrating away from them, andfor operational reasons instead


Python 3 supports not churning memory on IO

I am probably late to this particular party, just as I am late tomany Python 3 things, but today (in the course of research foranother entry) I discovered the pleasant fact that Python 3 nowsupports read and write IO to and from appropriate pre-created bytebuffers. This is supported at the low level and also at the highlevel with file objects (as covered in the io module ).

In Python 2, one of the drawbacks of Python for relatively highperformance IO-related code was


The importance of explicitly and clearly specifying things

I was going to write this entry in an abstract way, but it is easierand more honest to start with the concrete specifics and move fromthere to the general conclusions I draw and my points.

We recently encountered an unusual Linux NFS client behavior , which at the time I called a bug.I have since been informed that this is not actually a bug but isLinux's implementation of what Linux people call "close to opencache consistency", which is written up in the Linux NFS FAQ,section


CPython has a fairly strongly predictable runtime, which can be handy

I recently needed a program to test and explore some Linux NFSclient behavior (namely, our recent NFS issue ). Because this behavior depended onwhat user-level operations the kernel saw, I needed to be veryspecific about what system calls my test setup made, in what order,and so on. I also wanted something that I could rapidly put togetherand easily revise and alter for experiments, to see just whatsequence of (system call) operations were necessary to cause ourissues. In a way the


How to use uBlock Origin to block Javascript by default

I normally use uMatrix formy Javascript blocking (and cookies too), with uBlock Origin only handling ad-blocking and zapping page elements away . However,uBlock Origin can be used to block Javascript as well, and today Ibecame interested in understanding how to do this so that I couldunderstand how uBlock and uMatrix differ here ( for reasons beyondthe scope of this entry ( via )). Asa result and since I'm familiar with it, I'm going to frame a certainamount of this


How you migrate ZFS filesystems matters

If you want to move a ZFS filesystem around from one host to another,you have two general approaches; you can use ' zfs send ' and ' zfsreceive ', or you can use a user level copying tool such as rsync (or ' tar -cf | tar -xf ', or any number of similar options). Untilrecently, I had considered these two approaches to be more or lessequivalent apart from their convenience and speed (which generallytilted in favour of ' zfs send ').


I don't like getters and setters and prefer direct field access

One of the great language divides and system design debates isbetween direct access to fields in objects and doing things throughgetter and setter functions. In this debate, so far I come downfirmly on the side of direct field access. I have at least tworeasons for this.

The obvious reason to dislike getters and setters is that they'rebureaucracy and litter. We've all seen codebases that have a wholecollection of tiny methods whose only purpose is to get or set afield, and they only exist


A surprise discovery about procmail (and wondering about what next)

I've been using procmail for a very long time now, and over thattime I generally haven't paid much attention to the program itself.It was there in the operating systems I used, it worked, and soeverything was fine; it was just sort of there, like cat . Thus,I was rather surprised to stumble over the 2010 LWN article Reportsof procmail's death are not terribly exaggerated ( via , sort of via , via , viaPlanet Debian), which


The Linux kernel's internals showing through in the specifics of an NFS bug

On Mastodon, I said :

What's fascinating about this particular kernel bug to me is howclearly I can see the kernel's implementation poking through in whatthe bug is and what's required to reproduce it. The more I refinethings, the more I can guess where the problem probably is.

Let me give you the details on this, so you can see how the kernel'simplementation is poking through. I'll start with the bug and itsreproduction.

We recently ran into a


Cookie management models in Firefox Quantum in practice

I was recently reading The WebExtocalypse (viaPlanet Debian) and ran across the following bit about Firefox Quantumreplacements for old non-WebExt extensions:

Some packages are no longer useful upstream but alternatives areavailable:
[...]

My immediate reflexive reaction was 'these two things are not alike'.I like and use both Cookie AutoDelete and uMatrix ,but they have different ways of handling cookies that give you somewhatdifferent results, and neither of them is