At the time of this writing I do not know how this comic book by Jim Ottaviani and Leland Purvis relates to the film of the same title, and the same subject matter — a (somewhat fictionalized) biography of Alan Turing. The comic has a copyright date of 2016, which seems to preclude the possibility that latter adapts the former. I see that the words “comic” and “graphic” do not appear on the film’s Wikipedia page, and the book made no acknowledgment in the other direction. I avoid contaminating my thoughts about media I blog about here until the blogging’s done, so I’ll leave it as a curious coincidence for now.

I enjoyed this book! For some reason (perhaps based on what little I’ve heard about the movie) I expected something much less compelling than what I found. Specifically, I anticipated a story that would focus more on Turing’s personal life, building up to the circumstances of its premature ending, using his world-changing work only as backdrop. The book ends up paying far more attention to Turing the war-hero mathematician than Turing the tragedy, though, and I liked that. Granted, it does lay on the foreshadowing thick at its start — teenaged Turing seeing Snow White in the theater, presaging the inevitable final panels of the red apple by his bedside — but for the most part it keeps to its sources. It uses a frame that imagines interviews with the people who knew Turing best, mostly family and colleagues, their words based (from what I can gather) on the works listed in comic’s extensive bibliography.

This set of external lenses results in relatively little attention given to Turing’s loves or relationships, though still I learned enough to surprise me. Given the well-known circumstances of his death, I assumed heretofore he kept his homosexuality a shameful secret until its accidental public revelation after the war. The Turing of The Imitation Game, however, takes a stance that a modern person would call openly gay. The privations of World War II Britain, and Turing’s value as a national asset, seem to lead to tolerance for this: most of his colleagues at Bletchley treat his preference as a charming eccentricity, and at worst he receives a scolding from a particularly stuffy lab-mate for oversharing.

The only one of Turing’s lovers we “meet”, in the authors’ imagined interview-room, is the pretty but coarse low-life (or so he is here depicted) who leans on Turing’s post-war loneliness and naivety in a way that reveals their illegal relationship to the law, leading in turn to the final, sad chapter of Turing’s life. Other than him, a few implied boarding-school dalliances, and a brief and unsuccessful engagement with a female friend at Bletchley, this Turing seems to have little interest in romance or partnership. While he valued the companionship of many friends, those same friends paint a portrait of a man whose work and studies remained his true passions for this whole life, and I find myself respecting that man all the more for it.

On that topic, I found new appreciation for the difficulty, complexity, and cross-discipline teamwork involved in Turing’s famous feat of “cracking the Enigma code”. Another bit of received wisdom that this book massaged into a more realistic shape, for me: Turing did not create a single, elegant solution that neatly and permanently turned all intercepted German messages from gibberish to cleartext overnight. Rather, building on the work of those already hard at work at Bletchley when he arrived, he devised a machine — his “bombe” — that could, when used by cryptanalysts who still had to know what they were doing, brute-force through many possible decryptions at high speed. And more than once, the Germans would succeed in stifling the bombe’s efficacy by ratcheting up the Enigma’s own complexity, a situation solved in both cases by British sailors in the field risking everything to capture hardware and documentation from sinking submarines. While Turing’s invention absolutely played a critical role in this whole process, it certainly did not rest on his shoulders alone.

This is a good book. And now I will see what I think about the movie, perhaps.

I just published a new tool called TwitterSplit. Paste in an essay or another hunk of text too long for Twitter, hit the button, and receive back a tweetstorm ready for pasting into the client of your choice. You can optionally have “page numbers” appear at the front or back of every tweet, or stamp them all with a certain hashtag. The tweets’ length in any case will never exceed 140 characters each.

It is essentially a web-wrapper around a command-line program and Perl library I wrote last year. I didn’t have any particular reason to make those then, and I didn’t have any real justification for today’s work, either. I did it anyway! My next big personal actually-useful project is still some weeks away from beta, and I suppose wanted to feel good about shipping something small in the meantime.

I hope someone finds it somehow useful. (The obvious next steps would involve making a proper API out of it, or even having it connect to Twitter and post a threaded storm for you — but these feel like features on the other side of “I myself would use this, ever”.)

I enjoyed Warren Ellis’s Normal, read as a series of four two-dollar ebooks. Something like modern Lovecraft without the literal monsters: the protagonist and most of the other characters reside in a sanitarium for professional futurists who have contracted a condition known as “abyss gaze”, presented as an inevitable consequence of deeply understanding the fragility of human civilization.

Soon after the main character’s arrival at the facility, he stumbles into a locked-room mystery, and solving it accidentally falls to him. Not a long book, Normal follows the hero through a single lap of the hospital campus, meeting a variety of his fellow mind-broken futurists, before the plot proceeds directly to its conclusion. All the patients have convinced themselves the world is doomed, but each holds an extreme and mutually incompatible reason as to why. I found a kind of satisfyingly backhanded optimism there.

I learned about this book via an excerpt included within Ellis’s highly enjoyable email dispatches, which I have received every Sunday for some time. In fact, before I read this novel, my familiarity with Ellis was — I almost wrote “limited to” his Twitter presence, his blog, his newsletters, and his ambient music podcast. But that doesn’t sound very limited at all. I know that I have at least one friend who counts himself an Ellis fan based entirely on the authors’ copious oeuvre of free and self-published supplemental work, finding his longer-form prose ultimately disappointing.

The friend in question shared this opinion after I tweeted that I’d started Ellis’s Crooked Little Vein, his debut novel — and, again, a rather short one — from the previous decade. I’ve owned an unread printed copy of it for nearly that long, and found it closest to hand when Normal left me hungry for more.

I’d summarize it as The year is 2007, and Warren Ellis has been reading a lot of Boing Boing. I let myself take pleasure in reliving the angry-anxious late-Dubya-era online zeitgeist through the story’s color-smeared lens. If I found myself questioning the main character’s undeniable resemblance to Spider Jerusalem, or the unapologetic manic-pixiness of his dream-girl sidekick, the fact I’d already read a quarter of the novel by that point encouraged me to just motor through the rest. It didn’t change me much, but it did invite me to reflect on the recent past unexpectedly, and I liked it.

We learn that, in the next major release of its Mac and mobile operating systems, Apple will replace its depiction of Unicode character U+1F52B, the emoji officially labeled PISTOL, from a picture of a dangerous-looking black handgun to that of a green plastic water pistol.

Apple does not appear to have stated a reason for the change, but one can reasonably speculate. Despite its capitalist gigantism, Apple under Tim Cook has shown a proclivity to lean left on flashpoint social issues affecting America, from its open embrace of marriage equality to its unusual decision to not support Trump’s RNC. At risk of engaging in the kind of Cupertino kremlinology that I usually find uselessly dull, I can easily imagine Apple’s management deciding to quietly distance the company from America’s increasingly maladaptive gun culture by removing the ability to type a revolver-shaped glyph on its devices’ keyboards.

I do not find myself harboring strong feelings about Apple “taking my gun away”, in this instance; I don’t use that character all that often, and I don’t imagine that this pictographic nerfing will have any significant muzzling effect on any of my future written communication. I can picture other folks feeling a little more annoyed by it, certainly, and I also agree with the argument — older than this event — that two systems displaying the same emoji character in two very different ways can lead to miscommunication. We already have, for example, the confusing case of “😁”, which looks like an unambiguously happy grin in some OSes or websites, but more resembles a pained or forced rictus on Mac and iOS.

However, I have not yet seen anyone address how this change will rectroactively modify the meaning of many, perhaps most, of the already-recorded statements that make use of the “🔫” character. I suppose that one may feel an initial reaction of “who cares?” or even “well, good!”, given that the first uses one imagines include the ugliest tweets and Instagram comments, not just of little societal value but also entirely ephemeral. What could it possibly harm to quietly steal the bullet-chambers out of those messages? With a little extra effort, though, one can imagine more noble, clever, or even friendly statements using that character, which must (for the world is big, and its internet vast) already exist, published in one digital location or another, in large numbers. These too will — for many future digital readers — have a key glyph swapped out for one with a wholly different meaning, potentially changing the whole message’s meaning with it, their authors never the wiser.

Sometimes righteous messages work because they bear sharp teeth. Apple’s change, however well-intended, would catch them up and blunt them, too, as surely as it neuters the more vile utterances it aims to disarm. I don’t predict that this case in particular will cause much of an uproar — at most, it will cause a tiny amount of very subtle confusion. I do think that this event’s implications deserve more study, though. I cannot recall another case where an apparently small and politically progressive decision made by a single entity can, in the space of one moment, change the meaning of already-published writing on a large scale. I can certainly imagine future applications of the same action with far more visible and profound effects.

Jesse Eisenberg in Café Society

I enjoyed this film’s premise and setting far more than its totality. After a mutual nose-holding ceremony to acknowledge our cognizance of the movie’s baggage-laden creator, my partner and I entered the Jane Pickens hoping for something like the relaxingly whimsical fantasia of Midnight in Paris, the last Woody Allen picture we saw together. Café Society, alas, fell short, despite a similar indulgence in fondness for things past. I couldn’t see past a fundamental mismatch between tone and content.

The protagonist, young Bobby Dorfman, adds a twist to a the trope of a naive kid right off the bus in 1930s Hollywood: he is an experienced and irrepressible horndog. After the requisite opening montage where job-hunting Bobby receives the cold shoulder from too-busy studio executives, he decides to relax by hiring a prostitute, and does so with the nonchalance of someone ordering a pizza. I appreciate stories that skip off the formula, certainly, but the tone of the ensuing scene where he berates the poor working-girl to tears and then bum-rushes her out of his hotel room made me instantly dislike our hero, and all the more since the movie clearly wanted me to laugh the whole time. Nothing he did for rest of the story improved my mood towards him, and that includes the depiction of his wooing two other women by badgering them from the moment they meet.

As a character concept, I can certainly envision “naive boy in young Hollywood who really likes ladies a lot” as something that could work fantastically well, and I did appreciate the intentionally absurd love triangle at the core of the story. But I couldn’t stand Bobby, and that made it very hard to like the rest of the movie. I enjoyed The Social Network and I haven’t seen any other movies starring Jesse Eisenberg, so I won’t lay any fault with him. Unavoidably, the character’s behavior brought to mind what I know (and what has been alleged) about the director’s own sexual history, and this put me off even more. Maybe someone else can try again with these same elements, someday, and end up with a memorable, lovable-loser protagonist this film seemed to want, rather than a manic slimeball. (Having a love-interest less of a doormat than Kristen Stewart’s gorgeous but powerless Vonnie wouldn’t hurt, either.)

Perhaps the movie means to accurately represent how much truly awful stuff men with a modicum of power could get away with in interbellum America. Bobby may start out broke and alone, but he works family connections to find success and influence in short order, and at no point does he truly pay for anything. This may have invited in my other great source of negative thoughts while I watched the picture: that the beautiful people in their glamorous clubs depicted true decadence in a much more literal sense than intended, that the story’s time-setting is not so much “the 1930s” as some of the final years of humanity’s unquestioned mastery of the earth. One could watch it with full knowledge that its Hollywood threatens to dry out into uninhabitability, and its Manhattan become unlivably underwater, within a single century of its setting.

I think, perhaps, I saw a little too much of our civilization’s own naive trajectory in Bobby, where after years of consequence-free rapaciousness, realization and regret strike him all at once in the final scene. While music and laughter sound all around him, he stands frozen in place, able to at last see and contemplate the enormity of his actions for just a few last moments before the closing credits roll.

None of it matters today. When I started writing this blog post yesterday, I planned to lead with the example “What bomb did he lob this hour — the one about how he has no Russian investments? And last week he falsely stated (in the biggest speech of his career so far) that crime had increased under Obama, and before that…” But already that’s out of date, with today’s call for foreign agents to compromise the state department. Tomorrow it’ll be something else, I have no doubt.

My point, either way, is that no scandal will bring down Trump before election day. It’s far too late for that. The media had their chance; they could have latched onto any of his earliest, most heinous utterances from 2015 and held on, pressing him until he cracked and his campaign dissolved. Alas, the media, by their very nature, cannot do this. Comprising mere mortals as easily distracted as you and I, they feel compelled to drop what they’re doing and chase after every bright yellow ball of a juicy campaign story that bounces by.

By emitting several of these stories every week for the past year, Trump has effectively DDoSed the global press. He has fired so much chaff around that even though any one example of it could destroy a traditional candidate, the constant novelty of the whole list, ever-growing, simply overloads any attempt to weaponize it against him using any known methods.

The only path — the only path — towards defeating Trump lies in the rest of us (and most especially the rest of us who happen to live in swing states) outvoting the bloc of confused and desperate people that Trump has bamboozled by the millions to support his overtly fear-driven, authoritarian, white-nationalist cause. We can do it. It’s not guaranteed to work, but I see no other way.

I still encourage the continued calling out of Trump’s lies and outrages. The future will want the record. But I caution against putting any hope that, ah, this one, surely this one will finally do it, will finally send his presidential ambitions crashing down within weeks. I just don’t think it’ll work out that way.

We have to pull him down ourselves.

He might win, you know. It might very well happen. For the first time in 16 years, and only the second time in my own whole voting career, this U.S. presidential election’s outcome does not feel like a foregone conclusion. While I encourage my fellow Americans to join me in voting for Hillary Clinton and allied downticket candidates, I must also accept the unwelcome reality that this cause has a good chance of failing to stop the swelling national desire to choose rule by an overt autocrat.

Should this happen, I’ll let myself feel very sad, disappointed, and probably more than a little scared — but I will do my best to not give into despair. For lack of any other options, I will swallow my fear and focus on the things that I can do, actively do, to refuse either cowed obedience or cynical passivity when I find myself a citizen of a nation whose chief executive swept to power on promises of hate and harm.

The specifics of these actions will have to change according to the shifting reality past that dread veil, which I won’t try to predict here. But I can, at least, try to name three general strategies, which I try to present generally enough to apply to more life-situations than mine alone.

Draw strength from friends and family. Hopelessness takes root in a vacuum. I plan to stay close to people I love and respect, both in-person and online. I can remind myself through them that the world is larger, so much larger than even the largest frightened mobs — and, more to the point, larger than me alone, because I am not alone.

Focus energy on local community. I mean “local” in both the physical and the virtual senses.

Learn who the leaders of your city, county, and state are. Consider attending municipal council meetings. Stop staring at Washington, and instead get familiar with the senators and representatives who mean to do that for you. As time and energy allow, increase your voice in their own offices, even just a little.

In the larger world, and in your internet-based communities, continue doing good in the ways you know how. This is the Keep Calm and Carry On part. I recently co-founded a charitable arts-technology nonprofit, allowing me to use my own skills to support others’ ability to make beautiful things in a sometimes ugly world. I fully intend to continue pouring myself into this effort, no matter what happens outside.

Resist. I have the least to say about this, right now. The form of resistance will vary enormously depending upon one’s identity, opportunity, and resources, as well as the shape of the thing that needs resisting against. I have no ability to foresee the specifics of this, especially not with such a destructively mercurial force poised to take charge.

I can see myself continuing to use my knowledge and my voice (assisted, without apology, by my privilege) to simply help keep the pressure on, even when it seems futile. History is larger than today, and terrible events don’t end history. Not everything is a crisis that must be resolved right now — that is the false message of the adversary. Some things require patience and fortitude to come about. If the best I can do is just help to keep pushing, that’s what I’ll do.

For myself and other Americans, this year’s presidential election is a choice between acceptance of scarred and plainly imperfect political competence, and total surrender to a fear-and-hate-fueled demagogue. I understand why people, even nice people, might choose the latter. I, however, pledge my support to the former candidate, who I think would make for the skilled, stabilizing, and ultimately quite unexciting president that my country needs right now.

No viable candidate comes close to Obama in terms of raw, ebullient positivism and hope. I know I don’t stand alone in having either choice unavoidably feel like a downgrade. The candidate with the highest excitement-and-inspiration quotient didn’t make it through his party’s primaries. If he had, I would have gladly backed him today. But he did not, and so with equal conviction do I back Ms. Clinton instead.

Yesterday I let myself feel hopeless and out of options, before a piece of found art from my own laptop helped kick me back on my feet. Since then I’ve read things like this Twitter-essay by Max Gladstone, as well as reminders from many that the ballots across the country this November won’t just decide the country’s chief executive, but also a great deal of other downticket contests. We can argue about how much influence the president really has, or how much of a say any one of us has in choosing the president, but the real power of the electorate rests in local offices. Even if none of the presidential choices move you — or if you live in an irredeemably “red” state — you still have a relatively loud voice applicable to the politics directly around you.

I will do my best to not surrender myself any further to cynicism or hopelessness, and I hope you will join me in promising to do what you can to reify a stable present and a better future — even after misfortune, and especially during those times when the swell of anger, fear, and hate reaches a crest. We can stop that sad evil from eroding hope. Please vote with me.

Today I found myself in a very dark place, and, feeling unable to do anything else, I wrote an email to my wife. Normally we text or Slack each other during the day, so I don’t do this very often. I’ll use email if I need to monologue over a full paragraph or two, and I’ll aim the email at my wife if I want to do something between writing in a private journal and writing to a friend, or on a blog. In this email, I confessed feelings of fear and anxiety which I found so heavy as to cripple my ability to work. I felt like I stood amidst a crisis that felt like it should preclude everything else I had going on, even though I couldn’t do anything at all about it.

After I sent the email, I switched back to my web browser in order to return to my rounds of reading terrible things. It happened that through some video-memory error, the preview pane of an embedded video on the website picked up the text of my email like Silly Putty picking up newsprint, even smearing it around a bit as I dragged or resized one of the windows prior to switching. The result looked like an intentional work of glitch-art, made all the more interesting by the website’s framing it with an obliquely (if accidentally) tangential headline, as well as tags and feedback buttons. I posted a screenshot to Twitter:

Seeing my words transformed into completely unintentional art like this couldn’t help but force me to take a step back, and feel a little better for it. It freed me up enough to admit I was probably running a chemical deficit, so I went across the street to my regular coffee shop and had a coffee and sandwich and felt better still. The Twitter post got some funny, sympathetic feedback from friends. I returned to my office and inevitably opened all those websites again, but I didn’t feel weak or helpless any more; I felt like something had burned out of me. I got some work done.

I still fear that many aspects of our reality will get worse before they get better. I think that no matter what happens over the next few months, we’ll need to withstand a mighty, long-lasting, fear-driven pushback in retribution for decades of civilizational social progress, and we’ll struggle to recover from it. When things start feeling really dire, I appreciate any reminder I can get to keep my focus on the people close to me and actions that lie within my reach, even when those reminders come via strangely beautiful accidents.

Red Lectroids

I received an email over lunch on Saturday from a kind stranger informing me that users of an XMPP-based chat server I operate have been sending spam to this person’s own system. I confess I’d been letting the server essentially run itself for many years, so when I visited the sub-basement of the filesystem where it prints all its logs and flipped the lights on, I recoiled at the writhing mass of obvious non-human users which constituted the bulk of its activity, doing god knows what. Thus did I spend my afternoon in an unplanned but quite engaging digital sanitation exercise.

First, following my interlocutor’s advice — and after I mailed them back with a swift apology and an oath to make things right — I deactivated the server’s default, unfettered “in-band registration” feature. When active, this allows any person or process to sidle up to an XMPP server and create a new account in a single step. When I first set up this Jabber server in 2004 to use as the basis for a tremendously ambitious project, this seemed like a natural thing to want. We know better now, of course, but in all the time since, I confess I never thought back to it. So, I shut and painted over that door in the config file. This immediately stopped the unchecked mechanized immigration, but now I had to figure out what to do about all the critters who’d moved in since.

My next step, then, involved separating the soft, squishy sheep from the cold robo-goats. Once I had puzzled out how ejabberd’s command-line interface works nowadays, I asked it for a dump of all the server’s registered users, and got back around 42,000 names. Most of them resembled long strings of gibberish: obvious robots. But, I had no desire to pick out the humans from a such a long list on sight alone, and I knew that trying to do it via pattern-matching would surely catch up a lot of false positives.

So, I changed my focus from the static user-list to the Jabber server’s logs, recording in great detail all its activity over the last two weeks. (Normally the logs would cover a longer stretch of time, but the robots toiling in darkness kept the server so constantly busy that its automated log-rotation moved much faster than normal, foreshortening its calendar-coverage.) I decided to call it a win if I could eliminate all the robots responsible for recent abusive behavior, and not worrying at present about the cold scrap-pile of inactive bot-accounts, no matter how huge.

Eyeballing the logs, three facts became clear:

  1. The robots connected from a wide variety of IP addresses, meaning that my server likely had at least one botnet aimed at it, and that merely blocking access to my machine based on incoming IP would probably not work.

  2. The robots often opened several simultaneous, overlapping connections, keeping each one open for only a few seconds at a time. (I assume that each such connection stayed active just long enough to inject a payload of spam at its targets, then immediately exit.)

  3. When logging in, the robots preferred to capitalize the first letter of their usernames. For example, if one held the account “abaca”, then it would always log in with the literal string “Abaca”, using a capital “A”.

Blocked by the first fact and guided by the latter two, I wrote a Perl script that analyzed the logs and printed the names of every account which, over the last two weeks, had at least three times connected for one minute or less using a leading-capital-letter login name. Within moments, I had a list of around 800 account names which displayed a fascinatingly oblique sort of homogeny. Here’s a few excerpts of the output file (which I’d sorted into alphabetical order):

  • Abupe
  • Abyzuz
  • Adeto
  • Adome
  • Adopali
  • Afogene


  • Lybuna
  • Lynuseli
  • Mafewi
  • Maroxic
  • Mazoveh


  • Zapaca
  • Zaxirobo
  • Zewalob
  • Zidubuke
  • Zitaxap

All the bots’ names looked like this. What strikes me is how they tried. They could have chosen random strings of characters — indeed, most of the inert usernames in my initial file of 42,000 usernames is stuff like “!!dy42” or “14khuhrg9” (both real examples) — but they instead made the effort to pass as human by following some formula to programatically generate names that are on-sight pronounceable to an English-language reader. I imagine the robots somehow feeling pleased with their nametags, looking forward to mingling invisibly with humans, paying no mind that not a one of them matches a name any real human has ever carried. They further assert their friendly, perfectly-normal humanity by always carefully capitalizing their names when logging in, because of course that is how humans always write their names down, yes?

I am not sure whether this personification of the robot accounts as hapless alien infiltrators made my erasing them more or less pleasurable, but I rewrote the script to wrap all those names in account-deletion shell commands and ran it anyway. Having committed this atrocity, I find myself keeping the poor critters alive just a little bit longer, in a way; in writing this post and revisiting that list, I find I enjoy saying their names out loud. With their reliance on plosives and open-vowel endings, to my Anglophonic ear they have a pleasant, vaguely African lilt to them. They could be characters in an intriguing, otherworldly novel, and even as I type this I wonder if the master of these robots borrowed the services of an existing fantasy-story-name-generator tool.

And that is the end of the story of the funny little robots who wore silly man-masks and got away with it for a while. (While spewing spam across the internet from the safety of my own server. Sorry. I fixed it!)