Looks like I’m going to be a Guest of Honor at Penguicon 2027. I was previously a Penguicon GoH in 2013, so obviously they didn’t learn their lesson. The con runs April 8-11 2027 so if you’re in Detroit, do sign up. Other guests include Dr Rob Pyatt, Jennifer Brozek, John Chu, Phenderson Djéli Clark, and Seanan McGuire. With heavy hitters like this, I’m not sure why they need me?
Perhaps it’s just that if you give too many talks at Penguicon, they make you sit at the front of the class.
There’s one story in Twisted Presents I haven’t read here, so that’s what you get.
This isn’t a fairytale, but: Once upon a time, we were all friends.
And it’s not going to end happily ever after. On this Christmas Eve, three tedious years after the disastrous college summer when Kurt betrayed us, Phil and I are finally making an ending.
Kurt’s ill-gotten mansion looms on an isolated northern California cliff overlooking the Pacific Ocean. This deep in the night, the scents of ocean and eucalyptus rule the air. After crossing thousands of miles of open water without being soiled by filthy land animal lungs, the air is so rich that it makes me feel a little high. I deliberately focus on the basics of burglary, keeping my breath slow and placing each foot meticulously on the kitchen’s porcelain tile. Enough moonlight seeps through the fog to illuminate the mansion’s insane luxury. Had Jim died so that Kurt could have two ovens large enough to roast a calf in? Was Sarah rotting in a Turkish prison the price of a mahogany-topped island? Were the dozens of high-end cookpots dangling from the ceiling worth Danny’s awful death?
Kurt thought so.
When will Twisted Presents launch? As soon as my life is in order to allow it.
I’m preparing to launch the Twisted Presents Kickstarter at last. The US economy has gone wrong lately, for obvious reasons. Costs for printing and shipping have increased. We’re not quite in a capital strike, but it’s dang near. I needed to revisit costs and prices for this book.
I took notes as I did so. If you want to do crowdfunding, here’s my approach. This, other stuff from that site, tidbits from my blog, and assorted other detritus will probably form part of a long-requested “How I Make A Living Writing” book.
The US Post Office has yet again raised shipping prices. I’ve ignored the last couple hikes, but everyone else from the grocery store to the landlord is raising their prices as well.
I’ve just finished prepping the print version of Twisted Presents, so here’s a tidbit from one of the stories therein.
The first Hogswatch Eve after the accident, Merle had stopped on the way back from the hospital for a fifth of Makers’ Mark. He knew if he started drinking he’d never stop, but the next day was Hogswatch and he couldn’t think of any other way to survive the night. He woke the next morning with an empty bottle, an open sewer for a mouth, and a witch’s brew in his stomach.
Through all that, he could still smell the sheets. He hadn’t changed them in weeks. There wasn’t a reason to. The bed made a warm greasy nest that suited the wreck of his life.
But it was Hogswatch. He had to get to the clinic. Soon as he could. They were reading Night Watch. For when his voice gave out, he’d loaded a couple of movies onto a tablet. White Christmas and Gremlins. He hadn’t done much in the way of shopping, but he’d picked up a fruit and nut bar at the hospital gift shop a couple days ago. It was the first treat he’d ever bought her back in college, and all the feast he could handle.
The alternative was to lie here and cry. Again. Crying always made him feel worse.
I finished the OpenZFS Mastery chapter on volumes earlier this week.
Zvols support sparse volumes, also known as thin provisioning or overcommitting storage. A sparse volume is a volume that reserves less space than the volume actually needs. Sparse volumes permit allocating more space than the pool has available. You could, for example, create ten 1-exabyte sparse volumes on your 1 TiB dataset. So long as your volumes are never heavily used, nobody will notice that you’re overcommitted. Sparse volumes can be useful if you’re prepared to add more disks. Using a sparse volume means you can tell the Windows host that a disk is a specific large size, even if the underlying pool doesn’t have that much free space.
Sparse volumes are not generally recommended. If the pool fills up but the sparse volumes think they have space remaining, writes will fail with an “out of space” error. Guests will get errors they can’t hope to resolve. Windows in particular has low distress tolerance.
I’m trying to finish up the OpenZFS Mastery chapter on disk space use today. Well, my part of it. I’m planning to dump–delegate, delegate–the section on deduplication to Allan. When you have a co-author expert, use them.
Zstd offers compression levels from 1 to 19. The default is zstd-3, a reasonable compromise between performance and efficiency. Writing data at higher compression levels require more CPU but might save more space. Zstd has a useful quirk where decompressing higher levels uses no more processing power than decompressing lower levels. If you have data that must be written once but read many times, increasing the compression level makes sense.
ZFS still supports gzip compression, but Zstd is always faster and achieves better results while using less processor and memory.
ZFS also offers the ZLE algorithm, for data with long runs of zeroes. Some file formats, such as GIFs and certain scientific data, include long runs of zeroes. If you have a dataset for such data, you might find ZLE compression useful.
How does one realistically tell if your data has long runs of zeroes? The simplest way I know is to pass it across a T1 with 23 channels set to b8zs but one channel stuck on AMI. Such a circuit cannot pass large all-zero packets. Sadly, this recommendation does not suit a book on filesystems.
Back in the 90s a notably pedantic coworker informed us ignorant peasants that, according to International Electrotechnical Commission standard IEC 80000-13:2008, disks and memory were now to be measured in “bi” units such as kibibyte and mebibyte. I agreed that he was technically correct, but nobody cared and saying “mebibytes” made you sound like either a pedant or an idiot.1 For all practical system administration purposes, the difference between a 1.544 MB floppy and a 1.544 MiB floppy was negligible. Yes, the operating system showed everything in mebibytes, but everything was labeled as being megabytes, and we all knew what it means.
This is no longer true.
My main test host has six hard drive bays. Each has a 3 TB drive, which is only 2.7 TiB. The operating system shows everything in binary-based tebibytes. I bought 18 TB of storage and got only 16.3 TiB.
People look to my books for information to keep their jobs. That missing two TiB is part of the information. If you’re doing capacity planning, it’s vital. From now on, my books need to use bi units for most storage.
In some cases, it looks stupid. Disks are also sold with 4K sectors. The package says that. “K” is an ambiguous label. It could mean kilobytes or kibibytes. Technically, disk sectors are kibibytes. I think I’ll just keep calling them 4K disks.
Memory? I want to say that nobody cares and that everybody knows what we mean. I don’t run any applications that use terabytes of memory, and for routine system administration tasks the difference between 32 GB and 32 GiB is negligible. But someone does care, and mixing GB of RAM with TiB of storage seems odd. Dang it. I think I have to be pedantic.
But in the 90s? Nobody cared, and we all knew what we meant. Unless you worked in embedded systems.
ZFS offers tools to transparently increase the amount of data you can fit on a disk. Rather than requiring the system administrator to compress and decompress individual files, ZFS uses efficient compression at the filesystem level. While compressing logs during rotation makes the files look smaller in ls(1), it doesn’t change how many disk blocks those logs use. Snapshots and clones let you duplicate entire datasets with only a tiny amount of space. ZFS can also perform deduplication of files, improving disk usage at the cost of memory. We’ll see how to evaluate these options and determine when to use each.
If ZFS is so transparent, why is space usage complicated? Child datasets affect their parents. Those space-efficient clones can grow, and snapshots can prevent freeing space.
I commission custom art for the IT Mastery books, but do the text layout myself. Most often, I use the Minion Pro for the body font and Myriad Pro for the display font. They’re staid, reliable, and unremarkable. On rare occasion, the topic demands a particular font. That’s straightforward; I must distort the design until the font fits.
When a book requires a specific kind of font, but not a single font, things get hard.
The cover for OpenZFS Mastery is an old Mediterraniean vase. It needs a font that looks like it’s from the Roman Empire or ancient Greece. There’s lots of fonts for that, no?
Yes. Hundreds of fonts.
Each promising candidate needs a test cover. Here’s some of what I’ve run through trying to find one that works.
Baselius font
This is a nifty font. I like the central line. The title doesn’t really stand out, though. Next candidate.
Elektra font
The title stands out better, but looks kind of… janky?
Maybe a different approach.
Romanicum font
That flows too well. It looks modern, not like it was carved into unbaked clay. Try again.
The font is named “Greco-Roman Lubed Wrestling.” Seriously.
I like the look of this font, but the title doesn’t stand out well enough.
Adonias font
Okay, this is pretty good. The title stands out nicely and is legible at a distance. The U is kind of odd, making the author names look like JLIDE and LLKAS.
After spending a couple hours searching through fonts, I have exhausted my visual analysis energy. Adonias it is, for now. I’ll see if I can find better some other day.
When you wonder why cover designers charge so much? This is why.