Pluralistic: 13 Jan 2021

Today's links

20 years a blogger (permalink)

It's been twenty years, to the day, since I published my first blog-post.

I'm a blogger.

Blogging – publicly breaking down the things that seem significant, then synthesizing them in longer pieces – is the defining activity of my days.

Over the years, I've been lauded, threatened, sued (more than once). I've met many people who read my work and have made connections with many more whose work I wrote about. Combing through my old posts every morning is a journey through my intellectual development.

It's been almost exactly a year I left Boing Boing, after 19 years. It wasn't planned, and it wasn't fun, but it was definitely time. I still own a chunk of the business and wish them well. But after 19 years, it was time for a change.

A few weeks after I quit Boing Boing, I started a solo project. It's called Pluralistic: it's a blog that is published simultaneously on Twitter, Mastodon, Tumblr, a newsletter and the web. It's got no tracking or ads. Here's the very first edition:

I don't often do "process posts" but this merits it. Here's how I built Pluralistic and here's how it works today, after nearly a year.

I get up at 5AM and make coffee. Then I sit down on the sofa and open a huge tab-group, and scroll through my RSS feeds using Newsblur.

I spend the next 1-2 hours winnowing through all the stuff that seems important. I have a chronic pain problem and I really shouldn't sit on the sofa for more than 10 minutes, so I use a timer and get up every 10 minutes and do one minute of physio.

After a couple hours, I'm left with 3-4 tabs that I want to write articles about that day. When I started writing Pluralistic, I had a text file on my desktop with some blank HTML I'd tinkered with to generate a layout; now I have an XML file (more on that later).

First I go through these tabs and think up metadata tags I want to use for each; I type these into the template using my text-editor (gedit), like this:

<xtags> process, blogging, pluralistic, recursion, navel-gazing </xtags>

Each post has its own little template. It needs an anchor tag (for this post, that's "hfbd"), a title ("20 years a blogger") and a slug ("Reflections on a lifetime of reflecting"). I fill these in for each post.

Then I come up with a graphic for each post: I've got a giant folder of public domain clip-art, and I'm good at using all the search tools for open-licensed art: the Library of Congress, Wikimedia, Creative Commons, Flickr Commons, and, ofc, Google Image Search.

I am neither an artist nor a shooper, but I've been editing clip art since I created pixel-art versions of the Frankie Goes to Hollywood glyphs using Bannermaker for the Apple //c in 1985 and printed them out on enough fan-fold paper to form a border around my bedroom.

As I create the graphics, I pre-compose Creative Commons attribution strings to go in the post; there's two versions, one for the blog/newsletter and one for Mastodon/Twitter/Tumblr. I compose these manually.

Here's a recent one:


(<i>Image: <a href="">Marc Nozell</a>, <a href="">CC BY</a>, modified</i>)

Image: Marc Nozell (modified)


This is purely manual work, but I've been composing these CC attribution strings since CC launched in 2003, and they're just muscle-memory now. Reflex.

These attribution strings, as well as anything else I'll need to go from Twitter to the web (for example, the names of people whose Twitter handles I use in posts, or images I drop in, go into the text file). Here's how the post looks at this point in the composition.


<hr> <a name="hfbd"></a> <img src=""> <h1>20 years a blogger</h1><xtagline>Reflections on a lifetime of reflecting.</xtagline> <img src="">

See that <img> tag in there for frnklogo.jpg? I snuck that in while I was composing this in Twitter. When I locate an image on the web I want to use in a post, I save it to a dir on my desktop that syncs every 60 seconds to the /images/ dir on my webserver.

As I save it, I copy the filename to my clipboard, flip over to gedit, and type in the <img> tag, pasting the filename. I've typed <img src=" CTRL-V"> tens of thousands of times – muscle memory.

Once the thread is complete, I copy each tweet back into gedit, tabbing back and forth, replacing Twitter handles and hashtags with non-Twitter versions, changing the ALL CAPS EMPHASIS to the extra-character-consuming &ast;asterisk-bracketed emphasis&ast;.

My composition is greatly aided both 20 years' worth of mnemonic slurry of semi-remembered posts and the ability to search (the site where I've mirrored all my Boing Boing posts) easily.

A huge, searchable database of decades of thoughts really simplifies the process of synthesis.

Next I port the posts to other media. I copy the headline and paste it into a new Tumblr compose tab, then import the image and tag the post "pluralistic."

Then I paste the text of the post into Tumblr and manually select, cut, and re-paste every URL in the post (because Tumblr's automatic URL-to-clickable-link tool's been broken for 10+ months).

Next I past the whole post into a Mastodon compose field. Working by trial and error, I cut it down to <500 characters, breaking at a para-break and putting the rest on my clipboard. I post, reply, and add the next item in the thread until it's all done.

Then I hit publish on my Twitter thread. Composing in Twitter is the most unforgiving medium I've ever worked in. You have to keep each stanza below 280 chars. You can't save a thread as a draft, so as you edit it, you have to pray your browser doesn't crash.

And once you hit publish, you can't edit it. Forever. So you want to publish Twitter threads last, because the process of mirroring them to Tumblr and Mastodon reveals typos and mistakes (but there's no way to save the thread while you work!).

Now I create a draft WordPress post on, and create a custom slug for the page (today's is "two-decades"). Saving the draft generates the URL for the page, which I add to the XML file.

Once all the day's posts are done, I make sure to credit all my sources in another part of that master XML file, and then I flip to the command line and run a bunch of python scripts that do magic: formatting the master file as a newsletter, a blog post, and a master thread.

Those python scripts saved my ass. For the first two months of Pluralistic, i did all the reformatting by hand. It was a lot of search-replace (I used a checklist) and I always screwed it up and had to debug, sometimes taking hours.

Then, out of the blue, a reader – Loren Kohnfelder – wrote to me to point out bugs in the site's RSS. He offered to help with text automation and we embarked on a month of intensive back-and-forth as he wrote a custom suite for me.

Those programs take my XML file and spit out all the files I need to publish my site, newsletter and master thread (which I pin to my profile). They've saved me more time than I can say. I probably couldn't kept this up without Loren's generous help (thank you, Loren!).

I open up the output from the scripts in gedit. I paste the blog post into the WordPress draft and copy-paste the metadata tags into WP's "tags" field. I preview the post, tweak as necessary, and publish.

(And now I write this, I realize I forgot to mention that while I'm doing the graphics, I also create a square header image that makes a grid-collage out of the day's post images, using the Gimp's "alignment" tool)

(because I'm composing this in Twitter, it would be a lot of work to insert that information further up in the post, where it would make sense to have it – see what I mean about an unforgiving medium?)

(While I'm on the subject: putting the "add tweet to thread" and "publish the whole thread" buttons next to each other is a cruel joke that has caused me to repeatedly publish before I was done, and deleting a thread after you publish it is a nightmare)

Now I paste the newsletter file into a new mail message, address it to my Mailman server, and create a custom subject for the day, send it, open the Mailman admin interface in a browser, and approve the message.

Now it's time to create that anthology post you can see pinned to my Mastodon and Twitter accounts. Loren's script uses a template to produce all the tweets for the day, but it's not easy to get that pre-written thread into Twitter and Mastodon.

Part of the problem is that each day's Twitter master thread has a tweet with a link to the day's Mastodon master thread ("Are you trying to wean yourself off Big Tech? Follow these threads on the #fediverse at Here's today's edition: LINK").

So the first order of business is to create the Mastodon thread, pin it, copy the link to it, and paste it into the template for the Twitter thread, then create and pin the Twitter thread.

Now it's time to get ready for tomorrow. I open up the master XML template file and overwrite my daily working file with its contents. I edit the file's header with tomorrow's date, trim away any "Upcoming appearances" that have gone by, etc.

Then I compose tomorrow's retrospective links. I open tabs for this day a year ago, 5 years ago, 10 years ago, 15 years ago, and (now) 20 years ago:

I go through each day, and open anything I want to republish in its own tab, then open the OP link in the next tab (finding it in the Internet Archive if necessary). Then I copy my original headline and the link to the article into tomorrow's XML file, like so:

#10yrsago Disney World’s awful Tiki Room catches fire <a href=""></a>

And now my day is done.

So, why do I do all this?

First and foremost, I do it for me. The memex I've created by thinking about and then describing every interesting thing I've encountered is hugely important for how I understand the world. It's the raw material of every novel, article, story and speech I write.

And I do it for the causes I believe in. There's stuff in this world I want to change for the better. Explaining what I think is wrong, and how it can be improved, is the best way I know for nudging it in a direction I want to see it move.

The more people I reach, the more it moves.

When I left Boing Boing, I lost access to a freestanding way of communicating. Though I had popular Twitter and Tumblr accounts, they are at the mercy of giant companies with itchy banhammers and arbitrary moderation policies.

I'd long been a fan of the POSSE – Post Own Site, Share Everywhere – ethic, the idea that your work lives on platforms you control, but that it travels to meet your readers wherever they are.

Pluralistic posts start out as Twitter threads because that's the most constrained medium I work in, but their permalinks (each with multiple hidden messages in their slugs) are anchored to a server I control.

When my threads get popular, I make a point of appending the permalink to them.

When I started blogging, 20 years ago, had few amenities. None of the familiar utilities of today's media came with the package.

Back then, I'd manually create my headlines with <h2> tags. I'd manually create discussion links for each post on Quicktopic. I'd manually paste each post into a Yahoo Groups email. All the guff I do today to publish Pluralistic is, in some way, nothing new.

20 years in, blogging is still a curious mix of both technical, literary and graphic bodgery, with each day's work demanding the kind of technical minutuae we were told would disappear with WYSIWYG desktop publishing.

I grew up in the back-rooms of print shops where my dad and his friends published radical newspapers, laying out editions with a razor-blade and rubber cement on a light table. Today, I spend hours slicing up ASCII with a cursor.

I go through my old posts every day. I know that much – most? – of them are not for the ages. But some of them are good. Some, I think, are great. They define who I am. They're my outboard brain.

Will Biden bust trusts? (permalink)

Despite the massive triumphs of the world's largest corporations and most rapacious billionaires during the covid crisis, neoliberalism is in ideological retreat: more people are more critical of the idea that "free markets" can solve big problems than at any time in my life.

The Democratic nomination race was a fight between the neoliberal wing of the party and the Democratic Socialists, with the candidates representing a spectrum between those two sides (and the odd outlier on either side).

Supposedly, the party grandees brokered peace between the two main factions, but the left is rightfully suspicious about whether Biden – and Republicans-who-sit-as-Dems like Joe Manchin – will deliver anything beyond symbolic gestures.

One bright spot: Bernie Sanders is finally chairing the Senate Budget Committee, giving him enormous power over muscular covid relief packages, Medicare expansion, and rolling back Trump and Bush tax-cuts on the super-rich.

This is where Sanders' long experience in the Senate, and his virtuoso work using its procedures to advance his position, will serve him well. As we saw with McConnell, the ability to wield procedure is a powerful asset in getting stuff done.

Sanders knows all the dirty tricks that the Senate majority leaders used to sink his efforts, and he knows all the countermeasures that work against those tricks. He will be a force to be reckoned with.

Beyond key appointments, a key test for the Biden administration will be its posture on antitrust, the area of economic doctrine that has been most transformed by the debate over capitalism.

40 years ago, Reaganites managed to convert antitrust from a political doctrine to an economic one: rather than asking whether a monopoly would pervert good policy for workers, citizens, and institutions, antitrust narrowed to asking whether monopolies were raising prices.

Antitrust enforcers stopped listening to workers who'd been laid off or had their wages cut. They stopped listening to customers who got worse products and less choice. They stopped listening to entrepreneurs who were frozen out of the market by predatory monopolists.

The only people they'd hear from were duelling economists with impenetrable equations that supposedly represented the likelihood that a monopolist was hiking prices. Strangely, these models almost never showed that rising prices could be attributed to monopolies.

The GOP antitrust wreckers called themselves the "Chicago School" for the University of Chicago economics department that served as their cult headquarters. The Dems had "post-Chicago School" antitrust, who were effectively indistinguishable from the Chicago School.

When Obama ran for office in 2007, he promised real action on antitrust. Taking office in the midst of the Great Financial Crisis, Obama had the unprecedented opportunity to make good on those promises.

That's not what he did.

A new report from the American Economic Liberties Project, "The Courage to Learn: A Retrospective on Antitrust and Competition Policy During the Obama Administration and a Framework for a New, Structuralist Approach," is comprehensive on the Obama admin's failures.

The Obama admin oversaw massive concentration in healthcare, transport, defense contracting, entertainment, media, tech, agribusiness, and other key US industries. At the time, officials boasted of their record.

Today, as public opinion (and lawmaker priorities) shift to trustbusting, these same officials are the ones decrying the bipartisan failures to grapple with monopolies. Many are on deck to serve in the Biden admin, alongside Big Tech lobbyists pushed to run antitrust (!).

Obama's antitrust enforcement record is terrible – he didn't just squander the opportunity of the Great Financial Crisis; his enforcers actually made things worse, leaving midterm to work for white-shoe firms that worked to secure mergers.

These enforcers saw themselves as "dealmakers," not cops. They allowed 90,297 mergers during Obama's terms, taking action on only 313 of them, accounting for 3% of the $11.67 trillion in merger activity 2008-16.

Those 3% of deals were almost all waved through, with some modest conditions binding the new conglomerates not to abuse their market power. These deals could be rescinded at the stroke of a pen by future administrations – which is exactly what the Trump admin did.

Obama's antitrust enforcers voluntarily announced that they would not use the most powerful tools their founding statutes afforded them. They closed investigations into Monsanto and Google.

Obama's monopolies were terrible for consumers: medical costs for insured families rose by $10,000 on their watch; airline prices skyrocketed, and the quality of both plummeted (literally, in the case of Boeing's 737 Max) on Obama's watch.

But Obama's antitrust enforcers did do some aggressive enforcement…against workers. His administration set records in punishing trade associations of independent contractors, from electricians to building superintendants to church organists.

This was a prelude to the signature labor policy of the Obama years: the misclassification of an ever-expanding pool of workers as "independent contractors" whose organizing activity could be punished under antitrust law as "price-fixing."

The other Obama signature policy – the ACA – encouraged health care monopoly mergers on the theory that this would provide coordinated care. Today, these monopolists provide price-gouging and a "medical assembly line" that cares only for shareholders' financial health.

Today's trustbusting revival was incited by Big Tech's massive concentration and naked greed. Obama's enforcers waved through every single Big Tech acquisition for eight years, without a single significant enforcement action.

If you want to know how Amazon could pile on billions in profits during an economy-slaughtering pandemic, that's how.

The Project's report closes with a long and comprehensive list of recommendations for the Biden admin (pp137-169).

But as the report reminds us, "personnel is policy." Who you hire matters as much as what you ask them to do.

The Biden admin must not be let off the hook if it hires back the same Obama apparatchiks who committed antitrust malfeasance for eight long years – especially not the ones who left for cushy jobs in law/lobbying representing monopolists.

And we need to pour on the pressure to make Rohit Chopra the next Chairman of the FTC. Chopra is fearless and tough, who has advocated that repeat corporate offenders face breakups, dismissal of top execs, and bonus clawbacks.

Chopra's (good) notorious for saying "FTC orders are not suggestions." Companies that treat them as such get the corporate death penalty.

Like Sanders, Chopra has shown that he knows how to work the system.

When he was at the Consumer Finance Protection Board, he used public pressure to get predatory student lenders to knuckle under, a tactic that alienated cozy swamp-monsters who were used to doing everything behind closed doors.

The Obama admin came to power in an unprecedented financial crisis and pissed away the opportunity to restructure the US economy so it worked for the people, not the elites.

Biden is inheriting a much worse crisis. We can't let him be "Obama's third term" – not if that means repeating the ghastly errors of his former boss.

This day in history (permalink)

#10yrsago Disney World’s awful Tiki Room catches fire

#10yrsago Interview with hacker anthropologist Biella Coleman

#5yrsago Income inequality makes the 1% sad, too

#1yrago The bubbles in VR, cryptocurrency and machine learning are all part of the parallel computing bubble

#1yrago Top tech grads are increasingly unwilling to work for Big Tech, viewing it as a new, unethical Wall Street

#1yrago Olympics warns athletes that kneeling, fist-raising and other political actions will be banned at the Tokyo 2020 games

#1yrago The DHS classes nonviolent environmental activists in the same “domestic terrorist” category as Dylan Roof and James Fields

Colophon (permalink)

Today's top sources: Naked Capitalism (

Currently writing: My next novel, "The Lost Cause," a post-GND novel about truth and reconciliation. Yesterday's progress: 524 words (98427 total).

Currently reading: Analogia by George Dyson.

Latest podcast: Someone Comes to Town, Someone Leaves Town (part 26)

Upcoming appearances:

Recent appearances:

Latest book:

This work licensed under a Creative Commons Attribution 4.0 license. That means you can use it any way you like, including commercially, provided that you attribute it to me, Cory Doctorow, and include a link to

Quotations and images are not included in this license; they are included either under a limitation or exception to copyright, or on the basis of a separate license. Please exercise caution.

How to get Pluralistic:

Blog (no ads, tracking, or data-collection):

Newsletter (no ads, tracking, or data-collection):

Mastodon (no ads, tracking, or data-collection):

Twitter (mass-scale, unrestricted, third-party surveillance and advertising):

Tumblr (mass-scale, unrestricted, third-party surveillance and advertising):

When life gives you SARS, you make sarsaparilla -Joey "Accordion Guy" DeVilla