Taking over program names in Linux is generally hard
One reaction to the situation with net-tools versus iproute2 , where the Linux code for ifconfig , netstat , and so on is using old and incomplete interfaces and isbasically unmaintained, is that the new and actively maintained iproute2 should provideits own reimplementations of ifconfig , netstat , and so on thatpreserve the interface (or as much of it as possible) while usingmodern mechanisms. Setting aside the question of whether the peopledeveloping iproute2 even like the ifconfig interface and arewilling to spend their time writing
An incomplete list of reasons why I force-quit iOS apps
As a result of having iOS devices , I'vewound up reading a certain amount of things about using iOS and howyou're supposed to do that. One of the things that keeps coming upperiodically is people saying 'don't force-quit iOS apps, it's abad idea'. What reading a number of these articles has shown me isthat people seem to have somewhat different views about why youmight want to force-quit iOS apps than I do, and often more narrow
ZFS pushes file renamings and other metadata changes to disk quite promptly
One of the general open questions on Unix is when changes likerenaming or creating files are actually durably on disk. Famously,some filesystems on some Unixes have been willing to delay this foran unpredictable amount of time unless you did things like fsync() the containing directory of your renamed file, not just fsync() the file itself. As it happens, ZFS's design means that it offerssome surprisingly strong guarantees about this; specifically, ZFSpersists all metadata changes to disk no later than the nexttransaction
Most modern web spiders are parasites
Once upon a time, it was possible to believe that most web spidershitting your site were broadly beneficial to the (open) web and topeople in general. Oh, sure, there were always bad ones (includingspammers scraping the web for addresses to spam), but you could atleast believe that bad or selfish spiders were the exception. It'smy view that these days are over and that on the modern web, mostspiders crawling your site are parasites.
My criteria for whether something is or
There's real reasons for Linux to replace ifconfig, netstat, et al
One of the ongoing system administration controversies in Linux isthat there is an ongoing effort to obsolete the old, cross-Unixstandard network administration and diagnosis commands of ifconfig , netstat and the like and replace them with fresh new Linux specificthings like ss and the ip suite. Old sysadmins are generally grumpy about this; they considerit yet another sign of Linux's 'not invented here' attitude thatsees Linux breaking from well-established Unix norms to go its ownway. Although I'm an old sysadmin
Some notes on Go's runtime.KeepAlive() function
I was recently reading go101's "Type-Unsafe Pointers" ( via )and ran across a usage of an interesting new runtime package function, runtime.KeepAlive() . I was initially puzzledby how it was used, and then me being me I had to poke into how itworked.
What runtime.KeepAlive() does is that it keeps a variable 'alive',which means that it (and what it refers to) will not be garbagecollected and any finalizers it has
Registering for things on the Internet is dangerous these days
Back in the old days (say up through the middle of the 00s), it waseasily possible to view registering for websites, registeringproducts on the Internet, and so on as a relatively harmless andeven positive activity. Not infrequently, signing up was mostlythere so you could customize your site experience and preferences,and maybe so that you could get to hear about important news.Unfortunately those days are long over. On today's Internet,registration is almost invariably dangerous.
The obvious problem is
Almost no one wants to run their own infrastructure
Every so often, people get really enthused about the idea of a lessconcentrated, more distributed Internet, one where most of our emailisn't inside only a few places, our online chatting happens overfederated systems instead of Twitter, there are flower gardens ofpersonal websites and web servers, there are lots of different Gitservers instead of mostly Github, and so on. There are many obstaclesin the way of this, including that the current large providers don'twant to let people go, but over
Bad versions of packages in the context of minimal version selection
Recently, both Sam Boyer and Matt Farina havemade the point that Go's proposed package versioning lacks an explicit wayfor packages to declare known version incompatibilities with otherpackages. Suppose that you have a package A and it uses package X,initially at v1.5.0. The package X people release v1.6.0, which isfine, and then v1.7.0, where they introduce an API behavior change thatis incompatible with how your package uses the API ( Matt
'Minimal version selection' accepts that semantic versioning is fallible
Go has been quietly wrestling with package versioning for a longtime. Recently, Russ Cox brought forward a proposal for packageversioning ; one ofthe novel things about it is what he calls 'minimal versionselection' , which I believehas been somewhat controversial.
In package management and versioning, the problem of version selectionis the problem of what version of package dependencies you'll use. Ifyour package depends on another package A, and you say your minimumversion of A is 1.1.0, and