Two weeks with Micro.blog

Posted in Life, Software at 5:48 pm by

It seems that I made my first post on Manton Reece’s new micro-weblog aggregation/social network, Micro.blog, two weeks ago (well after the service opened to the public, but just ahead of the nuclear-button and new-year rushes), so here are a few thoughts.

First and foremost, as a committed introvert, a social network of any kind is never likely to be a good fit for me. I’m a member of only one, Facebook, and that is largely the accident of a Camino bug report more than a decade ago where only I had an email address from a school then permitted to join. Still, at some point in the later years of the last decade or the early years of this one, as people were abandoning their own blogs in favor of Twitter for posting and conversations, I considered joining Twitter—but even back then, I really wanted to have some way of retaining my thoughts (in the event I said anything important or memorable at some point). I never really figured out how to do that easily (mostly because I never put much time into figuring it out, but partly because Twitter was designed to take your content, not give it back).

Fast-forward a half-decade or so, and, like many others, I’d let my blog atrophy, I’d been pulled into Facebook more often than I was comfortable with because it was the only way I had to communicate with some people, a lot of life had happened, and I still wasn’t happy with the state of things. I had more thoughts than I managed to sit down and write out, and sometimes I just wanted to toss out a quick, one-off thought somewhere. In early 2017, I made a half-hearted commitment to blogging more—and, internally, of making sure I blogged every significant thing I posted on Facebook, if it didn’t originate from my blog already—and I wildly exceeded expectations (more on blogging in 2017 coming later; I feel like I’m continuing to write things backwards). So when Manton Reece commented on Michael Tsai’s blog two weeks ago, I was open to experimenting with a social-ish blog network.

Second, in case it’s not already obvious, I’m not great with short-form writing. My thoughts tend to get complex, reaching across space and time to make connections, and I have absolutely no clue who my readers (all 0-5 of them daily) might be, so I sometimes try to explain and re-explain. Blogs can handle that OK, microblogs less well ;-)

Those two caveats on my poor fit having been expressed, here are some of my thoughts and observations about two weeks of microblogging (and microblog-reading).

  • Micro.blog is still young and being developed (in the two weeks I’ve been around, there have been two updates to the iOS and Mac apps and several new platform features released); it doesn’t have all of the features of longer-established networks or all of the polish of a version 2 application. But it does enough, well enough, to be eminently usable. It reminds me a lot, actually, of Camino 0.8 and the 0.8+ nightlies back when I began using Camino—there were many sorts of things still a little wonky, and it didn’t do everything other browsers did—often by design—but it was a complete, functional web browser capable of handling any web browsing I needed. Micro.blog works well for posting and consuming status updates and having brief conversations around them, and some of the things that are “missing” in comparison to other networks are by design, to make Micro.blog a more thoughtful, humane community and platform for sharing statuses, short updates, and thoughts.

  • There’s no one on Micro.blog that I know. None of the people I’ve worked with on open-source projects in the past are here, even though some of them are part of the Mac/iOS indie developer community. There are people I know of from my days of “playing a developer on IRC”, as well as a few other names I recognize from the broader Internet, but no pre-existing connections for me.1 It feels a lot like the mid-2000s Facebook in that regard, except whereas on Facebook, besides my non-existent friends, I could only see other Georgetown people (and later DC people) in a vast empty room, on Micro.blog you can discover everyone (more on that below). A lack of existing connections is something to be expected when combining an introvert with a service that’s only somewhat recently been available to the public, so it’s nothing to be concerned about, and Micro.blog will continue to grow (and has since the New Year)—to quote Costner and co., “If you build it, they will come.” Which gets me to my next point….

  • The Discover section is quite good. On the web, there are three parts: a stream of posts, a list of “featured” users/suggested follows, and a collection of recently-posted photographs. Discover (at least the stream of posts) is human-curated, so no algorithm will start populating the list with divisive drivel that has made everyone hot under the collar (not that such posts would necessarily even be allowed on Micro.blog; see below again), and the humans behind the curation have been doing a great job in picking interesting posts. At first I thought it might have been limited to posts from early or well-known users, but then a couple of my posts showed up (and several of my replies have continued to show up), so someone at Micro.blog HQ must have found them interesting, or thought others would. In fact, I’ve found a lot of interesting things to read via the Discover section, as my first “Friday links” post of the year attests. The non-link posts and conversations in Discover are also high-quality and provide a spotlight on many of the diverse voices in the young community. So I just started following a few people who seemed to say interesting things or to post enjoyable photographs.

    The second week of my experience with Micro.blog began with the debut of Micro Monday, where users can recommend someone else for everyone to follow. “Emoji topics” joined the Discover section a day or so later—posts about a certain subject and which include the related emoji all appear in an additional Discover list (Books / 📚 is the current featured topic) to provide additional subject-based ways of discovering interesting conversations and users.

  • There’s a great community already present on Micro.blog, and the quality of the conversation is high. More importantly, there are real rules to prevent bad apples from spoiling the community, to protect users from hate, abuse, and other problems existing social networks are currently unwilling to address. Micro.blog also already has a Community Manager in place to help keep the community and discourse healthy. But I’ve found everyone friendly and welcoming, eager to help out and to reply, even if they don’t know you. It feels like a bunch of friends getting together and chatting about things; I don’t feel my stress level increasing by being present or participating (or in Facebook-speak, I don’t feel crummy after using it).

  • Diversity has been a hard nut to crack in technology, which often has a reputation for being predominantly male and…other things. It’s hard to get a sense of the whole Micro.blog userbase, especially as it continues to grow, but from avatars, bios (especially those who have followed Belle B. Cooper’s lead), and bits of conversations here and there, it’s clear that there are a number of women on Micro.blog already, many being featured in the various Discover sections. And the Community Manager, one of two official Micro.blog people, is also female: Jean MacDonald. If sex/gender is difficult but somewhat possible to determine, ethnicity and national origin are so much harder. That said, in my poking around profiles of people who have been recommended or have said interesting things, I have found several different ethnicities and national origins represented. For what it’s worth, it seems like Micro.blog is in OK shape with user diversity at this early point—and, again, with a woman serving as Community Manager, and with what seems a high quality of overall user conversations so far, it feels like a good foundation for staying on the right track. (But this is just the opinion of one middle-aged straight white guy, so don’t take this as the only or last word.)

  • I really appreciate the Micro.blog iOS app for dashing off a quick status post; once set up, it feels frictionless. Whereas, for me, using the WordPress editor and ticking all of the various options and seeing all of the editor chrome just felt heavy and too time-consuming for just making a quick post. (I still want all of that for longer, blog posts, like this one, but for short thoughts, nothing beats a text field all by itself.) So, in theory, I can post whenever a short thought hits my brain—in practice, I tend to let it ruminate a bit and make sure I really want to post it, but when I do, it’s quick and simple with the iOS app, as is posting photos. (At the moment, posting with the iOS app is not entirely frictionless—I do have to remember to re-enable comments, but that’s a bug to be fixed.)

  • So far, I like checking Micro.blog when I have a few minutes of “dead time” where I can’t productively do anything else and don’t have anything else to reflect upon. It fits into my life conveniently without being a burden or obsession. But like anything else in life, it is up to the individual to ensure he or she partakes in moderation.

  • I’ve noticed no problems with uptime/service availability on Micro.blog so far—and hopefully the presence and attractiveness of paid hosted microblogs will support the service and enable it to keep up with demand.

  • The biggest negative so far is that Micro.blog needs more documentation on configuring external blogs to work with the service beyond the basics, a sort of “best practices” document. In part this is because the service is still new, various parts of it are still evolving, and the pieces for external blogs are also still changing. That said, there are several of us who are responding to questions with answers, blogging about various bits and pieces, and “creating” some of this documentation in this way. Micro.blog creator Manton Reece is also steadily adding to the official Help documentation as new types of questions arise or features get implemented/improved. So, long-term, this is not anything I’m worried about.

  • It seems that I haven’t posted since Monday, so I’m not becoming that person who is dumping every “interesting” thought into his feed, which is probably good. But I think I have made a comment nearly every day on posts/in conversations that I’ve found interesting. That’s probably a good balance of participation. I also like that I don’t have to limit my posts to short thoughts; I can also send long posts to Micro.blog and it will do the right thing (or I can make a separate status post pointing to the long post on my blog; so far I’ve both, and I may continue switching back and forth as I feel like at posting-time).

  • I still have some work to do here on my blog: supporting Webmentions for comments, implementing a status-free feed option for whomever consumes my main feed, possibly even hiding status-format posts from the main page (they would still be findable in the Status category archives), and maybe some other tweaks, too. For now, though, it works well enough that it doesn’t annoy me.

So that’s more-or-less the state of my thoughts on Micro.blog, two weeks into using it. It’s a great little service that works well, has a high quality of conversation, and is constantly improving. You should check it out, and I think I’ll continue to hang around :-)

Update (11 PM EST): Because I don’t have Webmentions set up (and I posted a reference to this post on Micro.blog, rather than posting this post directly), the great comments from Micro.blog are not reflected here, so here is a link to the Micro.blog conversation.

Update 2 (January 13, 2018): Jack Baty wrote a great “follow-up” post about one of the design decisions that has shaped Micro.blog for the better, the absence of follower counts, and what that means for the way people interact on Micro.blog.


1 For those people who were on App.net or Twitter, Jeff Mueller’s username lookup tool can help you find the Micro.blog usernames for people you already know. ↩︎


WordPress filter to auto-linkify @-names for Micro.blog

Posted in Software at 2:14 am by

After seeing this post from @manton tonight, I worked up a very quick-and-dirty WordPress filter to auto-linkify @-names in posts, now that Micro.blog will convert them into official Mentions.

I’m not a PHP/WordPress hacker, I’m only so-so with regular expressions—there could be some edge cases that need work—and it’s only lightly tested—remember, I only play a developer on IRC ;-) But it seems to do the right thing in my limited testing.

A few other quick notes:

  • I don’t know the allowed characters for Micro.blog names, so I might be missing some.
  • I’m looking for an ampersand at either the beginning of a line or following a space, so if for some reason you have an @-name adjacent to markup, it won’t linkify (it also won’t go in an infinite loop if you edit/autosave/resave the post, so there’s a trade-off). But for the moment, you can’t, say, start a list item with an @-name and have it linkified.
  • This currently runs on all posts/post types, and you may not want that.

Here are some examples, all created by the filter while editing this post:

@smokey, I’m testing an @name auto-linkify filter.

i@bozo foo@example.com @example i@do.t

@example, @example1, @example2:
@example3, go to see @example_4!

@example5, that’s awesome!

I hope this helps someone. Improvements/suggestions welcome, too (if there’s enough interest, I can make an actual GitHub repo, but a gist worked best for late-at-night quick hack ;-) ).


Friday links, early January jumbo edition

Posted in History, Links, Software at 4:40 pm by

Today’s jumbo-sized links edition is brought to you by Nero fiddling while Rome burned

  • In the Bones of a Buried Child, Signs of a Massive Human Migration to the Americas [New York Times]

    The year I was his TA, Dr Voll taught African History, and he began the class with a unit on the role of Africa in human origins and the different theories of migration of populations. I haven’t kept up with the state of the field, but whenever an article like this about a discovery does cross my path, I always find it fascinating.

  • #WWDTogether_Immigration [Women Who Draw, via Jean MacDonald on Micro.blog]

    You could tell me immigrant/immigration stories until the end of the world and I still would not be bored. I love the art and stories these women created for this theme.

  • Farooq Butt on the fragility of civilization [Twitter, via Dave Winer]

    Two separate points about this tweet-thread. First, he’s absolutely correct. Also, although in the European Dark Ages a good chunk of Greek and Roman knowledge was preserved in the Islamic world, the world was much less connected then. In today’s world, the collapse of civilization is likely to be global, with fewer chances of refuge, and for less information.

    Second, this is absolutely the kind of thing that needs to be its own blog post. It’s an important argument about an important subject worthy of a real “home” on the Internet. The presentation at Twitter is awful and clunky for this purpose; eight separate tweets (and two images, which could have been linked to their sources on a real blog). For “posterity”, in case Twitter ever changes its display UI or algorithm: 1, 2, 3, 4, 5, 6, 7, 8. And instead of reasonable discussion or Q&A, the bulk of the replies shown by Twitter are trolls; on a blog, one could block trolls and delete their comments and keep the discussion from getting lost in the weeds.

  • Digital Resource Lifespan [xkcd, via Jack Baty on Micro.blog]

    I saw this shortly after I saw the tweet-thread above, which just serves to drive the point home. Civilization and knowledge are fragile and need to be defended constantly.

  • Explore The Largest Early Map Of The World [Co.Design, via arzoriac on Micro.blog]

    I love a good map story. “Fun” fact: the author of the article is Jesus Diaz, who is one of the people involved in Gizmodo’s reporting on the stolen iPhone 4 prototype it purchased.

  • Hey Oregon! Pumping gas is not that scary! [GasBuddy]

    Change is scary.

    Hopefully the good people of Oregon will adapt to this bit of change without too much disruption.


Some tips for using WordPress with Micro.blog

Posted in Software, Status at 6:27 pm by

There’s a long prelude I should write—hopefully later—about why I’m writing this article to begin with, but for now I’m going to jump right in…

Getting Started is Easy

If you have an existing WordPress installation on your website (or have newly installed WordPress for this purpose), getting started with Micro.blog is simple; create an account with Micro.blog, and then a couple of clicks later and you’re all set. Maybe not quite as easy as hosted Micro.blog, but easy enough that it’s almost frictionless.

There are, however, a few things you might want to configure in your WordPress installation to improve your new microblogging experience. Micro.blog creator Manton Reece is writing a book about microblogging which will cover using WordPress, but until it’s out, here are some tips based on situations I’ve encountered myself or common questions I’ve seen in my (very short) time on Micro.blog.

Verify Your Website/Blog

If I recall correctly, if you fill in your website/blog URL in your Micro.blog profile, it prompts you to verify your site. Micro.blog Help guides you through this step, including suggesting a WordPress plugin to help add the requisite header.

The Post Format and RSS Feed for Micro.blog

First and foremost (and, actually, probably before you paste your WordPress feed URL into the Feed section of your Micro.blog Account settings), it’s important to give some thought to which RSS feed you’re going to submit to Micro.blog. Back in 2015, Manton Reece suggested that one use the WordPress “Status” post format for microblog posts, but also to create/choose a category for these posts as well; you can then use that category’s RSS feed in Micro.blog.

This is what I’ve done, and I like it so far, especially since I’m adding these microblog posts to my existing blog. In particular, by using the category’s RSS feed, I’m also able to feed (no pun intended) full-fledged blog posts (non-Status-format) I want to share on Micro.blog (like this one) simply by adding my status category to the post (this post is in both the “Software” and “Status” categories). Micro.blog is smart enough to handle full-fledged blog posts—they turn into a “post-title-and-domain-link-to-post” status update) in addition to ordinary, 280-characters-max statuses.

You can also tell WordPress to ping Micro.blog right away when you make a new post; see the bottom section of Micro.blog Help – Feeds.

More Feed Jiggery-Pokery

You may also want to exclude your microblog (or status) posts from your site’s main RSS feed. In that post from 2015, Manton Reece also included an .htaccess snippet that does this, with improvements by Sander van Dragt in a comment below the original code. (To find the ID of your status-post category, in the WordPress Admin, click on the “Categories” item in the “Posts” menu, and then check the tag_ID= parameter in the URL for the category’s “Edit” link.)

Update 2 (January 17, 2018): An updated version of that blog post now appears in the official Micro.blog help: Setting up WordPress.

(Unfortunately, this doesn’t do the right thing when a post is in both the status-post category and one or more other categories, like this post is; the post will be stripped from your main feed. I don’t know if there is a way to work around that.)

Titles on Status Posts?

Micro.blog encourages you to leave the “Title” field of your status update posts blank—and most modern WordPress themes have support for styling posts of “Status” format specially to work well without having a title. However, the WordPress Admin area will show every Status-format post as “(No Title)”, which is hard-to-distinguish and possibly unsightly.1 (And if you have an older or custom theme, it may not style Status-format posts to hide the title, so your main blog pages might look strange.)

Adding a Title for the WordPress UI

Fortunately, there’s a solution to this, too. Micro.blog will ignore titles that are dates,2 so you can have useful titles in WordPress and the correct experience on Micro.blog. Colin Walker wrote a simple WordPress function that provides a date-based title for posts with blank titles. This is helpful automation when posting from WordPress, as well as the best way to handle this when using the Micro.blog Mac or iOS apps (which would not show a title field, unlesss you’ve exceeded 280 characters) to post. Just add Colin Walker’s code to your theme’s functions.php, or to your site’s functionality plugin, and you’re all set (it may even work as a stand-alone plugin; I haven’t checked).

I created a fork of the function that tries to use the blog’s default timezone when formatting the date, so that if your blog UI doesn’t use UTC, the date/time of your post and the date/time title string will still match (WordPress plays around with the date format at various places, but the upshot is that when called by this title-generation code, WordPress always returns UTC-formatted date/time unless you tell it otherwise, which my fork does, or tries to do). If you’re an American, you may also want to change the php date format string in the function to m/d/Y ;-)

Stripping Titles of Status-format Posts in the RSS Feed

If you’ve added date-string titles to your microblog posts and you include your microblog posts in your blog’s regular feed, or if your microblog post feed is consumed somewhere else besides Micro.blog, you may not want those date-sting titles to show up in those RSS feeds at all. Fortunately, Colin Walker has come to our rescue once again. He’s provided another WordPress function for your theme’s functions.php or your site’s functionality plugin that removes the title from posts with the “Status” post format when creating the RSS feed. With this, your regular posts retain their titles, and only your Status-format posts lose that date-string title you added only to make the WordPress Admin look more sane ;-)

(You could also create a custom feed for your microblog posts, but unless you have some really unusual feeds or special needs, it’s probably better just to use Colin Walker’s code snippets :-) )

Getting Replies to Appear on Your Blog

To get replies to your statuses made by other Micro.blog users to show up on your blog, you must configure Webmention. I haven’t gotten around to this yet, so I can’t provide any tips beyond the Micro.blog Help article. Here’s an example of what it looks like in action, though (and here’s the same comment thread on Micro.blog itself).

Update (January 8, 2018): See also this new Help article for a bit more info about how Webmentions work with Micro.blog.

Update 2 (January 17, 2018): Dameon D. Welch-Abernathy (@PhoneBoy) has also written an introduction/getting started post, which includes more information about configuring Webmentions.


@-mentions in posts originating from your blog are not currently parsed by Micro.blog; this is something that Manton Reece has said he plans on improving in the future.

Update (January 8, 2018): Improved support for @-mentions in posts originating from your blog arrived on January 7. Per the Help article, you have to hyperlink the @name to the user’s page on Micro.blog, e.g. to https://micro.blog/name. I’ve written a quick-and-dirty WordPress filter to have WordPress do this automatically; see this post for more information.

Connecting the Micro.blog Mac and iOS Mac apps

Again, this is relatively straightforward and the Micro.blog Help provides basic instructions (Mac, iOS) that should cover most cases.

One (uncommon) thing I will note is that if you (or your theme’s author) has for some reason removed the <link> for the Really Simple Discovery service endpoint (rsd_link in WordPress code parlance) from your blog’s <head>, the apps will fail to connect to your blog and claim they could not find your XML-RPC or Micropub API service. There may be other errors that trigger this message, but restoring the RSD <link> I had removed years ago in a “<link> cleanup” was what I needed to do ;-)

Posting from the Micro.blog Mac and iOS Mac apps

Again, this is simple and just works, with one caveat: right now, the new microblog post is created on your blog with comments turned off. This also is on the list of things to be fixed, but for the moment, if you want to allow comments, you’ll have to manually turn comments back on on every post via your blog itself.

Also, if your blog doesn’t support Markdown, you obviously can’t use Markdown syntax when authoring a new status post in the Micro.blog apps :-)


Thanks to Manton Reece for creating Micro.blog (and all the Kickstarter backers for helping him get it off the ground) and for providing several of these suggestions originally, to Colin Walker for writing the WordPress functions mentioned, to Bryan Hooper for having many of the same questions and thoughts about more documentation for using WordPress as I had, and to all the new Micro.blog users over the past few days who have also had similar questions—the latter two prompted me to write this post now.

Here’s to success in microblogging (and owning your own content in the process)!


1 One might argue that, in an era where WordPress acknowledges the prevalence of status-type posts with their own special post format and the P2 theme, the Admin area ought to be configured to display titleless posts using their post ID, like the “post slug” in the URL already does. ↩︎

2 Though not all date formats; the format I chose for my microblog posts apparently is not ignored, perhaps because I’ve added text (AM/PM and the timezone)? ↩︎


New Year’s links

Posted in Links, Software at 1:38 am by

  • How to Stay Internet Friends Without Facebook or Twitter [Jon Mitchell, via his micro.blog]

    Wherein the author reminds everyone that communication on the Internet predated today’s “social media”, and that those “old” methods never went away and are still effective today, for keeping in touch and expressing oneself. In particular, there are some good tips about using email effectively. To Mitchell’s Internet methods, I would add the telephone, and, if it’s not time-critical, good old-fashioned cards and letters, which I’ve also used in the past year to keep in touch. So if you’ve made a resolution to cut out or cut down on social media this year, Jon Mitchell has you covered.

  • The year we wanted the internet to be smaller [The Verge, also via someone on micro.blog]

    I didn’t think there was much interesting meat in this article—a lot of descriptions of small communities that were doing well in 2017—but the sentiment described in the first few paragraphs was important to see expressed, and it tied in with the prior link (which I had also just seen shared).


2017-12-31 2:10:30 AM EST

Posted in Software, Status at 2:18 am by

Made my first “real” bug report in a long time today, er, last night, er, Friday night. Turned out to be 2 different issues, but my report helped @dave fix titled item permalinks on Scripting News :-)


Friday links, end-of-the-year edition

Posted in History, Links, Software at 5:00 pm by

  • How the Index Card Cataloged the World [The Atlantic]

    A piece at The Atlantic describes how Carl Linnaeus (yes, that Linnaeus) was responsible for the invention of the index (or note) card—once, as late as a few decades ago, used for all manner of things, from recipes to cataloguing books to taking notes and planning research papers to flashcards—which made sorting and sharing information much easier. Like many technologies, though, index cards in the wrong hands could wield their power for evil, as the last three paragraphs of the article remind us, almost in passing.

  • SFS, the quarterly newsmagazine of the Walsh School of Foreign Service (SFS) at my graduate alma mater, Georgetown University, had an article in its latest issue about the first women admitted to the school (at the behest of the US government, who believed women could fill critical job and skill vacancies in the foreign service) in the mid-1950s, the challenges they faced in an era before coeducation, their successes, careers, and legacies.

    When looking to see if the article was online (sadly, it is not), one of the news blurbs on the SFS website was about SFS faculty and alumnae who signed the November 28, 2017 #MeTooNatSec letter, which tied in to the list of issues the early women SFS students found difficult to tolerate during their time at Georgetown: the housing situation, the traditionally male culture at the university, and the challenges of finding a job in the foreign service field upon graduation (women in the Foreign Service could not be married, and the establishment often waited until after women graduates had married before contacting them about an opening, if ever). The second and third issues in the list fit right in with the #MeTooNatSec letter, showing that while SFS and Georgetown have made great progress on the education side in the last 60 years, the so-called “traditional male culture” and gender inequality are still rooted in our foreign service and national security organizations 60-plus years after these pioneering women first broke down the barriers to entry.

  • Merry Last Christmas, Jack Dorsey. [Mike Monteiro, via Manton Reece]

    This is kind-of a rant—at least, a very angry, and rightfully so, article—about the failings of Twitter, and Silicon Valley writ large, and perhaps even our capitalist society, at managing issues of human interaction in today’s digital, connected, tense world. Monteiro notes, as I have tried to say before (here, in passing, and in a still-unfinished post), that tech companies are typically good at figuring out the best way to do something, but terrible at figuring out whether it should be done in the first place. Some other choice quotes from the article:

    Jack [Twitter co-founder and CEO Jack Dorsey], and to an extent Twitter’s pet porg Biz Stone, have always believed that absolute free speech is the answer. They’re blind to the voices silenced by hate and intimidation. The voices that need to be protected. But anyone who’s ever tended a garden knows that for the good stuff to grow, you have to deal with the bad stuff. You can’t let the weeds choke the vegetables. You’ll go hungry.

    Twitter isn’t a technology company. It’s a human interaction company. I’m not sure they’ve ever understood that. And that’s the generous assumption. More likely, and alarmingly, they understand that but don’t care.

    I want to write more on my thoughts about the points Monteiro raises, but right now everything I write ends up a jumbled mess headed off into the weeds, and not even its sole pithy phrase (“a virtual lynching”) is salvageable. So, just a few brief additional thoughts: Twitter replicates and in fact amplifies the existing power structures and power imbalances in our society. As part of this, some people participate in and get away with behaviors on Twitter that society and communities would not tolerate if they occurred in physical (real-world) public spaces—and Twitter has no idea how, or no desire, to deal with these problems.


Twitter goes to 280

Posted in History, Software at 6:46 pm by

I am not a Twitter user. I am barely a social media user of any sort. So my main interaction with Twitter is when someone’s blog links to someone else’s tweet because the person doing the blogging thinks the person doing the tweeting has said something useful and important that cannot be found elsewhere. Depressingly, these tweets often take the form of a semi-numbered—or worse, unnumbered—series of approximately-140-character chopped-up thoughts, which Twitter tries to show in a thread but which often are interrupted by replies, discussion, and trolling from other Twitter users. Even worse (at least as far as accessibility and searchability are concerned), sometimes users resort to typing out notes on their iPhones, taking a screenshot of each screen of the note, and then tweeting a collection of screenshot images! (And this is only in English; other languages with longer words—Scandinavian languages are often cited—face even more difficulty with 140 characters.)

A brief history lesson

I am one of those now-old-ish fogies who lived through some of the early-ish days of the web. I lived through web pages that were single images of Arabic text because it was nearly impossible to put Arabic text on the web in a way that both widely compatible and still useful (before browsers widely supported multiple text encodings, before operating systems supported multiple languages and shipped multilingual fonts, and, of course, before Unicode). Often even English text for parts of a site was displayed as an image, sometimes for layout purposes but often to use a specific font (before CSS and web fonts)—I myself have a few relics of this on my own site. Over time, as the web grew and developed, new web technologies addressed these shortcomings and (mostly) banished text-as-image. Today, social media (primarily Twitter, but to a lesser extent Instagram) are the highest-profile remaining holdouts—and as late as last summer, noted blogger/software developer Dave Winer was developing new software to enable more efficient creation of text-as-image for posting to Twitter! From his perspective, it seems, text-as-image is preferable to searchable/translatable chopped-up tweet threads. Regardless, it’s pretty clear that the platform has length problems when smart people think that falling back to one of the most inaccessible parts of the early 1990s web is a good work-around.

Back to the present

Today, for better or for worse, Twitter is a news-delivery mechanism with extensive reach, particularly for individuals. What once would have been a statement released by a publicist, an op-ed submitted to a major newspaper, or, even within the last decade, a post on one’s own blog, is now a tweet made through one’s Twitter account. If someone has something non-trivial to say, however, it’s extremely difficult to do so in a tweet. One must either severely hack up one’s thought to fit in a tweet, losing tone and context indicators; split the thought into multiple tweets, with all the extra effort and care required to do that correctly; or write out a complete thought and post it as an image or set of images, with the extra work again required and the added drawback of the thought no longer being text and thereby not readily accessible/searchable/translatable.

The pushback to Twitter’s increase to 280 characters (which is probably still too few for most of the tweets I’ve followed links to, but at least a step forward) that John Gruber collects and joins feels like the whining of people whose formerly-little-known (“exclusive”) favorite restaurant is suddenly wildly popular and now they have to compete with “newcomers” to get a table. In other words, a loss of privilege of sorts, as well as the inability to see the larger picture—both that this change helps many Twitter users who were overly burdened by the length of words in their languages, and also the fact that Twitter has changed. It’s no longer just a place for people who like the challenge of saying something important in 140 characters and for sharing thoughts among the tech elite, but instead it’s a place—for better of for worse—that people come to say things they want everyone to hear, a news distribution mechanism (Twitter even ran televisions commercials, or at least commercials during online viewing of television programs, to that end during the summer). And most newsworthy things almost always need more than 140 characters to say.

Would I prefer that we went back to sharing our thoughts on our own blogs (or the comment sections of others’ blogs)? Yes, absolutely. But that ship has sailed; unless there are some new technologies currently flying under the radar or invented in the future, blogging is never going to be a true mass-market social media platform like Twitter or Instagram or Facebook (but it’s not going away, either). And, for the moment, Twitter is not going away, so we ought to welcome changes that make it more useful today for what it’s currently being used for (as well as potentially making it a better web citizen by reducing the need for thoughts to be cut up into disjointed threads or posted as a series of text-as-images).

What are they thinking at Facebook?

Posted in Links, Software at 2:38 am by

Michael Tsai posted a link roundup on a new Facebook project designed to stop “revenge porn” on Facebook by asking users to upload their explicit photos to a new Facebook tool before sending them to anyone. With the submitted images, Facebook can create a hash, or digital fingerprint—a small string of characters that uniquely identifies the image contents—of the image and then check newly-uploaded images against the hashes of prohibited images and block those considered to be “revenge porn.” However, Joseph Cox, as quoted by Tsai, reports that before an image submitted to this new Facebook tool can become part of the prohibited photos, a human at Facebook will review the image to make sure the tool is not being abused or used to censor legitimate photos (the example given is the photo of the man in front of the tank in Tiananmen Square, “Tank Man”) and so forth.

There are all sorts of problems with this process, from the vague details (the missing information about the human review and about image retention—Facebook doesn’t keep the images, just their hashes) to the need to upload images to Facebook in the first place, to trust and the terribly creepy feel of a giant data-mining tech company soliciting nude images from users. Long-time Mac developer Wil Shipley quickly “solves” most of the problems for Facebook in a tweet:

Facebook could have said: “Here’s a tool for you to create hashes of anything you’re afraid someone might post in revenge. Send us the hashes and if we see matching posts we’ll evaluate their content *then* and take them down if needed.”

It makes me wonder how no one at Facebook involved with or overseeing this project managed to arrive at Wil Shipley’s solution or the like before announcing the project? “All bugs are shallow” and all that, but the problems with Facebook’s new tool seem like they were sitting in less than a teaspoon of water :P

Shipley’s solution of having the tool run locally on the user’s device and send only the hashes to Facebook is a vast improvement on the privacy and trust sides for the person hoping to use the Facebook tool to prevent “revenge porn” attacks on herself or himself, but his solution is still suboptimal where it gets applied to new Facebook image uploads, for at least two reasons. First, when someone sets out to attack a person with “revenge porn” on Facebook, the “revenge porn” image still gets posted on Facebook first, then flagged. Second, a human still has to review (look at) the flagged image to be sure it’s actually “revenge porn” (or similar abusive use of an image rather than the result of someone having spammed the sensitive-image-collection-system for fun or to try to censor legitimate images) before the image is taken down (it’s unclear how fast this happens in Shipley’s mind; perhaps it’s instantaneous, but it still seems like the image is posted, flagged, evaluated, and only then removed after it’s already been visible on Facebook). If the image posted is really “revenge porn,” the end result is that not only will someone at Facebook still see the victim’s private photo, but so will anyone who can see the attacking post/image before it is flagged and/or removed. This part of Shipley’s solution doesn’t help prevent “revenge porn” on Facebook; it just makes it a little faster to take it down.

I’d propose, instead, that the hash-checking is run as part of the upload process whenever someone tries to post an image to Facebook; if the hash is matched, the image is blocked (never posted) and the uploading user is informed that the image he or she is trying to post has been flagged as “revenge porn” or the like (with a reminder about Facebook’s Terms of Service), but also a notice that if the uploader thinks that this is an error, there’s an appeal process, with a button or link to start that process. The effectiveness of this depends on trusting Facebook and on Facebook having a responsive (i.e., quick) appeals process in order not to censor legitimate images,1 but the benefits make it possible for Facebook to achieve its presumably-intended goal of preventing “revenge porn” on Facebook and protecting people from having their private images—at least those submitted to the new tool—viewed by strangers (both inside Facebook the company and on Facebook the social media platform).2 In other words, this modified on-image-upload process defends and protects the victim, moving the onus of proof to the people trying to post the images, while at the same time also warning image uploaders any time they try to post potentially harmful images. I’d like to believe that most people would not attempt the review process for actual “revenge porn” images, and I hope that the review process is not chilling to the posting of legitimate images like the “Tank Man” (I have limited experience with dissent against powerful and controlling authorities, so it is hard for me to judge). It seems like a better balance, at least.

There are still other issues (attackers using the appeals process—thereby allowing a human at Facebook to to see a victim’s private photo, attackers changing the images to defeat the hash, attackers uploading the images elsewhere on the Internet, whether this entire project is a good idea, the relative merits and “safety” of preemptive censorship, etc.) with Shipley’s and my suggested improvements to the process. However, even working within those general limitations and Facebook’s intended goal, it still seems like it has been very easy for “the Internet” to put its heads together and significantly improve Facebook’s current process to better protect the privacy and security of potential victims and their images from problems and concerns that seemed glaringly obvious to outside observers. Which leads me back to the beginning—what are they thinking at Facebook? How did all of those presumably-smart people involved with or signing off on this project and its announcement not notice these privacy and “creep factor” problems and do anything about them (they obviously put some thought into things because they did take abuse—submitting non-“revenge porn” images–into consideration)? Were they not thinking, or did they not care?


1 If spamming or censorship attempts really do turn out to be a problem, the tool that creates the hashes can perhaps even run a local machine-learning pass on submitted images and flag images that don’t seem to match unclothed human bodies/body parts and the like as “low-certainty” images, sending and storing that flag with the hash; then, when someone tries to post one of those images and it is blocked and later appealed, Facebook could move that appeal to the top of the appeal queue based on the fact the sensitive-image-collection-system thought the image was less likely to be a real human nude. ↩︎

2 As security expert Bruce Schneier points out in the passage quoted by Tsai, this system won’t prevent “revenge porn” in general or even all “revenge porn” on Facebook, only the posting of specific images on Facebook. ↩︎


Friday links, beginning of October edition

Posted in Links, Software at 7:17 pm by

Once again, just link (singular):

  • USPS ‘Informed Delivery’ Is Stalker’s Dream [Krebs on Security, via Michael Tsai]

    Most of the paragraphs of the article are quotable, but here are just two, early on:

    Once signed up, a resident can view scanned images of the front of each piece of incoming mail in advance of its arrival. Unfortunately, because of the weak KBA questions (provided by recently-breached big-three credit bureau Equifax, no less) stalkers, jilted ex-partners, and private investigators also can see who you’re communicating with via the Postal mail.

    Perhaps this wouldn’t be such a big deal if the USPS notified residents by snail mail when someone signs up for the service at their address, but it doesn’t.

    The good news is that the Postal Service is planning on making a few changes to (barely) improve security—debuting in January 2018. The Krebs exposé reminds me that, in addition to general QA on any sort of project, it is imperative these days also to have security and privacy reviews (probably at several points during the design and implementation phases) on nearly everything.