August’s Aqueous Sausage

This post went to Patronizers at the beginning of August, and to the public at the beginning of September. Not a Patronizer? You could be!

The apartment complex opened the pool. It’s right beneath my balcony. Now that my smaller desktop works, I can roll out and work while sneering at the people in the pool doing weird things like “relaxing” and “having fun” and “not melting in the heat,” all activities I have never tried and can thus authoritatively declare lack merit.

I attended a writers’ gathering at the end of July. Why a gathering? Conference is too strong a word. There were no scheduled events. Party isn’t right, either. Two colleagues invited a few dozen writers, artists, and publishing professionals into the mountains of Washington State to one, discuss the state of the industry, and two, allow the locals to sneer at those of us who thought we were in the mountains. There was barbeque. I learned some things. I reinforced old contacts. I reminded myself of why I do things this way and that this silly career could be fun. Exhausting, but worth the trip.

More exhausting was getting up at 2AM to catch my flight home yesterday. I slept ten hours last night. I’m walking into doorframes today. My youthful resilience has gone on vacation. I hope it comes back when its two weeks are up.

OpenZFS Mastery is taking shape. This book is structured much like a castle. The first third of the book is a massive foundation of knowledge. We have finished that foundation, subject to dashing back in to fill in details we forgot. Now we’re proceeding to individual narrow towers built atop that knowledge, with occasional outbuildings for zvols and replication automation, not to mention the deduplication dungeon. In some ways, these smaller topics are easier. The foundational topics are deeply intertwined and require careful handling so the reader can deeply absorb them all. Topics like deduplication and DRAID are downright bizarre and require careful handling for entirely different reasons. The manuscript’s about a third of the way done, but the foundation is clearly the largest, most complicated part. Yes, there’s more complex topics like DRAID and deduplication, but they are smaller and thus easier to organize.

One strange thing about revisiting books from ten years ago is discovering where they were insufficiently accurate. We discussed native file compression in FreeBSD Mastery: ZFS, but on a fairly superficial basis. The discussion saved many people a lot of trouble. Great. But a decade later, Allan has gone from “interested in ZFS” to “running a consulting service that writes new features for OpenZFS.” I, of course, have gone from “eccentric who wrote a shelf of books” to “full-on nut job who wrote a case of books.” We both know too much to ever be happy again, and can’t stop ourselves from asking questions. Where, exactly, does OpenZFS perform file compression? Is it on a sector-by-sector basis, stripe-by-stripe, or somewhere else? For many readers it will be a detail of minor interest, but for a handful the answer will be vital.

The books need updating for hundreds of details like this.

That means OpenZFS Mastery will be an entirely new book. Starting over would have been easier than revision, but we’re committed now.

Speaking of easier and starting over, I’m trying to work on fiction again. Yes, the nonfiction makes more money, but if I only write nonfiction the words dry up. The words have dried up for many reasons, but the only way to get them flowing again is to prime the pump and get started. I’m trying to write at least 50 words of fiction every day that I’m not indisposed. What is “indisposed?” That depends. Getting up at 2AM to catch a eastbound transcontinental flight, that causes indisposition.

With any luck, 50+ words a day will get me an orc Christmas story by the end of the month, letting me prepare to launch Twisted Presents. I can’t launch it, but I can completely prepare it.

Twisted Presents is a collection of Christmas stories. Half of them are crime stories. The other half are fantasies. A Prohibition Orcs story is both. I enjoy writing orc stories, and there are folks who will back a collection solely to get a new orc tale. I need to include one.

But:

In Michigan, divorces end with an even division of assets. Crowdfunding proceeds are an asset. Fulfilling a Kickstarter takes about half the proceeds. The date my divorce is final is determined entirely by the court; I don’t get a say, and I don’t necessarily get much warning. There’s a race condition where I collect Kickstarter funds, have to give half of them away, then have to fulfill the Kickstarter. I’m more than willing to split net, but splitting the gross means I get zero. Yes, I could pay a lawyer to negotiate around this, but lawyer fees would cost more than Twisted Presents is going to bring in. The divorce should be settled well before OpenZFS Mastery goes to print, at least.

Twisted Presents is a Christmas book. If I have it ready to go I can launch a ten-day campaign as late as Halloween and still fulfill. That requires I have a date for the divorce, though. I hope to know something by then.

We’re also waiting for the house to sell. We set the initial price before the US attacked Iran, though. The attack knocked down the real estate market, so we’re trying to ride the changes and see what we can get. (The political and economic stupidity that attack displayed is flat-out stunning.) If you want to live in Grosse Pointe Woods, in a house that’s guaranteed probably free of systemd infestation, this is your chance.

I wish I could tell you I’m doing something dramatic, but truly, I’m just grinding through the book. Making words, day after day. Attending the dojo 4-5 times a week. Saving money by cooking meals and avoiding processed crap. Attempting to sleep. You know, the usual.

I deeply appreciate your support as I get back on my feet.

Penguicon 2027 Guest of Honor

Me, a few days ago: Hey, Penguicon has some great Guests of Honor lined up! Not a dud in the bunch.

Then they posted this.

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.

Crowdfunding Pricing and Costs

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.

Those notes are on the Tilted Windmill Press Knowledge Base.

The hardest lesson I had to learn when I started writing professionally? “If someone puts a dollar in your hand, take it.”

Sponsorship Prices Increase

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.

Some point this week, I’ll be raising the price of the OpenZFS Mastery sponsorships.

I’ll probably have to raise the prices of published books soon. That’s a week’s worth of work. I don’t want to do it, but that’s life in capitalism.

Changing Language for Storage Capacity

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.

Cover Font Headaches

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.

July’s Jangada Sausage

This post went to Patronizers in July and to the public in August. Not a Patronizer? You could be!

It’s 98F outside and will remain so for the foreseeable future. Settling into the new apartment continues. My master plan for a smaller desk I can wheel onto the balcony is almost complete, but it’s 98F outside. I did go to the dojo yesterday despite the heat, but I think going tonight would be pushing my limits. Fortunately, my physical labor of getting our home ready to sale is done and I don’t have to go out in it. Other people are working on the house, preparing it for sale, and I don’t have to go back until next week. The divorce is in the court’s hands and everyone’s waiting.

Which means I have a week to catch up, starting with getting the monthly See the Sausage Being Made article back on the schedule I prefer. It feels like putting out to sea in a raft designed by observing nature rather than a knowledge of physics.

I’ve been reading the OpenZFS Mastery manuscript, tweaking tidbits here and there in the beginning. I hope to build up momentum so that when I reach the point where I stopped writing, I just keep going. This technique has worked well for me in the past and I’m hopeful it will again. Besides, I have nothing to do but hide indoors and write, because 98F.

No bright idea survives contact with reality, so I’m still rearranging the apartment. I had set up my test server under my desk, as one does, and configured a wireless bridge to give it Ethernet. It worked fine. I want to kill the power to the office when I’m not working, however. I call the test server as such because it hosts the VMs I use for testing, and it has eight hard drive bays for ZFS testing. I have a couple projects that I want to write about next that would benefit from having a production server running 24/7. I’ve relocated the test host to the living room and plugged it directly into the demarc switch. In my copious free time I’ll be configuring a DNS server and a netflow collector on it. That’ll let me play with things like DNS-based ad blocking and IPv6 analysis, two topics that will play against each other. The software license on my streaming media TV permits it to use my bandwidth during off hours to pillage web sites to feed AI scumbags? First, how dare. Second, turn off the TV at the power strip when not in use. But log its DNS queries so you can send those queries to oblivion, and analyze the traffic so you can feed it garbage? That’s the goal. Plus, you know, solving actual sysadmin problems. But mostly grinding my personal axes, the source of my best books.2

Earlier today, I got a message on the Run Your Own Mail Server Kickstarter. It ended in 2024, but a backer had missed both the original download link and the second download link I posted for folks who missed the first one. Two years. I don’t mind resending a download link, but when does Kickstarter fulfillment stop? I hired a naturally organized and disciplined person to shepherd physical fulfillment, so I’m confident that future books will have less drama. If someone fills out a backer survey two years after the campaign ends, should I interrupt everything to ship them the book? Set aside a day a month to check for stragglers on every campaign I’ve ever run? I’m pondering saying something in the Kickstarter like “Fulfillment stops three months after the first shipment leaves my house.” If someone contacts me I can choose to be accommodating, but it also leaves me an exit if necessary. I generally want to be accommodating. I also need room to say “come on, it’s been four years and the thing you backed for no longer exists. I sent you four requests for your shipping address before giving up. We are done here.” I’d leave ebook download links up for a year, because that’s the easy way to be accommodating.

Speaking of fulfillment: all of the N4SA2e Defenestrated Edition copies are on their way. I appreciate everyone’s patience. If I had known or believed Liz and I were going to divorce I would not have run the Kickstarter. Oops, I need to update the SNMP MIB and the web site for it! Tomorrow, I guess. Maybe I’ll do the MIB tonight, that’s nice easy Perl and doesn’t involve any icky images. Book covers are overrated anyway.

If there’s interest, I’m also thinking of an all-Patronizer video hangout this month. It’s been a while since I’ve done one, but life is no longer overwhelming me. Any interest?

Oh! I have managed some original writing from scratch since moving out. The FreeBSD Journal Letters column on improving software quality came out well enough. The Journal has a new editor and is making some changes, which gives me new opportunities to be cranky. I had some fun with it. I also did an interview for the Escape From 2026 Bundle, where I talked singularities and orcdom. Writing that interview was the first time I’ve felt the words come alive in over a year. Oh crap–I owe Digital Reader backers a copy of Tiny Time Wars! And I must update the web site for it!

These fiction bundles where I say my book goes out of print when the bundle ends? They’re collections. I gathered a few of my alternate history and time travel tales into a file, put a cover on it, and boom–an exclusive! The stories are all available elsewhere, but this particular collection won’t ever be in stores. If I need a collection of time travel stories in stores, I’ll write another time travel story and make a different book.

Publishing is an absolute scam. I have no idea why you support me. But I sincerely appreciate it.

Saucer, Separated

It took a few iterations, but I did it.

a small standing desk built on wheeled wire shelves

My main standing desk is 60″ by 30″. It’s built on wheeled wire shelves. I tried using a small standing desk from Amazon, but it lacked the structural integrity to hold the monitors still while I typed.

What I wound up with is another set of wheeled wire shelves, 36″ by 18″. The top is a 2’x3′ sheet of laminated MDF supported by half-inch plywood. I used a hole saw to notch post settings in the bottom of the plywood. The Mac is mounted beneath the shelf, along with a power squid. My landscape-mode monitors are on the other desk. Each desk is independently powered, but they can be connected with one USB, one audio, and two DisplayPort cables.

Without a better workshop, this design is as sturdy as I can get. The monitors still wobbled. Adding the ten-disk tower PC to the bottom shelf as ballast sufficiently steadied it.

I can now roll out onto the balcony, with monitors optimized for making words. Detroit hit 100F yesterday and 97F today, but I’m hoping for good outdoor writing weather by November or so. January at the latest.

My sincere gratitude to the folks who saw my Amazon wishlist and sent me the parts. Yes, the wishlist is empty–because people keep buying whatever I put on it! Your generosity has made rebuilding a life much more comfortable. Thank you.

June’s Juryrigged Sausage

This post went to Patronizers in June and to the public in July. Not a Patronizer? You could be!

I am now settled in a safe and clean apartment. After ten days of work, everything is unpacked and in a place. I’m not happy with all the places, but those can be adjusted and if things have a place the apartment can be kept tidy. My office is functional, including printers and wireless. I’m actually fairly content with how it came out.

I loathe carpeting, but that’s what I could get.

Going from a sprawling house to an apartment is weird. The network demarc is close enough to my office that, instead of trying a dozen different makeshift ways to get Ethernet to my test gear, I might be able to do everything over wireless? The power strips all show these bizarre “grounded” lights, which I have never seen before but am reliably informed do not represent a failure mode.

My first priority is catching up on stuff that’s behind. I had planned to ship Patronizer copies of the Defenestrated N4SA2e, but a problem with my Patronizer system has made me delay a day. I suspect that none of the paused print-level Patronizers chose to pause, but I must verify before turning them on. I’d be inclined to just ship them all books, but someone might have gotten disgusted with me and wish to never hear my name again and I don’t want the postal inspectors to charge me with mail-order stalking.

My second priority is getting back to making words. I’m financially okay for a few months, but people support me when they see progress and there has been no real progress for a few months. I can’t just leap into writing eight hours a day, however. Writing is a muscle that must be warmed up or you crash and burn out. I’m starting by blogging more often. Some of that content will make it into Sausage posts as relevant, but most of it will be randomness to get the writing brain rolling. The impulse to write is once again present, but I know my brain. Brains are the worst. The worst. I can’t afford a self-imposed crash.

Plus: I might be living separately, but the divorce still must work its way through. An estate sale agent is disposing of the material trappings of our old life and then the house will go on the market. This is all intensely emotional, and I just have to roll with it.

I’m making the best of the split, though. My new apartment is less than two miles from my dojo, so I’ve been practicing more. The rats came with me, and they’re settled in okay. Everything is in open storage, which helps me remember what I own. Money is tight so I am living on a cash only basis until I achieve stability.

In other good news/bad news, a couple of publications that I had sold stories to folded. Again. Once again, as previously documented, I have been seen fleeing a burning publisher. The bad news is, the publisher sat on them for two years and I won’t get paid for them. In indifferent news, I am giving up on selling short pieces to publishers. It’s not worth my time. In good news, I can publish these stories myself and score an easy dopamine hit. The pile includes Montague Portal and Rats’ Man’s Lackey, so that’ll make some of you happy. Plus a ghost story, a magic Regency, and a sci-fi Regency. Because I could, because they amused me, and because nobody stopped me.

No, I didn’t warn anyone. They might have stopped me.

That’s kind of the key right now. Not warning people? No–well, okay, yes, also that. But amusing myself. The path to being okay lies through amusement. Besides, if the labor of writing doesn’t amuse me, the result will read like any other tech book. Tedious. Flat. I’m connecting with people and attempting to refill my well of amusement. I’ll be doing a writer’s event in Seattle at the beginning of August, and have tentatively scheduled a public meetup at Sirena Gelato in Kirkland on the evening of July 30th. No, I haven’t scheduled with the gelato shop. That would count as a warning.

Anyway, if you’re around Seattle on 30 July, there’s your chance to meet me.

And now, the Tilted Windmill Press store wants me to update to WordPress version 7.0, complete with generative AI features. Do not try me this month, you abhorrent monster. Do not.