August 31, 2020

Consequences Of Code

Filed under: a/b,digital,documentation,doom,fail,hate,interfaces,losers,vendetta — mhoye @ 9:24 pm

[Content warning: There’s descriptions of psychological and animal abuse in here, because I’m talking about Facebook. This gets ugly fast.]

The idea behind DevOps – a consolidation of the developers who created software and the operational teams who deployed and maintained it, a meaningful distinction once upon a time – was simple. You, developer, will spend couple of days a month carrying the pager that wakes somebody up when your software fails. It’s telling that “you should own the consequences of your professional actions” was considered some sort of revolutionary insight in this industry, but let’s put that aside for the moment; that model of service development and deployment where engineers own and experience the failure modes of code they wrote, this sudden, shocking alignment of incentives – what do you mean, I’m going to be sitting in the economy seats during the maiden flight of this airplane I designed? – has driven dramatic improvements in too many organizations to count.

There are some exceptions, though.

Many Facebook employees reportedly weren’t satisfied with Zuckerberg’s explanation for the lack of action on the Kenosha Guard page, BuzzFeed reported. “We need to get better at avoiding mistakes and being more proactive,” one employee commented on the livestream of the Facebook meeting. ”Feels like we’re caught in a cycle of responding to damage after it’s already been done rather than constructing mechanisms to nip these issues before they result in real harm.” Employees have also blamed Zuckerberg personally for the company’s repeated failure to adequately address hate on its platform, with one telling BuzzFeed that Zuckerberg “seems truly incapable of taking personal responsibility for decisions and actions at Facebook.””

Many Facebook employees “weren’t satisfied”, golly. Sure, they all showed up for work the next day but think of all that dissatisfaction. Then compare it to what their content moderators – the people they pay to deal with the consequences of the software they’ve written – go through for fifteen bucks an hour every fucking day.

For the six months after he was hired, Speagle would moderate 100 to 200 posts a day. He watched people throw puppies into a raging river, and put lit fireworks in dogs’ mouths. He watched people mutilate the genitals of a live mouse, and chop off a cat’s face with a hatchet. He watched videos of people playing with human fetuses, and says he learned that they are allowed on Facebook “as long as the skin is translucent.” He found that he could no longer sleep for more than two or three hours a night. He would frequently wake up in a cold sweat, crying.

Who could have predicted that “operational mistakes” might happen in an environment like that?

In a companywide meeting on Thursday, Facebook CEO Mark Zuckerberg said that a militia page advocating for followers to bring weapons to an upcoming protest in Kenosha, Wisconsin, remained on the platform because of “an operational mistake.”

… which is just the most obvious and egregious lie. 3 overlooked reports might, conceivably, be an operational mistake. Four hundred is a policy decision.

The reason Facebook’s engineers, managers and leadership don’t and will never take operational responsibility for their code – the reason they won’t ever put the people who write their software and the people subject to the worst consequences of it in the same State, much less the same building – is simple: if Facebook’s engineers and managers had to spend one week every quarter doing the moderation work they fob off on underpaid contractors, Facebook wouldn’t exist in a year. And everyone working there knows that.

If you work at Facebook, quit. You might have good intentions – the best intentions, just really great intentions, fantastic intentions – but you know who you are and what you’re complicit in. Your intentions are just the bedtime stories you’re telling your conscience so you can sleep at night. You have a choice. Do better.

July 30, 2020



“A lunatic is easily recognized. He is a moron who doesn’t know the ropes. The moron proves his thesis; he has logic, however twisted it may be. The lunatic on the other hand, doesn’t concern himself at all with logic; he works by short circuits. For him, everything proves everything else. The lunatic is all idée fixe, and whatever he comes across confirms his lunacy. You can tell him by the liberties he takes with common sense, by his flashes of inspiration, and by the fact that sooner or later he brings up the Templars.”
– Umberto Eco, Foucault’s Pendulum.

… but it’s basically impossible to talk about this stuff without sounding like a lunatic, so let’s press on. I suppose that’s never stopped me before.

Hey, does anyone remember the tagline from the Majestic conspiracy game back in the day: “The Game Plays You”? Hold that thought.

You might have seen the argument from Adrian Hon recently, that the QAnon conspiracy theory is actually an ARG:

… and I knew I’d seen an argument that general shape before, but I couldn’t remember where; the “bottomless ARG” idea, I mean. It hit me earlier this week, shortly before the phrase “Alien DNA and Demon Sperm” became a part of this year’s pantheon of nonsensical headline nightmares: that was C.S. Lewis’ description of occultism, and the occult in general.

Lewis saw occultism as a sort of psychological snare, a set of endlessly self-referential symbols of symbols of symbols with no ultimate referent, a bottomless semiotic rathole for the overcurious inquirer designed to perpetually confuse and distract the mind. Beaudrillard, incidentally – creator of the term “hyperreal” – saw modern finance, and particularly advertising, in the same light – a set of self-referential symbols ultimately disconnected from reality, meaningful only in their own context, self-sustaining only to people trapped in that interlocking mesh.

Seeing through this lens makes the underpinnings of Facebook’s deep-seated resistance to admit the existence of, much less take responsibility for, much less do anything about, the running river of fake news, conspiracy theories and racist agitprop on that platform understandable: Facebook isn’t a social network: Facebook is an ARG Platform. It’s indiscriminate, unpoliced Alternate-Reality-As-A-Service.

“Whatever the rhythm was, luck rewarded us, because, wanting connections, we found connections — always, everywhere, and between everything. The world exploded in a whirling network of kinships, where everything pointed to everything else, everything explained everything else… “
– Umberto Eco, Foucault’s Pendulum

And with an audience already wound up in this unfiltered, overpopulated hyperreality-as-service, you barely need to do any work at all to kickstart the sort of amazing, self-sustaining paranoia-fulfillment engine that would have put the last few centuries’ foil-hatted quasi-mystic conspiriographists’ jaws right on the floor. All you need is enough people in rough proximity who feel frightened and powerless, a compelling seed crystal – the antivax fraud, the QAnon clownshow, a thousand others, it barely matters as long as it’s got a sharp hook – and this cancerous hyperculture machine pretty much bootstraps itself, making in-group celebrities out wannabe James Burkes pulling obscure facts together and drip-feeding the occasional five-like dopamine hit to the noobs explaining that you can’t spell “Rosicrucianist Aliens” without “Clintons”.

(For a while I was using that as a first-pass test for newsfeeds: if I replace “the Clintons” with “the Templars” and say this out loud… do I sound like a crank? I’ve never mentioned it, because I don’t need people who already sound like cranks emailing me to say “of course, it was right in front of us the whole time”, but we’re playing way past that now. But if I’ve accidentally added something to the collective lunatic lexicon – the lexographia lunacii, as it was first described in fifteen-forty-never because I just made that up – then I will seriously owe Chelsea an apology.)

Facebook’s ongoing negligence aside, what makes the Q-loons fascinating is that despite all its modern trappings, once that meme set its hooks into a vulnerable population (and psychological vulnerability is the name of the game, out there in the fever swamps) this wide-open extremely-2020 conspiracy-ARG is structurally nothing more a massively-multiplayer version of every vintage occult ceremony in history. I mean, the baseline aesthetic is trash, but still; it’s just a bunch of lunatic imagery, strange incantations and oddball ceremonials whose only reason to exist is to justify the time people have spent bringing it into existence.

“I have come to believe that the whole world is an enigma, a harmless enigma that is made terrible by our own mad attempt to interpret it as though it had an underlying truth.”
– Umberto Eco, Foucault’s Pendulum

So now thousands and thousands of people are participating, without realizing it, in a massively-distributed, collaborative occult ceremony, tying every scrap of fact and coincidence of the world together into this giant fractal-sefirot red-yarn serial-killer wall, drawing lines of imaginary digital salt from symbol to symbol to meaningless symbol, each utterly disconnected from anything more real than their own paranoid helplessness and fear.

Another way to say that is: QAnon is an occult conspiracy whose nefarious secret purpose is convincing themselves that an occult conspiracy actually exists.

It’s strangely beautiful in a way, until you understand what you’re seeing; Foucault’s Pendulum rewritten as a cryptofascist fever-swamp MMORPG. I love that book, and seeing this is like being offered the Maltese Falcon and handed a seagull drowned in crude.

“You see, Casaubon, even the Pendulum is a false prophet. You look at it, you think it’s the only fixed point in the cosmos. but if you detach it from the ceiling of the Conservatoire and hang it in a brothel, it works just the same. And there are other pendulums: there’s one in New York, in the UN building, there’s one in the science museum in San Francisco, and God knows how many others. Wherever you put it, Foucault’s Pendulum swings from a motionless point while the earth rotates beneath it. Every point of the universe is a fixed point: all you have to do is hang the Pendulum from it.”
– Umberto Eco, Foucault’s Pendulum

I’m not sure what to do with that information, sadly. If we’ve learned anything from the ongoing death throes of the 20th century, it’s that in an information dense and hyperconnected society, that robust commitments to social infrastructure – public health, public education, public journalism, social justice, social welfare and full employment – aren’t some sort of lefty, feel-good hippie political niceties; these are national security issues, and their failures expose an attack surface on participatory representative democracy. And while I don’t think Facebook profits from disinformation, they’re definitely complicit and definitely profiting from ignorance, powerlessness and helplessness. The disinformation, the conspiracy theories and racist agitprop, the antivax gongshow, Q and a thousand others festering alternate realities are just byproducts of that fear and desperation, parasites that have latched on to a vulnerable population from an accommodating platform happy to look the other way, wash their hands of the whole thing and let the machine grind away.

“I believe that you can reach the point where there is no longer any difference between developing the habit of pretending to believe and developing the habit of believing.
– Umberto Eco, Foucault’s Pendulum

I sometimes wonder what makes Facebook’s staff think the algorithms they’ve built, to give their users whatever keeps them clicking away uncritically, aren’t pointed back at them? Do they not wonder, or just not ask?

March 28, 2020


Filed under: a/b,documentation,fail,future,losers,lunacy,vendetta — mhoye @ 2:04 pm

February 18, 2020

Dexterity In Depth

Filed under: a/b,academic,documentation,interfaces,mozilla,science,vendetta,work — mhoye @ 10:50 am


I’m exactly one microphone and one ridiculous haircut away from turning into Management Shingy when I get rolling on stuff like this, because it’s just so clear to me how much this stuff matters and how little sense I might be making at the same time. Is your issue tracker automatically flagging your structural blind spots? Do your QA and UX team run your next reorg? Why not?

This all started life as a rant on Mastodon, so bear with me here. There are two empirically-established facts that organizations making software need to internalize.

The first is that by wide margin the most significant predictive indicator that there will be a future bug in a piece of software is the relative orgchart distance of the people working on it. People who are working on a shared codebase in the same room but report to different VPs are wildly more likely to introduce errors into a codebase than two people who are on opposite sides of the planet and speak different first languages but report to the same manager.

The second is that the number one predictor that a bug will be resolved is if it is triaged correctly – filed in the right issue tracker, against the right component, assigned to the right people – on the first try.

It’s fascinating that neither of the strongest predictive indicators of the most important parts of a bug’s lifecycle – birth and death – actually take place on the developers’ desk, but it’s true. In terms of predictive power, nothing else in the software lifecycle comes close.

Taken together, these facts give you a tools to roughly predict the effectiveness of collaborating teams, and by analyzing trends among bugs that are frequently re-assigned or re-triaged, can give you a lot of foresight into how, where and why a company need to retrain or reorganize those teams. You might have read Agile As Trauma recently, in which Dorian Taylor describes agile development as an allergic reaction to previously bad management:

The Agile Manifesto is an immune response on the part of programmers to bad management. The document is an expression of trauma, and its intellectual descendants continue to carry this baggage. While the Agile era has brought about remarkable advancements in project management techniques and development tools, it remains a tactical, technical, and ultimately reactionary movement.

This description is strikingly similar to – and in obvious tension with – Clay Shirky’s description of bureaucracy as the extractive mechanism of complexity and an allergic reaction to previous institutional screwups.

Bureaucracies temporarily suspend the Second Law of Thermodynamics. In a bureaucracy, it’s easier to make a process more complex than to make it simpler, and easier to create a new burden than kill an old one.

… which sounds an awful lot like the orgchart version of “It’s harder to read code than to write it”, doesn’t it?

I believe both positions are correct. But that tension scribes the way forward, I think, for an institutional philosophy that is responsive, flexible and empirically grounded, in which being deliberate about the scale, time, and importance of different feedback cycles gives an organization the freedom to treat scaling like a tool, that the signals of different contexts can inform change as a continuum between the macro and micro levels of organizational structure and practice. Wow, that’s a lot of words in a strange order, but hear me out.

It’s not about agile, or even agility. Agility is just the innermost loops, the smallest manifestation of a wide possible set of tightly-coupled feedback mechanisms. And outside the agile team, adjacent to the team, those feedback loops may or may not exist however much they need to, up and down the orgchart (though there’s not often much “down” left in the orgchart, I’ve noticed, where most agile teams live…) but more importantly with the adjacent and complementary functions that agile teams rely on.

It is self-evident that how teams are managed profoundly affects how they deliver software. But agile development (and every other modern developer-cult I’m aware of) doesn’t close that loop, and in failing to do so agile teams are reduced to justifying their continued existence through work output rather than informing positive institutional change. And I don’t use “cult” lightly, there; the current state of empirical evaluation of agile as a practice amounts to “We agiled and it felt good and seemed to work!” And feeling good and kinda working is not nothing! But it’s a long way from being anything more than that.

If organizations make software, then starting from a holistic view of what “development” and “agility” means and could be, looking carefully at where feedback loops in an organization exist, where they don’t and what information they circulate, all that suggests that there are reliable set of empirical, analytic tools for looking at not just developer practice, but the organizational processes around them. And assessing, in some measurable, empirical way, the real and sustainable value of different software development schools and methodologies.

But honestly, if your UX and QA teams aren’t informing your next reorg, why not?

January 5, 2020

Crossfade Dissonance

Filed under: a/b,awesome,beauty,lunacy,microfiction,music — mhoye @ 8:58 pm

@pamela :

I will never, ever tire of seamlessly transitioning from the end of Mean Girls to the beginning of Hackers with the same song, this was a damn *gift* given to us by the movie industry

@mhoye :

@pamela Has somebody actually crossfaded the video for this?

@pamela :

@mhoye not that I’ve found, but I live in hope…

@kiethzg :

@pamela @mhoye Sounds like a fun little project to start off my weekend with!
@pamela @mhoye I actually got distracted with even sillier things, but! Finally did this. Then watched it on a loop for a bit. Then remembered I should actually upload it somewhere! So here it is:

I really love the idea of jumping from movie to completely unrelated movie through a common song and a smooth soundtrack crossfade. The only rule, really, is that the song you jump into a movie with has to be earlier in the movie than the one you jump out with. Anyone out there got a dataset of movie soundtracks I could use to cobble together an Oracle Of Bacon-like tool for figuring out the forward soundtrack distance between movies?

December 17, 2019

Long Term Support

Filed under: a/b,digital,future,interfaces,linux,toys,want,work — mhoye @ 11:34 am

I bought a cordless drill from DeWalt a few years before they standardized on their current 20 volt form factor. Today the drill part of the drill is still in good shape, but its batteries won’t hold a charge – don’t store your batteries in the shed over the winter, folks, that’s rookie mistake – and I can’t replace them; they just don’t make them anymore. Nobody does.

I was thoroughly prepared to be annoyed about this, but it turns out DeWalt makes an adapter that slots right into my old drill and lets me use their new standard batteries. I’ll likely get another decade out of it as a result, and if the drill gives up the ghost in the meantime I’ll be able to use those batteries in its replacement.

Does any computer manufacturer out there anywhere care about longevity like that, today? The Cadillac answer to that used to be “Thinkpad”, but those days are long gone and as far as I can tell there’s nothing else in this space. I don’t care about thin or light at all. I’m happy to carry a few extra pounds; these are my tools, and if that’s the price of durable, maintainable and resilient tools means a bit of extra weight in the bag I’ll pay it and smile. I just want to be able to fix it; I want something I can strip all the way down to standard parts with a standard screwdriver and replace piecemeal when it needs piecemeal replacing. Does anyone make anything like this anymore, a tradesman’s machine? The MNTRE people are giving it a shot. Is anyone else, anywhere?

December 13, 2019


Filed under: a/b,digital,documentation,fail,interfaces,vendetta — mhoye @ 3:16 pm

It’s been a few years since I’ve seen an interview with Jack Dorsey that didn’t read like he’d just smoked an entire copy of Atlas Shrugged, so when he announced that he was willing to fund “up to five” people to wash his hands a lot of people were a little suspicious, including me:

Twitter doesn’t exactly have a history of doing the reading before coming to class, so it wasn’t a surprise that there wasn’t so much as a nod to existing work in the space. I also wasn’t surprised to see so much criticism emerge from a fundamental mistrust of both Twitter’s intent and execution; ambulance-chaser to the world’s worst ideas is definitely in-character for that company. That said, it’s definitely a testament to the fundamental optimism of the open source world that so many people offered to help at all.

It’s Twitter, so there’s plenty of healthy pessimism around – as one example, Diaspora developer Sean Tilley said that “the pessimistic interpretation is that Twitter wants this, but also wants to control the standard” – but even seeing that and a lot like it the “real why” question still nagged at me. Ok, you don’t want to control the client anymore. Great. You don’t necessarily want to control the infrastructure, also great, so… what’s left? We know who you are, we know what you are: what do you want to control here and to what end?

To me this smells like a cryptocurrency play. A clever one, admittedly, but still.

The general shape of that corner of the law is very strange to me; it’s illegal to create your own currency, for example, entirely legal to issue non-voting shares of stock in your company, we’re apparently undecided about cryptocoinage, and it’s not clear to me what makes any of those things different. That aside, my concern is this: if some financial services company manages to finagle enough control over, say, the wheat futures market and the bread futures market then the people who own and operate the bread-making plant in the middle wind up having very little agency over their fates beyond the decision of whether or not to operate the machinery at all.

With that model in mind, if this is a cryptocurrency play and Twitter manages to turn themselves in to the First National Bank of the Fediverse – by which I mean, if they can open up the application or storage layer while maintaining control over a separate value-exchange layer – then they can effectively meet the letter of the law as far as “open” is concerned (Readable code! Data migration!) while completely subverting open source’s ideological goals of user agency, safety and real, informed choice. If my suspicions are correct, the end play for this Twitter thing is not more agency or meaningful freedom for the participants, but simply dumping of the costs of operating the machinery of openness on an unsuspecting and ideologically-blinded audience. Or in the classic phrasing: socializing the costs and privatizing the profits. The only new twist here is the audience.

For my own part, beyond updating my sarcastic comments about the blockchain to sarcastic comments about “up to five open source architects, engineers, and designers” I’m going to ignore it. We’ve got a better future to build here, and if Twitter wants to be a part of that they can clean their own house first before wiring themselves up to everyone else’s.

September 17, 2019

A Process By Which Scarce Resources Are Allocated

Filed under: a/b,digital,documentation,future,interfaces — mhoye @ 5:05 am

Counterpoint: any software that is intended to be used by humans is inevitably an expression of its programmers’ understanding of the software’s audience, and therefore the programmers’ beliefs about the nature of those humans’ lives and priorities and the value of their time and experiences. Consequently, larger a program is, the more likely it becomes that you can evaluate its merits purely on the politics of its developers.

April 9, 2019


Filed under: a/b,arcade,digital,documentation,interfaces,vendetta — mhoye @ 8:57 am

Tevis Thompson, games critic and author of the excellent Second Quest has posted a new article on the best and worst games of 2018, and as always his work is worth your time.

So the question is not: what is it? Or: is it good? The question is: why are you still playing? Why do you need another chaos box? Was the tropical island version not enough in 2012? Nor the Himalayan one in 2014? Did you really need the rural American flavor too? I know this isn’t your first rodeo. Chaos boxes were kinda novel and fun in the 2000s, but there’s nothing wild or crazy about them now, no matter how many grizzly bears named Cheeseburger you stuff in. Surely you have a higher standard for dipshittery in 2018. Besides, there are so many virtual ways to unwind and let off steam these days. So why are you still playing this?

I’ll tell you why: because you like high definition murder. You like it. It’s not an accident that the most violent shooters are always on the cutting edge of graphical fidelity. They know what you want. And as your stunted adult imagination knows, mouth gun sounds just won’t cut it anymore. You need 4K fire and blood, bodies twisting and breaking at 60 frames per second. You need local color to give just enough specificity and grit to make each shot really land, to make sure your deadened senses feel anything at all. You especially need a charismatic villain to see you, recognize your violence, say you’re just like him. And then, absolve you. Because both of you poor souls have no other way to be in this fallen world. Except that he’s a videogame character and you’re a person.

That’s part of his review of Far Cry 5, a game that only took second place on his list of the worst games of the year. He digs into the first, Red Dead Redemption 2, at much greater length.

Read the whole thing.

January 20, 2019

Super Mario Telemachy

Filed under: a/b,arcade,awesome,beauty,digital,documentation,future,interfaces — mhoye @ 10:29 pm
This way to art.

One thing I love about the Hyrule of Breath of the Wild is how totally unbothered it is by our hero’s presence in it. Cliffs you can’t climb, monsters you have no real shot at beating, characters wandering about who aren’t there as side-quest farmers or undifferentiated foils for your inevitable progress. Even the weather will inconvenience, injure or outright murder you if you walk out into it dressed wrong, and in large ways and small this mattered. I’d seen lighting strikes in the game before – and getting one-shotted by the rain after I missed the memo about not wearing metal out in a storm was startling enough, lemme tell you – but the first time I saw one hit water, saw a handful of stunned fish floating to the surface, that put my jaw on the floor. The rain that made this hill too slippery to climb gave that world the sense of a being a world, one that for all your power and fate and destiny just didn’t revolve around you.

Super Mario Odyssey is the precise, exact opposite of that, and at first I really didn’t get it. I couldn’t get into it.

It’s surprisingly hard to enjoy an entire world carefully and forgivingly tuned to precisely fit your exact capacities at all times, to the point that if you’ve done much platforming in your life there’s no real challenge to navigating Odyssey, much less risk. A “death” that costs you about six of the abundant, constantly replenished gold coins that litter the landscape hardly even counts as a setback – you’re likely to restart next to eight or ten of them! – so my first impressions were that it amounted to a hoarder’s brightly coloured to-do list. I decided to grind through it to see the New Donk City I’d been studiously avoiding spoilers for, hearing only that it was the best and weirdest part of the game, but it was definitely a grind.

But after watching my kids play it, and helping them through the parts they’ve been hung up on, I realized something: Odyssey is a bad single-player game because it’s not a single-player game, at least not a single adult player. It’s a children’s book, a children’s experience; it’s Mario Disneyland. And once I discovered the game I was actually supposed to be playing, the whole experience changed.

With fresh eyes and unskilled hands involved, this sprawling, tedious fan-service buffet becomes an entirely different thing, a chance to show my kids around a game world I grew up with. Even the 2D sidescroller diversions, eye-rollingly retro on their own, become a conversation. Most amazingly, to me at least, the two-player option – one player driving Mario, the other driving his ghost hat companion Cappy – stops looking like a silly gimmick and starts looking like a surprisingly good execution of a difficult idea I’ve wanted for a long time. Odyssey is the only game I’ve ever seen that has cooperative, same-couch multiplayer that’s accessible to people of wildly different skill levels. Another way to say that is, it’s a game I can play with my kids; not versus, not taking turns, but “with” for real, and it’s kind of great.

So, playing Odyssey alone by myself? Sure: unchallenging, rote and if we’re honest enough to admit it, a little sad. But with my kids’ playing it, playing along together? Definitely. Not only good but good fun, maybe even a meaningful experience. Sign me up.

Older Posts »

Powered by WordPress