Admittedly, about half of this will go to fulfillment and half of what remains will be held for taxes. (Taxes will probably be less than that, but self-employed people must always have tax money on hand. Always.) Still, I’ve never had a chunk of money this large for a single book hit my account all at once.
Here’s a snippet of the next Letters column for the FreeBSD Journal.
We’ve all seen the propaganda on configuration management. Deploy dedicated-purpose, highly tuned servers with a single command! Adjust computation clouds with a simple playbook! Seamlessly and transparently migrate from server to server! Containers! That’s fine for people starting from a green field in the last few years, but most system administrators work in environments best described as “baroque” if not “antediluvian.” I find myself with a green field only when I myself raze the earth and wait for the clover to grow. Not grass. Lawns are a climate atrocity. Unless you own sheep. Or goats, but if you own any kind of goat you won’t have a lawn for long, which demonstrates that any force for good is also an agent of desertification. Besides, who wants to wait for clover before installing a datacenter? Build in the ruins of that razed kindergarten and get on with your work.
(This post went to Patronizers at the beginning of May, and to the world at the beginning of June. Not a Patronizer? Sign up at https://patronizemwl.com.)
This month was better than last month. If you look at April’s Sausage post, you’ll see that is a terribly low bar to clear, but I’ll take it.
The “exciting” news on this is that I’ve set a up the Run Your Own Mail Server Kickstarter. I’m not excited for the Kickstarter itself, but I’m curious how well it will work out and that curiosity carries its own excitement. RYOMS is the most heavily-sponsored book I’ve written. I suspect this is less about the topic, and more because the sponsorships were open longer than any other book. (You can thank me catching covid for that.) In theory, the groups of “people willing to advance me money to write this book” is not the same as “people willing to preorder directly from the author.” Perhaps I already pillaged my public support and this Kickstarter will fail. Well, no, it’s not going to fail. I’ve set a goal of $500. I had many sponsors for OpenBSD Mastery: Filesystems, and got a few dozen pre-orders even though that book had sponsors.
Wait–I keep ranting about the importance of disintermediation, and I’m switching from direct pre-orders to Kickstarter? What gives?
Processing fees on Paypal and Stripe are about 3%. (Yes, it’s more complex than that, but it’s close enough for this discussion, so hush.) Kickstarter fees are 5% plus processing fees, or basically 8%. The question is: will the social aspect of Kickstarter make up for that 5% fee? There’s only one way to know, and that’s to try it. I love experimenting. I love trying new things in my art, my craft, and my trade. So that’s exciting.
One thing about this campaign pleases me. I started the 60 Seconds of WIP podcast to better learn to speak on microphone. Recording this Kickstarter video took only eight takes where it would have previously required fifteen or more.
RYOMS is the longest Mastery title, twice as long as Networking for Systems Administrators and 125% the length of SNMP Mastery. I think I’m going to price the ebook at $14.99. This means the Kindle version won’t be available on Amazon, just like OpenBSD Mastery: Filesystems. The OpenBSD people have no problem with avoiding Amazon, but this book is for a wider audience. I’m curious to see how that works out as well. I can imagine someone uploading pirated versions to Amazon, but I’m ready with my complaint letters and DMCA takedown notices, as always. Yes, my publishing checklist includes “prepare a template DMCA takedown” for the book. Always preload your pain.
RYOMS is also back from tech edits. If you haven’t sent me your comments, it’s too late. I’m churning through the manuscript to get everything updated, so I can get it to copyedit before the Kickstarter opens on 20 May. I’m also preparing a four-hour course based on RYOMS for BSDCan. Four hours is not enough to go deep into the entire book, but nobody wants to sit through eight hours of config files, so I’m focusing on knowledge integration. That, plus setting up the new BSDCan mail server, is forcing me to go through the manuscript one last time.
I’m also converting TLS Mastery into a four hour course, but I can finish that after RYOMS goes to copyedit.
All of this is taking longer than I expected, forcing me to face something rather unpleasant. Covid dented me. I’m not one of those poor bastards with crippling long covid, but my energy is certainly not what it once was. I’m clearly functioning at about eighty percent, though, and that seems fairly constant. I clearly can’t afford to catch covid again, and am no longer waffling about my conference mask policy. Masks do not protect you, but they protect the people around you. The people most likely to spread covid are the least likely to wear a mask. EuroBSDCan in freaking Dublin seriously tempted me, but I have too many books left to write to catch this crap again.
That’s the thought dragging me through these tech edits: when I finish, I get to write again!
But writing the tutorial is making me double-check everything. The book will be better for it, but I still hate it.
Whenever I release a tech book, I create a file for keeping notes about stuff I missed. This helps me decide if a book needs a second edition. I’m at the point where Networking for Systems Administrators has accumulated a few critical gaps. The appearance of Let’s Encrypt means the book needs TLS coverage. I should discuss special address ranges like 100.64.0.0/10. It talks network sockets, but I should add some comments about local sockets and their evil twin, Windows pipes. Speaking of Windows, I need to confirm all of the PowerShell commands are actually PowerShell. A faint breath of nmap. Other detritus. And the cover needs updating.
Some of this I’ll need for my next big Unix book as well.
I’m contemplating a crash revision. These are all simple topics. I could kick off a two-week sponsorship window after BSDCan, while RYOMS is still in copyedit. Disconnect the Internet and spend eight hours a day revising the book. Another round of tech reviews would be the longest part. Once I get the book to copyedit, I’d do either a ten-day Kickstarter or a preorder on my web site. I haven’t done a crash book like that since you maniacs sponsored Ed Mastery. It would be fun.
But then there’s that “I’m running at 80%” factor.
Pessimism is the path to happiness. Either you have the pleasure of being correct, or you are delightfully surprised.
I had hoped that the Run Your Own Mail Server Kickstarter might bring in several thousand dollars. I dreamed that if I was lucky, over the twenty days it would raise as much as the Prohibition Orcs Kickstarter. After all, this book had been heavily sponsored. I had exhausted my market.
But Kickstarter is a discovery platform, and was worth trying.
I am stunned. And my family can sure use the money.
Anyone who backs the campaign at $15 or more gets not just RYOMS, but ebooks of Networking for Systems Administrators, Ed Mastery, and $ git commit murder. At $32,500, I’ll add an ebook of PAM Mastery.
I would appreciate folks sharing this Kickstarter on their social media, discussion boards, chat rooms, IRCs, or whatever y’all use. It’s one heck of a deal.
People talk about “life changing money.” This isn’t that. But it will let me take a long, deep breath and relax.
Run Your Own Mail Server is at copyedit and live on Kickstarter, so I’m working on my TLS course for BSDCan. The course is stolen from the pages of TLS Mastery, of course, because I’d rather skip the conference than actually research a new topic for a talk, so that’s what you get this week.
Of the innumerable things I detest about information technology, first prize goes to the word “security.” Not the concepts behind it, the actual word. The definition of “security” wobbles drunkenly all about the dictionary depending on who’s speaking, who’s listening, the context, and the distance to the nearest brute squad. It’s a transcendental state where everyone is perfectly safe from everyone, but it’s not inconvenient or intimidating or incomprehensible in the slightest. Security is Happy Fun Land, where everybody eats hot fudge sundaes all day every day without developing diabetes or gaining so much as a gram.
The only way to make this word even slightly meaningful is to tightly define the context. That’s one advantage Transport Layer Security (TLS) has. What it secures is right in the name. And even then, it’s misunderstood.
Run Your Own Mail Server is the most heavily sponsored book I’ve written. Mostly that’s because sponsorships were open for longer than any other book. This gave me doubts about running a Kickstarter. Was I going back to the same people? Would anybody back it?
So, yeah. The people who will sponsor are not the same as the people who will back on Kickstarter. Though it occurs to me that during the backer survey, I should ask folks if they want to be on my sponsor mailing list. And my nonfiction mailing list.
Kickstarter next Monday so RYOMS has to be at copyedit before then, and my wife broke her leg last week. I’m glad an episode exists, at all.
Email uses several protocols, but only one will routinely give you fits. You control both ends of a Local Mail Transport Protocol (LMTP) connection. You can set up oddball clients to duplicate a user’s IMAP configuration. DNS, TLS, these are well-understood headaches. But the Simple Mail Transfer Protocol (SMTP) underlies all of email, and you can’t possibly build test systems that replicate every whackadoo environment you communicate with. The protocol’s simplicity is a huge part of why it’s so successful, and why it’s so abused. To run your own email system you must understand SMTP’s weaknesses all the way down to your marrow. We’ll start by using the protocol, proceed to abusing the protocol, and discuss status messages, greylisting, block lists, and forwarding.
I’m churning through the tech edits on Run Your Own Mail Server so I can get it to copyedit before the Kickstarter launches, partially because it’s more ethical but mostly because the Kickstarter description says the book is in copyedit and changing that would be too much work.
Ethics of System Administration
I have firm memories of the first time I got root on a mail server, back when the 1.544Mb T1 was the pinnacle of connectivity and my 33.6K modem thrilled me. I thought, “I can’t possibly view everybody’s mail.” I ran more /var/mail/boss and immediately recoiled, guts churning in horror of my appalling power.
Whoever controls a server can see all the information stored on that server. Every system administrator knows this, but in most cases extracting the information is too much trouble to bother. Maybe you’re the database administrator for your organization’s ecommerce system, but you’re probably far more interested in how much space the database uses than who bought what.
Until you’re not.
Unlike a database, examining email stored as text files is trivial. You don’t even need SQL, only privilege and a pager.
(This post went to Patronizers at the beginning of April, and the public at the beginning of May.)
Well, this last month officially blows.
I just got news that Craig Maloney finally lost his fight with cancer. Craig was a regular in our Patronizer Zoom hangouts. The guy had the usual IT cynicism, but it floated on this bed of optimism and hope. I’ve known him for decades, but he supported my work for years before that. The first entry in my title index was a tabletop RPG published in 1992. He bought it when it came out, and it wasn’t until he’d known me for ten years that he realized that I was that Michael Lucas. I gave a talk at MUG shortly after that discovery and he brought his twenty-year-old marked-up copy. Despite that, he had no trouble calling me on my bullshit. He was all about connecting people together and unabashedly loving creativity and art.
Craig made the world a better place. I don’t know if there’s a next world, but if so he’ll do the same there. Plus, there’s a bunch of metal bands out there who can use a drummer. What happens if your drummer explodes in the afterlife? Craig would have loved that discussion.
The cough I mentioned last month? Yeah, it put me off work for three weeks. I avoided classic chronic-fatigue long covid, but my one bout damaged my body in ways you don’t hear much about. Mask policy or I don’t show up. “Cough and you’ll black out–oh, and you have to cough every thirty seconds, even when you sleep” is not fun. Having doubts about my 100 books by 2033 goal, but all I can do is keep plugging away. And not write stupidly complicated books about multiple intertwined stupid protocol stacks, like email.
The good news is, I was able to cram the two thousand words I needed to finish Run Your Own Mail Server into those three weeks. They’re not great words, but they they exist. The book is out for tech review. I’ve requested reviews by 15 April, because that’s also Tax Day and I prefer to pile all my suck into as few days as possible.
The recent vultr rights grab that they insist was not a rights grab has me moving hosting providers. I discovered that bloom.host has great deals on dedicated systems, for about what I pay for hosting all my VMs now. They specialize in gaming servers but 6 cores, twin 500GB SSDs, and 64GB RAM for $99 a month is enough for web and mail servers. Thanks to the glories of zfs send I’ll be replicating my VMs as jails. Some of those jails will have nested jails. It’ll probably lead to a new edition of FreeBSD Mastery: Jails eventually, although it’s clear I’ll need to update the storage quartet before I can write that. Sigh.
Oh, and a proper poudriere jail. That’ll go in there. FreeBSD Mastery: Packaging, anyone?
I’ll still need one tiny VM on a different network as a DNS server. Yes, I know people would offer to host secondary DNS for me, and I appreciate it. But I want the option to switch between the primary server between hosts, so that I can better cope with outages and unplanned migrations. Yes, the hosting company could pillage the authoritative DNS data. I’ll have to take that risk, and laugh in their face if they try it.
But first, I have to finish getting BSDCan infrastructure ready. I agreed to manage the new mail system and promptly fell over. That shouldn’t be too hard to set up, as I now have the core mail knowledge. Migrating from the old BSDCan mailman will be an educational sysadmin adventure, but hopefully with very little screaming into the abyss. (Remember: if you’re not screaming into the abyss, you’re not learning.)
I’ve been focused on tech this year. Sold a couple short stories by invitation, but I can feel my literary brain starting to freeze up. Part of that is my three-week outage. I’m still planning to get the giant fiction epic done this year, and I’ll be starting promptly on a big non-Absolute book for No Starch Press. Amidst that, I have bits and pieces for a second edition of Networking for Systems Administrators. I’ll be doing Kickstarters for Run Your Own Mail Server, a new collection of the FreeBSD Journal Letters column (Dear Abyss), and late this year a weird off-brand book I’ll discuss later.
A few people have had trouble with their credit cards in my store, however. Thanks to a Patronizer who generously donated their time in reproducing the problem, I discovered that the problem is Jetpack. I must accept credit cards. Jetpack is turned off. Which means that those of you who subscribe to Patronizer updates by email rather than RSS won’t get those emails.
It seems there should be a simple replacement plugin for “allow email subscriptions,” but they all run through third party services. I have a mail system. If you subscribe, I can send you mail. But nooo, as far as I can tell nobody’s written that plugin. I would welcome pointers and suggestions for automating this, but for now I’ll be sending an email to all direct Patronizers whenever I publish the monthly posts.
Sigh. Computers were a mistake. But if you’re reading this, you already knew that.
That’s pretty much it. Thanks for backing me. And please stop dying, folks.
This week’s text production is for the Run Your Own Mail Server Kickstarter. I’m also turning RYOMS into a four-hour class for BSDCan and getting into tech edits on same. But hey, at least I’m not falling back on reading an actual published work!
Running your own mail server is not only an act of defiance against some of the largest exploitative companies in history. It is not a mere education in protocols. Email is essential to modern industrial society. By running your own email, you seize control of your communications. You can tune your email to fit your needs, rather than accepting the defaults imposed by a company that exploits you without a speck of consideration for any of your issues. You own it. Running your own email requires only freely available tools, a server, and some knowledge. This book will give you that knowledge.
The hard part of writing a book about a complicated technology isn’t the tech. It’s not even explaining how all the pieces fit together, although that’s extra challenging for email. It’s finding an overarching metaphor that fits the problem under discussion.
It is a truth universally acknowledged, that a nerd with fifteen projects underway and a day job must be in want of a self-managed mail server.
Great story! But not for this book.
The RYOMS Kickstarter goes live 20 May, runs for 20 days, and is the only way you can get a signed book outside a meatspace encounter.