Two new Christmas stories in my shop

Life prevented me from releasing the Twisted Presents collection this summer, but here’s a couple stories from it. Both were previously published, but not by me and not in places my average readers commonly read. They went for free to all of my Patronizers, but each can be yours for a paltry $1.99.

First up is a Beaks tale, Sister Silence Night.

“Ten thousand dollars an hour, take it or leave it.”

Master criminal Beaks doesn’t charge extra for Christmas. She loathes Christmas. But for a friend, she’ll skip the fee and call it a favor.

Especially when the job’s at a shelter for runaway queer kids in Texas, under attack by an invisible hacker who’s ruined lives and driven the innocent to suicide. A hacker who’s abandoned cyberspace and getting physical. Beaks doesn’t care what kind of Grinch wants to ruin Christmas for these kids. All she cares about is making it stop.

Whatever it takes.

Then there’s the hard-boiled noirish The Last Multivariable Differential Christmas.

Why couldn’t my rep include “knows where to bury the bodies?”

That rep brings people to him. His awful talent means that sometimes, when nobody else can help, he can.

Firestone University, home of the toughest math program in the United States. Honestly it’s the most dickish, but that looks bad on brochures. After nine years an undergrad, with the final exam next week and the faculty gunning for him, it’s his last chance at passing multivariable differential equations. He must study. Those bastards will not beat him.

But another student brings him not just cheaters, but the kind of cheating that kills people.

There’s no reward for doing the right thing. Getting involved might throw away the struggle of the last nine years.

But some things are too wrong to live with.

And the right solution is as obvious as integral-of-one-over-log-cabin-equals-houseboat.

Perhaps I couldn’t put out the Christmas collection this year, but my shop has a burgeoning collection of Christmas stuff.

November’s Noyous Sausage

This post goes to Patronizers in November and becomes public in December. Not a Patronizer? You could be! $12 a year gets you my latest updates, occasional free tidbits, and the completely pointless MWL Footnote Fortune File, freshly updated for the new edition of Networking for System Administrators.

Last month got home from EuroBSDCon and made it a point to post the monthly column my first day back. #ebc25 was great. Meticulously run. Fantastic program. Great food. The local staff kicked butt. I brought home a tie that I shall treasure but hopefully never need, stoopwaffel, joyful memories, and covid.

About an hour after I posted last month’s StSbM, the fever hit.

There’s nothing quite like publishing a book while hallucinating. So I didn’t. It delayed N4SA2e by a couple weeks, but that’s better than releasing delerium-infused work (shut up shut up shut up). It took me down for a couple weeks, but the book is now finished and at the printer. Let me check… yep, they now show up as “printing.” Should be here in a couple weeks. I have fresh envelopes and printable labels ready and a good pen to sign them all. The sponsor mailing addresses have been validated and a giant postage spreadsheet assembled.

Once the books ship, I will tell the Kickstarter folks that they have two days to finalize their addresses.

I’m still not completely recovered. My attempts to make words on OpenZFS Mastery prove that.

The ugly truth is, every time I attend an event that doesn’t have a mask policy, I get sick. I wear a mask throughout. Masks work, but crowded closed-in rooms overwhelm their protections. Everyone needs to contribute to protecting the community.

I will no longer attend any conference that doesn’t require masks. Yes, both Penguicon and BSDCan have dropped their mask policies. I won’t be at either. Cons are fun and educational, and I enjoy meeting colleagues and readers, but I’m old enough that I must prioritize my health. Can’t write books if covid fries my brain, and while I’ve reached my final form, said form is utterly unemployable.

But we do have a manuscript for OpenZFS Mastery! Well, pieces of it. It’s basically the first edition FreeBSD ZFS books slammed together, along with copious notes from Allan and myself on what needs to be changed. It’s essentially a skeleton that we need to add flesh to. Covering Debian as well as FreeBSD means restructuring most of the book. Here’s one page of the introduction, with the changes in red.

That photo’s a few weeks old, before Allan took a look. More has changed since then.

The one thing that remains unchanged from those old books and the new? My test host. Almost twelve years ago, I bought a ten-drive amd64 server. One of the power supplies has blown, but the rest works just fine. 32GB of RAM and eight cores is more than sufficient, and I can have mirrored boot drives while striping two RAIDZ2 arrays.

One of NYCBug’s fine folks shipped me a “high-end” custom-built, undocumented dual storage array that I haven’t had time to set up yet. My career has many gaps, but one of them is custom storage. I’ve used external storage arrays, sure, but I ordered them as complete kits. They included all the cables. This thing doesn’t. If I still had a day job, I’d go to the boss and tell them that the kit is incomplete and here’s my best guess for the cables and if they’re wrong, too bad, I didn’t choose this stuff. I’d happily let the boss spend a few grand on cables to try. But this will let me write a better book, so I gotta figure it out.

The smart thing to do is write a blog post with descriptions and photos, and ask my social media followers for advice. One of them must be a storage guru, or at least familiar with the ARC1330-8X/8I/8X8I/4x4I and Adaptec AEC-82885T in these things.

But the important thing right now is making words. And the ten-drive host is good enough for that. I’ve been working with bhyve and getting test hosts running.

It’s my first time playing with bhyve. It’s powerful, but like BSD has less of a “learning curve” and more of a “learning curb.” I’ve been watching it for a while, though. Back around 2018 (or some year like that), I asked Michael Dexter if it was time to write a bhyve book. He told me that things were churning rapidly and I should probably wait. EuroBSDCon included a one-day bhyve con, chaired by Dexter. I went. During the pre-lunch lightning talks, he requested that I come up to the front and then asked me why “we” didn’t have a bhyve book yet and what it would take to get one. I gave him a quite meaningful glare. “Well, last time I asked someone said…”

Anyway. Bhyve is cool. It’s stable enough that Kirk McKusick uses it for filesystem development. I’m using vm-bhyve as a front end, because raw bhyve requires long command lines and I’m lazy. Will there be a bhyve book? Ask the winds of karma because I got no clue. I know that after OpenZFS Mastery my next tech book will be on DNS. I don’t want to write a DNS book. The world needs an approachable DNS book the way it needed the mail book, though. Otherwise the oligarchy wins without a shot fired, and I’m an absolute sucker for horrific heroic last stands.

I can say that I’m taking the notes I would need to write a bhyve book, though. Why would I even consider writing a bhyve book when I haven’t used bhyve?

Because that’s the correct way to write a book about any technical topic.

Writing a tech book (or, indeed, any book) is not about documenting facts. Man pages and source code have all the facts, and when someone declares “it’s in the man page” folks rightfully flip out. Facts are not knowledge. Books are not about the facts; they are about the connections between facts. I watch my brain while I’m learning. The moments of enlightenment, when I realize how pieces fit together? That’s treasure. It goes into the notes. Those moments become the backbone of the book.

It’s also true for fiction. Laserblasted was written as a joke, and I’m told it came out funny, but look at this daft lump of the first chapter.

The Greys invented police long before humans did. One of the things they police is access to humans. It’s not that they care about us. Humanity hasn’t evolved enough to join the galactic market and hasn’t invented antigrav so the Galactic Species Index classifies us as livestock. If someone figures out how to profitably strip-mine us before we get our act together, we’re done. While the Orion’s Sword civilizations consider human pineal glands a potent aphrodisiac, we’ve put so many toxic chemicals into our environment that the Swordian Morality League has taken to saying, “take gland for your last stand.” The Greys put humanity on the Protected Species list, which isn’t so much for our benefit as giving them another excuse to put the boot in. The Swordian Society for Responsible Human Ranching will get that law changed one day and swoop in to save us from ourselves, for them.

Pick any one of these very stupid sentences. I can draw a line from it to the characters, the story, and the resolution thereof. (I still can’t believe that daft thing funded. At least it’s a complete commercial failure in the retail market, showing there might be hope for civilization and good taste.) Even stupidity is pointless unless it’s tied up in an ordered bundle of stupidity.

Anyway: everything is about connections. Not facts, not feelings. Connections. Like the connection y’all offer by Patronizing me. Thank you all.

TWP books not in Apple Books in the EU

Tilted Windmill Press books are not available in Apple’s bookstore in Europe. Sorry, folks.

Under the EU’s Digital Services Act, I am a trader. Compliance with the DSA means that Apple Books requires trader display their name, address, and phone number on the product page. I have a PO box, but I am not willing to have my phone number on the Apple Books store. Yes, you can find my phone number. It’s not rocket surgery. But that’s different than putting it on a third-party bookstore page for everyone to see.

Could I set up a burner or a Google Phone dropbox? Sure. But consider that my total income from Apple Books is so minuscule that I didn’t even put it on last year’s graph. How much work am I willing to do for $200 a year? Very little.

I have updated each book’s page to state that the books aren’t available on Apple in the EU.

Should I start doing enough business in the EU that I need to change this decision, I will. Prediction is foolish, but I’d guess that happens when I need IOSS.

First foreign fiction translation

Many decades ago when I was but a bitter lad hanging around the library, a twisted geezer with mismatched eyes and one tattered tooth tottered up to me and hissed Your first fiction translation will be dick jokes. The jackbooted librarian-goons immediately hurtled him into the street. At the time I thought it was because he was being creepy, but it turns out that they were preserving the integrity of the timeline.

My Prohibition Orcs story “Woolen Torment” has been translated into German for the anthology Trolle.

Yeah, I know. Trolls, orcs, whatever. Different cultures have different brutes.

At this rate, my next translation will appear about 2065. You better grab this one.

“Networking for System Administrators, 2nd ed” is out, except on Amazon’s Kindle store

The headline says most of it, but:

The new edition of Networking for System Administrators is out. Most stores should have it now. Apple is being a pain, but that’s pretty usual. I’ll fill in missing stores over the next few days, as the databases finish churning.

You might notice that it’s not in Amazon’s Kindle store. Why is that?

Oh, wait. Let me put that in SEO format.

Why is Networking for System Administrators not in Amazon’s Kindle Store?

There. That’ll do. The short answer is for the same reasons that Run Your Own Mail Server and OpenBSD Mastery: Filesystems aren’t, but on the off chance a search engine actually brings someone here, I’ll spell it out.

You can get Kindle-friendly versions of N4SA2e from my store or Gumroad. You can get a Kindle-friendly ebook from any number of other retailers, but while they’re all supposed to be DRM-free I can’t advise on prying the file out of another vendor’s ecosystem. The one place you cannot buy it for Kindle is Amazon’s Kindle bookstore.

TLDR: Amazon pays roughly 70% of retail price for books priced up to $9.99, and 35% for books $10 and over. Amazon is the only retailer that does this. Other retailers, I make somewhere around 65%-70% no matter the retail price. Everything follows from that math, but if you want the details read on.

According to economists, prices have gone up about 40% since I started releasing the Mastery books. According to my wallet, not so much. In 2012 my wife and I could get an inexpensive lunch for $10. Today, no. But let’s go with the official numbers. Just as “dime novels” now cost $10, I must raise prices. While book pricing is hotly debated, $12.99 is a reasonable price for a short tech book like Networking for System Administrators. (If I followed inflation I would charge $13.99, but I’m an idiot.)

If I charge $9.99 for this ebook, I make about $7.

If I charge $12.99 for the ebook, I make about $9 everywhere but Amazon. At Amazon, I make $4.50. For me to make that $9 at Amazon, I must charge about $26. I’m fond of the book, but it ain’t worth that! And if I did, giving Amazon a $17 slice of every sale for no reason sticks in my craw.

Charge $26 at Amazon and $11.99 elsewhere? Amazon’s program has a Most Favored Nation clause. They can price match any other major vendor.

Will Amazon change their business because of this? No. Authors are plentiful and of low value. I am not worth Amazon’s time.

Amazon’s business model is based on squeezing prices down, and they play a long game. I expect them to ever raise that $9.99 limit. A novel might sell tens or hundreds of thousands of copies. If I’m lucky, a book like Networking for System Administrators might sell eight thousand over the next ten years. The few extra bucks I’ll make by raising prices are important. That’s also why I’ve focused so hard on disintermediation through my Patronizers, sponsorships, and Kickstarter.

I have expected this for years. I do not expect to publish future Mastery books on Amazon’s Kindle store, unless by some chance I write another very short one.

108: Spent Decades Writing Scripts to Parse df(1)

With Networking for Systems Administrators production wrapping up, OpenZFS Mastery is starting to lurch forward. Here’s a tidbit.

ZFS combines traditional filesystems and volume managers. It expects to handle everything from the permissions on individual files and which files are in which directories down to tracking which storage devices get used for what purposes and how that storage is arranged. The sysadmin instructs ZFS in arranging disks and files, but ZFS manages the entire storage stack beneath them. ZFS has three layers: datasets, storage pools, and virtual devices.

ZFS was designed by highly experienced Unix engineers who spent decades writing scripts to parse df(1) and du(1) and fstat(1) and lsof(1) output and were determined to quit relying on sed(1) and awk(1) for even the simplest operations. The ZFS commands are not only designed to work together, each offers “customizable output designed to be piped directly into other commands. They can even produce JSON for convenient automation, as we’ll illustrate with examples throughout,

OpenZFS Mastery is open for sponsorship at https://sponsor.mwl.io.

Beastly Virtues

On Christmas, my new book Beastly Virtues disappears forever. No, you can’t get it in my bookstore.

Beastly Virtues is exclusive to the 14-book Wee Beasties Storybundle. When the bundle runs out, this book runs out. The only way you’ll get this collection of critter tales is to back the Storybundle and get all 14 books.

I’ve read and enjoyed books by every author in this bundle, and even some of these specific books. Part of the proceeds benefit World Central Kitchen, a deeply worthy cause in this mayhem-laced age.

So, what is Beastly Virtues and why might you want it?

INHUMAN HEROISM

This collection from critically-acclaimed author Michael Warren Lucas proves that bravery comes in every shape, and not all of it is two-fisted or even two-legged. Maybe it’s orcs learning baseball, or a young boy absorbing wisdom from interdimensional bats. If the only animal in the entire universe looks like a harmless chipmunk, you better ask yourself why, and when a dog’s ghost starts reciting 19th-century French surrealist poetry, you’ll need a whole new kind of bravery.

No matter your wings, paws, or whiskers, you need courage.

But whatever you do, don’t piss off the rats.

It includes The Rats’ Man’s Lackey and the Half Gallon of Christmas Miracle, Pax Canina, Sticky Supersaturation, Face Less, Whisker Line, and Fair Balls.

Yes, you’ll get my orcs playing baseball. A careful look at the Storybundle will show that you’ll also get elves playing baseball. There’s no way this can go wrong…

“OpenZFS Mastery” sponsorships now open

I’ve shipped all the Networking for System Administrators, 2nd ed sponsor gifts. I’m getting copies for the Kickstarter backers out the door.

By popular demand, I’m opening sponsorships on OpenZFS Mastery, by myself and Allan Jude.

Epub sponsors get their names in the epub/mobi versions of the book. They will receive a free copy of the completed ebook in epub and a PDF of the print version, all DRM-free, once we finish writing it.

Print sponsors get their names in the ebook and print version of the book, the DRM-free ebook, and a physical gift that might or might not be the book. The gift will be personalized. Please provide a shipping address and a phone number that can receive SMS! My shippers are asking for phone numbers even in the US, so I’m asking you.

Once the book exists there will also be a Kickstarter, but that will act more as a pre-order. Sponsors support me as I write and test the manuscript. The print sponsorship (or Patronizing) will also be the only way to get a personalized gift mailed to you.

Here’s the book description.

OpenZFS Mastery


by Michael W Lucas and Allan Jude

Data Storage for the 21st Century

ZFS, the fast, flexible, self-healing filesystem, revolutionized data storage. Leveraging ZFS changes everything about managing Unix-like systems.

“Thanks for making ZFS knowable by everyone” — Matt Ahrens, ZFS co-creator

“Thanks for doing this… now I don’t have to” — Jeff Bonwick, ZFS co-creator

With OpenZFS Mastery you’ll learn to:

  • select hardware for ZFS systems
  • arrange your storage for optimal performance
  • configure datasets that match your enterprise’s needs
  • repair and monitor storage pools
  • expand your storage
  • use compression to enhance performance
  • determine if deduplication is right for your data
  • understand how copy-on-write changes everything
  • snapshot filesystem
  • automatically rotate snapshots
  • clone filesystems
  • optimize how ZFS uses and manages space
  • Use boot environments to make the riskiest sysadmin tasks safe
  • Delegate filesystem privileges to users
  • Delegate ZFS datasets to containers
  • Quickly and efficiently replicate data between machines
  • split layers off of mirrors
  • optimize ZFS block storage
  • handle large storage arrays
  • select caching strategies to improve performance
  • manage next-generation storage hardware
  • identify and remove bottlenecks
  • build screaming fast database storage
  • dive deep into pools, metaslabs, and more!

Whether you manage a single small server or multinational data centers, OpenZFS Mastery will simplify your life.

What’s Changed?

This might be considered a second edition of FreeBSD Mastery: ZFS and FM: Advanced ZFS, so: what’s different.

The old stuff still works, but OpenZFS has grown many features in the last ten years. The OpenZFS project now considers Linux a tier-one platform. RaidZ arrays can be expanded. ZFS rewrite. Rebalancing arrays. Native encryption. Compressed ARC. Deduplication is less useless. Even compression has changed. Gobs of stuff.

This edition will be published as a single volume.

Why Sponsor?

It’s a terrible deal, but people find reasons.

I’m hoping to get this book done in just a few months. Sponsor while you can.

107: Which Drive Is It?

Have some OpenZFS Mastery.

“ZFS reports that one of the seventy-nine drives in our array is failing? Great! We can replace it in a convenient maintenance window before it causes problems. Uh… which drive is it?”

If you have a large storage array, you need proper physical and logical labeling. Keep a spreadsheet of each drive’s physical location and the information presented to the operating system, and also document this within ZFS itself. It’s easier than it sounds. Proper preparations during installation let you zero right in on a failed disk—even a disk at a remote facility. Jude runs a lot of very dense storage arrays in locations all over the world, and uses this scheme to keep hard drive maintenance from overwhelming him. He even records warranty information, expiration dates, model numbers, and more within ZFS so his monitoring system can flag sixty days before the warranty runs out.

It’s a couple days before I wanted to announce it, but if the new OpenZFS book is of interest you might look at https://sponsor.mwl.io.