2020-12-31: |
GNU Date and several versions of RFC 3339 dates
|
2020-12-30: |
Some ways to do a Prometheus query as of a given time
A Prometheus wish: easy ways to evaluate a PromQL query at a given time
|
2020-12-28: |
It feels like the broad Unix API is being used less these days
A little puzzle with printf() and C argument passing
|
2020-12-27: |
Our alerts are quiet most of the time (as they should be)
|
2020-12-25: |
The expiry time of Certificate Authority root certificates can be nominal (or not)
In Python 3, types are classes (as far as repr() is concerned)
|
2020-12-24: |
In CPython, types implemented in C actually are part of the type tree
|
2020-12-23: |
Using constant Python hash functions for fun and no real profit
|
2020-12-21: |
The legibility of different versions of ZFS
|
2020-12-20: |
Who I think CentOS Stream is and isn't for
Go modules are soon going to be the only future
|
2020-12-18: |
On Go, release timing, and new machines
|
2020-12-17: |
Limiting the Nouveau kernel driver's messages via removal
|
2020-12-16: |
Mailing lists and bounce handling (or not handling bounces) today
|
2020-12-15: |
How to make Grafana properly display a Unix timestamp
In Prometheus, it's hard to work with when metric points happened
|
2020-12-14: |
Chrome is getting its own set of Certificate Authority roots
|
2020-12-12: |
My views on the suitability of CentOS Stream
Sometimes a problem really is just a coincidence
|
2020-12-11: |
CentOS's switch to CentOS Stream has created a lot of confusion
|
2020-12-09: |
A probable benefit to enabling screen blanking on LCD displays
|
2020-12-08: |
CentOS's switch to Stream is a major change in what CentOS is
|
2020-12-07: |
Exploring when the network is up on a machine
|
2020-12-06: |
The deprecation of FTP in browsers and its likely effects on search engines
Linux's hostname -s switch is now safe for many people, but the situation is messy
|
2020-12-04: |
How to get generic interface names and IPs in OpenBSD PF
Some thoughts about low power loads and power supply efficiency
|
2020-12-02: |
Prometheus 2.23.0 now lets you display graphs in local time
|
2020-12-01: |
A new appreciation for Firefox's 'Performance' web developer tool
|
2020-11-30: |
Our monitoring of our OpenBSD machines, such as it is (as of November 2020)
Link: wtfpython
|
2020-11-29: |
Some thoughts on how I still miss DTrace (and also mdb)
The death and life of postmaster@anywhere
|
2020-11-27: |
Setting up self-contained Go program source that uses packages
|
2020-11-26: |
The better way to make an Ubuntu 20.04 ISO that will boot on UEFI systems
Making an Ubuntu 20.04 ISO that will boot on UEFI systems
|
2020-11-25: |
Firefox's WebRender has mixed results for me on Linux
|
2020-11-23: |
What containers do and don't help you with
My views on when you should use the official upstream versions of software
|
2020-11-22: |
Sometimes it's best to use the official upstream versions of software
|
2020-11-21: |
Github based projects have RSS syndication feeds for their releases
|
2020-11-19: |
Firefox on Linux has not worked well with WebRender for me so far
Apple Silicon Macs versus ARM PCs
|
2020-11-17: |
Grafana and the case of the infinite serial number
|
2020-11-16: |
POSIX write() is not atomic in the way that you might like
Unix doesn't normally do short write() s to files and no one expects it to
|
2020-11-15: |
I don't expect to have an ARM-based PC any time soon
|
2020-11-14: |
Linux servers can still wind up using SATA in legacy PATA mode
|
2020-11-13: |
If you use Exim on Ubuntu, you probably want to skip Ubuntu 20.04
|
2020-11-11: |
The problems inherent in building your own copies of software packages
Logging fatal exceptions in my Python programs is not enough
|
2020-11-09: |
Seriously using virtualization clashes with our funding model
Getting the git tags that are before and after a commit (in simple cases)
|
2020-11-08: |
Thinking about two different models of virtualization hosts
|
2020-11-07: |
Turning on console blanking on a Linux machine when logged in remotely
|
2020-11-06: |
Console blanking now defaults to off on Linux (and has for a while)
It's possible that the real size of different SSDs is now consistent
|
2020-11-04: |
In Python, using the logging package is part of your API, or should be
You shouldn't use the Linux dump program any more (on extN filesystems)
|
2020-11-03: |
Fixing blank Cinnamon sessions in VMWare virtual machines (on Fedora)
|
2020-11-01: |
Python's global statement and imports in functions
|
2020-10-31: |
A gotcha with combining single-label and multi-label Prometheus metrics
Some settings you want to make to CyberPower's UPS Powerpanel daemon
|
2020-10-30: |
A sysadmin learning experience courtesy of some UPS issues
|
2020-10-29: |
An illustration of why running code during import is a bad idea (and how it happens anyway)
|
2020-10-28: |
An issue with Pip installed packages and Python versions (on Unix)
|
2020-10-26: |
Sometimes alerts have inobvious reasons for existing
Link: [Firefox] Navigational Instruments
Fifteen years of DWiki, the Python engine of Wandering Thoughts
|
2020-10-25: |
Remotely upgrading my office workstation to Fedora 32 worked fine
|
2020-10-24: |
Why configuration file snippets in a directory should have some extension
|
2020-10-23: |
An inconvenience of physical hardware is that it has to be delivered
|
2020-10-21: |
Keeping VMware Workstation VMs running when I quit from VMware
A mystery uncovered by Fedora 32 changing my default font
|
2020-10-19: |
Firefox has a little handy font-related thing on Unix (or at least Linux)
What versions of PyPy I can use (October 2020 edition)
|
2020-10-18: |
We need to start getting some experience with using Ubuntu 20.04
|
2020-10-17: |
A potential Prometheus issue for labeled metrics for infrequent events
|
2020-10-16: |
Go is gaining the ability to trace init calls on program startup
|
2020-10-15: |
Go packages can have more than one init() function
|
2020-10-13: |
As an outsider, I prefer issue tracking to be in its own application
|
2020-10-12: |
If you send automated email, you should scan it with anti-spam software
|
2020-10-11: |
Microsoft SharePoint is being used to send spam
Our current usage and views of UPSes (late 2020 edition)
|
2020-10-10: |
Wanting to be able to monitor for electrical power quality issues
|
2020-10-09: |
Whether extra disks should be live or spare now depends on HDs versus SSDs
|
2020-10-08: |
Sorting out what the Single Unix Specification is and covers
|
2020-10-07: |
A handy diff argument handling feature that's actually very old
|
2020-10-06: |
Linux distributions have sensible reasons to prefer periodic releases
|
2020-10-04: |
Web page generation systems should support remapping external URLs
Link: Old-School Disk Partitions
Solid state disks in mirrors and other RAID setups, and wear lifetimes
|
2020-10-03: |
A thought about the lifetimes of hard disks and solid state disks
|
2020-10-02: |
Firefox is improving its handling of HTTP Basic Authentication (on Unix)
|
2020-09-30: |
People still use newgrp (to my surprise)
Using DMARC information is complicated in practice in the real world
How the Unix newgrp command behaved back in V7 Unix
|
2020-09-29: |
Implementing 'and' conditions in Exim SMTP ACLs the easy way (and in Exim routers too)
Why the Unix newgrp command exists (sort of)
Where (and how) you limit your concurrency in Go can matter
|
2020-09-28: |
My likely path away from spinning hard drives on my home desktop
Making product names of what you use visible to people is generally a mistake
Looking at DKIM information for our 'good' email (September 2020 edition)
|
2020-09-27: |
Remote power control for your machines comes in two flavours
|
2020-09-26: |
We rebooted all of our servers remotely (more or less) and it all worked
Using SPF on HELO/EHLO hostnames is repurposing SPF to validate a different thing
|
2020-09-19: |
Python virtual environments transparently add themselves to sys.path
|
2020-09-17: |
Python 3 venvs don't normally really embed their own copy of Python (on Unix)
|
2020-09-16: |
How I think I want to drop modern Python packages into a single program
Why I write recursive descent parsers (despite their issues)
|
2020-09-15: |
When the Go garbage collector will panic over bad pointer values
|
2020-09-13: |
I'm now a user of Vim, not classical Vi (partly because of windows)
Rolling distribution releases versus periodic releases are a tradeoff
|
2020-09-12: |
Some notes on what Fedora's DNF logs and where
|
2020-09-10: |
My take on permanent versus temporary HTTP redirects in general
Permanent versus temporary redirects when handling extra query parameters on your URLs
|
2020-09-08: |
What you should do about extra query parameters on your URLs
|
2020-09-07: |
Why Fedora version upgrades are complicated and painful for me
URL query parameters and how laxness creates de facto requirements on the web
|
2020-09-06: |
Daniel J. Bernstein's IM2000 email proposal is not a good idea
|
2020-09-05: |
Some notes on what the CyberPower UPS 'Powerpanel' software reports to you
|
2020-09-04: |
In practice, cool URLs change (eventually)
|
2020-09-02: |
Why I want something like Procmail with a dedicated mail filtering language
|
2020-09-01: |
Even in Go, concurrency is still not easy (with an example)
|
2020-08-31: |
Why we won't like it if signing email is the solution to various email problems
|
2020-08-30: |
All forms of signing email are generally solving the wrong problem (a thesis)
|
2020-08-29: |
An interesting mistake with Go's context package that I (sort of) made
|
2020-08-28: |
My divergence from 'proper' Vim by not using and exploring features
Firefox 80 and my confusion over its hardware accelerated video on Linux
|
2020-08-26: |
Even on SSDs, ongoing activity can slow down ZFS scrubs drastically
|
2020-08-25: |
My home desktop is still locking up when it gets too cold (and what next)
|
2020-08-24: |
I want a type of desktop PC (and motherboard) that's generally skipped
|
2020-08-23: |
The Linux kernel bugzilla (and others) get spammed (of course)
|
2020-08-22: |
Some bits on making Python's argparse module work like Unix usually does
|
2020-08-21: |
Link: Why Did Mozilla Remove XUL Add-ons?
When I stopped believing in Google's fundamental good nature
|
2020-08-20: |
What you're looking for with a Grafana dashboard affects its settings
|
2020-08-19: |
Potential problem points for Chrome (or any browser) to support Linux
|
2020-08-18: |
The Prometheus host agent can disturb Linux CPU frequency measurements
|
2020-08-17: |
Firefox and web browsers for Linux
Important parts of Unix's history happened before readline support was common
|
2020-08-16: |
"It works on my laptop" is a blame game
|
2020-08-15: |
Go will inline functions across packages (under the right circumstances)
|
2020-08-14: |
Go 1.15's interface optimization for small integers is invisible to Go programs
|
2020-08-12: |
People often have multiple social identities even in the physical realm
How Go 1.15 improved converting small integer values to interfaces
|
2020-08-10: |
Disabling DNF modules on Fedora 31 so they don't mess up package updates
|
2020-08-09: |
Unix options conventions are just that, which makes them products of culture
|
2020-08-08: |
More problems with Fedora 31 DNF modules and package updates
|
2020-08-07: |
How we choose our time intervals in our Grafana dashboards
Our problem installing an old Ubuntu kernel set of packages
|
2020-08-05: |
My views on some conventions for Unix command line options
We may wind up significantly delaying or mostly skipping Ubuntu 20.04
|
2020-08-03: |
Exim's change to 'taint' some Exim variables is going to cause us pain
The issue of how to propagate some errors in our Django web app
|
2020-08-01: |
Getting my head around the choice between sleeping and 'tickers'
|
2020-07-31: |
Putting some extra 'obvious' information into our temperature alerts
|
2020-07-30: |
Putting IPMIs on a port isolated network to deal with shared network interfaces
|
2020-07-29: |
The problem of 'shared' IPMI network interfaces
|
2020-07-28: |
Our ZFS spares handling system for ZFS on Linux
Digital microwaves show an example of good UI doing what you wanted
|
2020-07-26: |
Linux PAM leads to terrible error messages from things like passwd
Keeping backup ZFS on Linux kernel modules around
|
2020-07-24: |
My varied types of Firefox windows
Some thoughts on us overlooking Illumos's syseventadm
|
2020-07-23: |
C's main() is one of the places where Unix's user and kernel APIs differ
|
2020-07-21: |
Contrasting the two common approaches to where programs start running
|
2020-07-20: |
An exploration of why Python doesn't require a 'main' function
|
2020-07-19: |
In praise of ZFS On Linux's ZED 'ZFS Event Daemon'
|
2020-07-18: |
Using Go build directives to optionally use new APIs in the standard library
|
2020-07-17: |
Not all sysadmin tools should be silent by default
|
2020-07-16: |
Malware spammers put .exe Windows executables in everything
|
2020-07-15: |
A piece of phish spam with some clever URL obfuscation
|
2020-07-14: |
Today I learned that Python's argparse module allows you to abbreviate long command line options
Link: The Anatomy of a PromQL Query
|
2020-07-13: |
How major and minor device numbers worked in V7 Unix
|
2020-07-12: |
Running servers and Fred Brooks on transforming programs to products
Linux desktop application autostarting is different from systemd user units
|
2020-07-10: |
The impact on middleware of expanding APIs with Go's interface smuggling
Ubuntu, building current versions of Firefox, and snaps
|
2020-07-09: |
Link: Mime type associations (on Linux)
|
2020-07-08: |
"Interface smuggling", a Go design pattern for expanding APIs
|
2020-07-07: |
Some thoughts on Fedora moving to btrfs as the default desktop file system
I now think that blog 'per day' pages with articles are a mistake
|
2020-07-05: |
A Go lesson learned: sometimes I don't want to use goroutines if possible
|
2020-07-04: |
How you get multiple TLS certificate chains from a server certificate
What a TLS self signed certificate is at a mechanical level
|
2020-07-02: |
The work that's not being done from home is slowly accumulating for us
Link: Code Only Says What it Does
|
2020-07-01: |
In ZFS, your filesystem layout needs to reflect some of your administrative structure
|
2020-06-30: |
The unfortunate limitation in ZFS filesystem quotas and refquota
|
2020-06-29: |
How Prometheus Blackbox's TLS certificate metrics would have reacted to AddTrust's root expiry
Adapting our Django web app to changing requirements by not doing much
|
2020-06-28: |
Understanding why Django's goals are not our goals for our web application
|
2020-06-26: |
NetworkManager and (not) dealing with conflicting network connections
|
2020-06-25: |
What Prometheus Blackbox's TLS certificate expiry metrics are checking
|
2020-06-24: |
Unix's design issue of device numbers being in stat() results for files
|
2020-06-23: |
Sometimes it takes other people to show you some of your site's design flaws
|
2020-06-22: |
Today I learned that HTML <abbr> may not do much on mobile browsers
|
2020-06-21: |
In Go, the compiler needs to know the types of things when copying values
|
2020-06-20: |
The additional complications in DNS updates that secondary DNS servers add
|
2020-06-19: |
Removing unmaintained packages from your Fedora machine should require explicitly opting in
People's efficiency expectations for generics in 'Go 2' and patterns of use
|
2020-06-17: |
How applications autostart on modern Linux desktops
A scrolling puzzle involving GTK+, XInput, and alternate desktops (on Fedora)
|
2020-06-15: |
Input events on X have an old world and a new world
|
2020-06-14: |
Product code and utility code
|
2020-06-13: |
An interesting combination of flaws in some /etc/mailcap handling
|
2020-06-12: |
The safety of GMail's POP server TLS certificate verification (or lack of it)
Dual displays contrasting with virtual screens (aka multiple desktops)
|
2020-06-10: |
A dual display setup creates a natural split between things
|
2020-06-09: |
The practical people problem with instance diversity in the Fediverse
My mixed feelings about 'swap on zram' for Linux
|
2020-06-07: |
A Go time package gotcha with parsing time strings that use named time zones
|
2020-06-06: |
Why sysadmins don't like changing things, illustrated
|
2020-06-05: |
Why we put alert start and end times in our Prometheus alert messages
|
2020-06-04: |
Formatting alert start and end times in Prometheus Alertmanager messages
|
2020-06-03: |
In theory you (we) should have SPF records for HELO hostnames too
|
2020-06-02: |
A subtle trap when formatting Go time.Time values
|
2020-06-01: |
Watching the recent AddTrust root CA certificate expiry has been humbling
|
2020-05-31: |
Mail forwarding is slowly dying (probably)
|
2020-05-30: |
How we're likely to DKIM sign some of our email messages
|
2020-05-29: |
What sort of SSH keys our users use or have listed in their authorized keys files
|
2020-05-28: |
The surprising persistence of RSA keys in SSH
|
2020-05-27: |
What I think OpenSSH 8.2+'s work toward deprecating 'ssh-rsa' means
My various settings in X to get programs working on my HiDPI display
|
2020-05-25: |
My failure with Xpra (probably because what I want is almost impossible)
|
2020-05-24: |
A cheatsheet for Python's pip for how I use it
Security questions and warnings are effectively confirmation requests
|
2020-05-22: |
Mixed feelings about Firefox Addons' new non-Recommended extensions warning
Working out how frequently your ICMP pings fail in Prometheus
|
2020-05-20: |
How I work on Python 2 and Python 3 with the Python Language Server (in GNU Emacs)
Switching to the new in-kernel WireGuard module was easy (on Fedora 31)
|
2020-05-18: |
Reading the POSIX standard for Unix functions is not straightforward
|
2020-05-17: |
Syndication feeds (RSS) and social media can be complementary
Some views on having your system timezone set to UTC
|
2020-05-15: |
Why we use city names when configuring system timezones
|
2020-05-14: |
Exploring munmap() on page zero and on unmapped address space
|
2020-05-13: |
Getting my head around what things aren't comparable in Go
The modern HTTPS world has no place for old web servers
|
2020-05-11: |
Why we have several hundred NFS filesystems in our environment
|
2020-05-10: |
How we guarantee there's always some free space in our ZFS pools
|
2020-05-09: |
How big our fileserver environment is (as of May 2020)
|
2020-05-08: |
Revisiting what the ZFS recordsize is and what it does
Linux software RAID resync speed limits are too low for SSDs
|
2020-05-06: |
Modern versions of systemd can cause an unmount storm during shutdowns
How to set up an Ubuntu 20.04 ISO image to auto-install a server
|
2020-05-04: |
Notes on the autoinstall configuration file format for Ubuntu 20.04
The Go compiler has real improvements in new versions (and why)
|
2020-05-03: |
What OSes we use here (as of May 2020)
|
2020-05-01: |
What problems Snaps and Flatpaks are solving
|
2020-04-30: |
The afterlife of Python 2
|
2020-04-29: |
The problem of Ubuntu 20.04, Snaps, and where your home directory is
Dealing with my worries about Django and HTTP Basic Authentication
|
2020-04-27: |
I think you should generally be using the latest version of Go
My views on SystemTap as compared to eBPF for Linux kernel instrumentation
|
2020-04-26: |
Looking back at DTrace from a Linux eBPF world (some thoughts)
|
2020-04-25: |
Some notes on Firefox's interstitial warning for old TLS versions
|
2020-04-24: |
Accepting TLS certificate hostnames based on IP address checks is not safe
|
2020-04-23: |
The Unix divide over who gets to chown things, and (disk space) quotas
|
2020-04-22: |
More on chown in combination with symlinks
|
2020-04-20: |
An important safety note about chown and symlinks (also chmod and chgrp)
|
2020-04-19: |
Verifying the server hostname for a TLS certificate has two purposes
GMail, POP, and TLS server certificate verification
|
2020-04-17: |
We've disabled eBPF for normal users on our Linux machines
Some bits of grep usage are where I disagree with Shellcheck
|
2020-04-15: |
Some ways that servers make their disks not hot-swappable
We're (temporarily) moving to three way mirrored disks on our servers
|
2020-04-13: |
If you use GNU Grep on text files, use the -a (--text) option
|
2020-04-12: |
The appeal of doing exact string comparisons with Apache's RewriteCond
ZFS on Linux has now become the OpenZFS ZFS implementation
|
2020-04-10: |
'Deduplicated' ZFS send streams are now deprecated and on the way out
Why my commit messages for configuration files describe my changes
|
2020-04-08: |
Why you want a Linux bootloader even on UEFI systems
There can be differences in what malware variants anti-spam systems distinguish
|
2020-04-06: |
Fedora 31 fumbles DNF modules, package updates edition
|
2020-04-05: |
My normal process for upgrading from one Fedora version to another
Why it's very bad for applications to start themselves automatically
|
2020-04-03: |
Microsoft Teams' bad arrogance on (Fedora) Linux
|
2020-04-02: |
We may face some issues with the timing of Ubuntu 20.04 and its effects
|
2020-04-01: |
Why Linux bootloaders wind up being complicated
|
2020-03-31: |
My home DSL link really is fast enough to make remote X acceptable
|
2020-03-30: |
It's worth documenting the obvious (before it stops being obvious)
Notes on Grafana 'value groups' for dashboard variables
|
2020-03-29: |
I set up Python program options and arguments in a separate function
|
2020-03-28: |
The Prometheus host agent's CPU utilization metrics can be a bit weird
|
2020-03-27: |
OpenBSD's 'spinning' CPU time category
|
2020-03-26: |
Any KVM over IP systems need to be on secure networks
|
2020-03-25: |
The problem of your (our) external mail gateway using internal DNS views
|
2020-03-23: |
How we set up our ZFS filesystem hierarchy in our ZFS pools
Why we use 1U servers, and the two sides of them
|
2020-03-22: |
Avoiding the 'dangling else' language problem with mandatory block markers
|
2020-03-20: |
Wishing for a remote resilient server environment (now that it's too late)
|
2020-03-19: |
Make sure to keep useful labels in your Prometheus alert rules
Sorting out Go's 'for ... = range .. ' and when it copies things
|
2020-03-18: |
Understanding X mouse cursors (and their several layers of history)
|
2020-03-17: |
A problem I'm having with my HiDPI display, remote X, and (X) cursors
|
2020-03-16: |
How Firefox could support automatically using local DNS over HTTPS servers
|
2020-03-15: |
Why the choice of DNS over HTTPS server needs to be automatic (a sysadmin view)
|
2020-03-14: |
The two meanings of 'DNS over HTTPS' today
|
2020-03-13: |
Sensible heuristics for when to use DNS over HTTPS can't work for us
|
2020-03-12: |
TLS increasingly exists in three different worlds
|
2020-03-11: |
Some notes on the state of DNS over HTTPS in Firefox (as of March 2020)
|
2020-03-09: |
Logging out of HTTP Basic Authentication in Firefox
What makes our Ubuntu updates driver program complicated
|
2020-03-08: |
How we sort of automate updating system packages across our Ubuntu machines
|
2020-03-07: |
Linux's iowait statistic and multi-CPU machines
|
2020-03-05: |
The problem of Unix iowait and multi-CPU machines
|
2020-03-04: |
Unix's iowait% is a narrow and limited measure that can be misleading
|
2020-03-03: |
One impact of the dropping of Python 2 from Linux distributions
|
2020-03-02: |
More or less what versions of Go support what OpenBSD releases (as of March 2020)
|
2020-03-01: |
The situation with Go on OpenBSD
|
2020-02-29: |
OpenBSD versus Prometheus (and Go)
|
2020-02-28: |
One reason for Go to prefer providing indexes in for ... range loops
|
2020-02-27: |
Some alert inhibition rules we use in Prometheus Alertmanager
|
2020-02-26: |
The magic settings to make a bar graph in Grafana
The browsers are probably running the TLS show now
|
2020-02-25: |
The basics of /etc/mailcap on Ubuntu (and Debian)
|
2020-02-23: |
Webmail providers (and others) hiding user IPs was the right decision
Our (unusual) freedom to use alerts as notifications
|
2020-02-22: |
Will common motherboards ever have very many NVMe drive slots?
|
2020-02-21: |
An appreciation for Cinnamon's workspace flipping keyboard shortcuts
|
2020-02-20: |
Link: Stop Using Encrypted Email
|
2020-02-19: |
Load average is now generally only a secondary problem indicator
How and why we regularly capture information about running processes
|
2020-02-17: |
The uncertainty of an elevated load average on our Linux IMAP server
The case of mysterious load average spikes on our Linux login server
|
2020-02-16: |
With sudo, complex argument validation is best in cover scripts
|
2020-02-14: |
Unix's /usr split and standards (and practice)
The /bin versus /usr split and diskless workstations
|
2020-02-12: |
You can't delegate a ZFS administration permission to delete only snapshots
Some git aliases that I use
|
2020-02-10: |
Doing frequent ZFS scrubs lets you discover problems close to when they happened
|
2020-02-09: |
I'm likely giving up on trying to read Fedora package update information
Code dependencies and operational dependencies
|
2020-02-08: |
Ways that I have lost the source code for installed programs
|
2020-02-07: |
I frequently use dependencies because they enable my programs to exist
|
2020-02-05: |
The drawback of having a dynamic site with a lot of URLs on today's web
|
2020-02-04: |
What 'is ' translates to in CPython bytecode
The place of the 'is ' syntax in Python
|
2020-02-02: |
What we do to enable us to grow our ZFS pools over time
Some unusual and puzzling bad requests for my CSS stylesheet
|
2020-01-31: |
Finding out what directories exist with only basic shell builtins (a Unix shell trick)
|
2020-01-30: |
Some notes on Python's email.header.decode_header()
|
2020-01-29: |
Some effects of the ZFS DVA format on data layout and growing ZFS pools
Why ZFS is not good at growing and reshaping pools (or shrinking them)
|
2020-01-28: |
More badly encoded MIME Content-Disposition headers
|
2020-01-26: |
The real world is mutable (and consequences for system design)
How big our Prometheus setup is (as of January 2020)
|
2020-01-25: |
A network interface losing and regaining signal can have additional effects (in Linux)
|
2020-01-24: |
Go compared to Python for small scale system administration scripts and tools
|
2020-01-23: |
What we've written in Go at work and how it came about (as of January 2020)
|
2020-01-22: |
Why I've come to like that Go's type inference is limited
|
2020-01-20: |
The value of automation having ways to shut it off (a small story)
|
2020-01-19: |
Python 2, Apache's mod_wsgi, and its future in Linux distributions
Why a network connection becoming writable when it succeeds makes sense
|
2020-01-18: |
CUPS's page log, its use of SNMP, and (probably) why CUPS PPDs turn that off
|
2020-01-17: |
The question of how long Python 2 will be available in Linux distributions
|
2020-01-15: |
How Go's net.DialContext() stops things when the context is cancelled
Stopping udev from renaming your VLAN interfaces to bad names
|
2020-01-13: |
We may not want to use OCSP stapling in our web servers
Link: Mercurial's Journey to and Reflections on Python 3
|
2020-01-12: |
Sorting out the dates of Python 2's 'end of life'
How I now think you want to configure Apache for OCSP stapling
|
2020-01-10: |
OCSP stapling and what web servers and browsers do in the face of errors
Fedora 31 has decided to allow (and have) giant process IDs (PIDs)
|
2020-01-08: |
Why I use both uBlock Origin and uMatrix
My Firefox addons as of Firefox '74' (the current development version)
|
2020-01-07: |
eBPF based tools are still a work in progress on common Linuxes
|
2020-01-06: |
How I move files between iOS devices and Unix machines (using SSH)
|
2020-01-05: |
Why I prefer the script exporter for exposing script metrics to Prometheus
|
2020-01-04: |
Three ways to expose script-created metrics in Prometheus
|
2020-01-03: |
How job control made the SIGCHLD signal useful for (BSD) Unix
|
2020-01-01: |
The good and bad of errno in a traditional Unix environment
|