Why I Tweetstorm Instead of Blog

A blog post about not blogging

TL;DR: it’s the conversation, which Twitter broke in April 2017 when they rolled out their new reply scheme.
Photo from en321 on Flickr

I use the hell out of Twitter. I follow about 2000 people, and about 20,000 people follow me. This makes me microfamous, meaning I am well-known inside a few very small communities.

I mostly write about software development, management, programming, startups, and teams.

As a reader, Twitter is my news curation.

As a writer, Twitter is my primary medium.

For realsies. This is my second blog post in three years, but rarely a day goes by that I don’t post 20–30 tweets. Each tweet is only 140 characters max, but packaging my thoughts into smaller bits is a useful organizing mechanism for me. The ideas I get out of organizing my thoughts on Twitter find their way into my conference talks, and eventually, someday, maybe, into a book.

My writing generally takes the form of “tweetstorms,” also called threads, in which I post a chain of tweets about a single subject. It starts when I post one standalone tweet - the anchor.

Then I reply to the anchor tweet (yes, I reply to myself) for the next piece of the conversation.

Then I reply to the second tweet for the third piece of the conversation.

This can go on for a while. If you get me going on a topic that’s been marinating in my brain for awhile, I can knock out a tweetstorm with 10+ replies in an hour. This one goes on for 14 more tweets.

If you look at the anchor tweet of a storm in one of the official Twitter clients (web, iOS, Android), you can expand it and see all my replies in the chain. Together, they make a longer-form thought, somewhat like a blog post cut up into 140-character pieces.

And, inevitably, when I write a tweetstorm that connects with people, at least one person will wonder aloud frustratedly why I didn’t just write that blog post, and tweet the link to it, instead of cutting it up into what is essentially (for the programmers in the audience) a doubly-linked list with unreliable links.

They want a blog, instead of a tweetstorm, because as a medium for longer-form thoughts, tweetstorms have some definite issues.

The Problems with Tweetstorms

  1. Twitter doesn’t think they exist. The purpose of replies, in their view, is not to create long chains of your own tweets; it’s to reply to other people’s tweets. Have conversations! “Engage,” as they say, with other Twitter users.
  2. No support for creation. The process is literally: sit on my profile page, post a tweet, refresh the page, hit reply on the tweet that shows up. Post that reply, refresh the page, hit reply on the tweet that shows up. It’s tedious, and it’s also very easy to reply to the wrong tweet, thus messing up the chain, or inadvertently making a single tweetstorm two separate chains that aren’t connected. [UPDATE: there is a third-party iOS app called Stormcrow specifically for tweetstorm creation, but seems designed for writing in isolation and then publishing all at once. This misses the point for me — see the next section. So close though!]
  3. Poor support for reading. When you expand an anchor tweet, you see the first eight replies in the chain (no matter how many replies there are in total). Below that, you see replies from other people.

When there are more than eight replies in the tweetstorm, a difficult-to-notice link shows up in between the two sections. You have to notice it, and then click it, in order to see the rest of the tweetstorm.

So Why Not Blog Then >_<

Even with all of these issues, tweetstorming is still vastly more useful to me than blogging, for one simple reason: the conversation that ensues, even before the tweetstorm is finished.

I don’t plan tweetstorms out ahead of time. I start with a thought and a vague idea of how the arc will go. I tweet the first few tweets. And then: divergence. At this point, someone always replies to the original tweet with something interesting. We chat. My idea evolves. The tweetstorm goes in a direction that is perfectly consistent with the first two tweets, but that I didn’t anticipate ahead of time.

Tweetstorming constructs tighter, more real-time feedback loops on my ideas than a blog post does. A post takes me hours to get to the point where I can post it and get feedback from a wide audience. At that point, I’ve invested all that time; if the original idea in the first paragraph morphs, I have to rewrite the entire thing for it to still make sense. Usually I don’t.

I end up with better ideas and ultimately better writing if I get that feedback on the original idea before I spend hours thinking about it and writing it out.

Twitter Broke Conversation :(

This whole mechanism is no longer working, however, as of early April 2017, when Twitter rolled out their new reply scheme. One of the major changes was to how replies appear visually in the notification list. I’m sure this wasn’t their intention, but I basically can’t have conversations with people anymore while I’m tweetstorming, because I can’t look down the notification list and distinguish between replies I want to read and respond to, and replies I want to ignore.

Why does that matter? Well, 20,000 followers means you get a lot of notifications, and a lot of replies. As a woman who frequently writes on technical topics, I get quite a few obnoxious replies. I’ve learned to mostly not engage these people (unless I’m tired - then I forget).

However, other people (usually supportive, and bless them, they mean well) will engage the obnoxious commenter. They’ll reply to the obnoxious tweet, and now the two of them are having an argument in my mentions, because I’m still on the reply chain.

That’s all been happening for years. The change is in how these mentions appear to me on my notifications tab.

When the replies contained “@tacaswell @sarahmei @paul_snively” at the front, instead of the hard to read “Replying to @tacaswell @sarahmei and 3 others” right above, it was much easier to spatially tell which ones belonged to the same conversation. A simple visual scan worked. Now I have to examine each reply to determine if it belongs to a conversation I care about reading, which takes a LOT longer and isn’t sustainable at my level of replies.

Previously, reply text started with the name of the user being replied to, or in the case of multi-party conversations, the names of all the people in the conversation. For example, under the old reply scheme, the last tweet in the screenshot above would have read:

@tacaswell @sarahmei @brianokken Yeah. I guess I’m among those who agree with the point while questioning the example. I find it helpful to have code review…

Instead, now, there’s a faint “Replying to @tacaswell @sarahmei and 3 others” between the user’s name and the reply text.

This is much, much harder to visually scan. When I look down a long list of replies, I can’t tell which ones belong to the same conversation. As a result, when I’m tweetstorming and looking down the list of replies, even once I’ve checked out of a conversation I still have to read all its replies, because there is no spatial way to tell if it’s a reply I want to skip. I have to actually read it.

I like reading, so it wouldn’t be a huge deal, except for when they’re the arguments in response to obnoxious comments. Reading comments about how I clearly don’t know what I’m talking about (usually from dudes who’ve been in tech for like 5 years, lolnope) saps my energy. They’re ridiculous, and I don’t believe them, but it’s exhausting to keep seeing them.

Under this new regime, in the process of doing a tweetstorm, I lose energy and momentum each time I pause to look at replies and talk with people. It used to be the opposite — because I could spatially distinguish and thus easily skip over replies that weren’t relevant, I’d see mostly interesting stuff. It would energize me to talk with folks and continue the tweetstorm.


Q: Can’t you just mute the conversation?

A: Nope. Then I wouldn’t see any replies for that tweet at all, and it’s…my tweet. I want to see replies. I just want an easy way to distinguish the ones I’m interested in from the ones that are part of conversations I’ve already decided are not relevant.

Q: Can’t you just block the obnoxious commenters?

A: Yes, and I do, and that removes replies from those specific individuals. However, it doesn’t remove all the replies from the folks who are defending me to them. The defenders are generally reasonable people, so I don’t want to block them.

Q: Can’t you just use mastodon?

A: Besides the horrifically unfortunate name, it’s got the problem all starter social networks do: not many folks are over there. I could get fast feedback, but it would be from a much smaller group of people, making it less valuable to me.

Q: Can’t you just blog?

A: Sigh.