Twitter’s most urgently needed new feature: universal read/unread status for tweets

As you might probably have guessed from other articles on this site, I am a big fan of Twitter. I love its real-time nature (giving it a unique sense of urgency), its limited feature set (allowing for quick, easy and hardly interrupting use) and the loose nature of most of its users (resulting in rather persional opinions and observations).

Due to Twitter’s very basic core features (viewing a list of short messages and posting them yourself), the service easily lends itself for usage on a wide variety of devices. It is probably the social network service with the highest number of mobile users. Being out and about, sharing a moment via a shortly tweet, perhaps including a picture or a map-location, is rather effortless.

Most people also use a Twitter client on their desktop PC when they’re working on one, as reaching for your smartphone when already connected to the Internet using the device in front of you seems rather illogical. In fact, it’s not uncommon to add a laptop computer and an iPad to the mix of Twitter-capable devices as well.

The Twitter clients I use

Personally, I use Twitter for iPhone, formerly called Tweetie, on my phone. Even from its earliest incarnations, I have considered it the most elegantly designed iPhone app ever. The app beatifully uses Apple’s iPhone UI conventions, and subtly enhances on this. The “pull to refresh” mechanism feels so natural and intuitive, that one can only pray that Apple and Twitter can reach for an agreement on licensing this technology. iPhone’s Mail app screams for this feature.

On the Mac, my Twitter client of choice is Nambu. As much as I would have loved that Twitter for iPhone’s creator Loren Britcher would have continued his work on Tweetie for Mac, the project seemed to have come to a halt after Twitter’s aquisition. On my Mac, I very much appreciate the uniformity between apps that conform to Apple’s UI guidelines (yes, I am aware of the irony that Apple’s own iLife apps usually abandon these rules where-ever possible). It is for this reason alone that I appreciate Nambu. Its window features a familiar “source list” on the left side of the window, similar to the ones in iTunes or the Finder. It gives quick access to your @-mentions, direct messages and sent tweets, for example. Apart from this Nambu features great picture-service integration, flexible link shortening, and real-time translation. The program is free, but as with all one-man software companies, there is no guarantee of future development. Better support for location features would be a welcome addition at this point. I have Nambu installed on both my iMac and my MacBook Air.

On the iPad, I also use the official Twitter application. Although the app is offered as a universal download containing both the iPhone and the iPad versions, both apps look rather different. Again, Loren Britcher has taken the iPad UI one step further, and came up with sliding panels that can contain information about a user, the contents of a web link or an included image. By swiping the pane in and out, both your timeline as well as a tweet’s linked contents can be visible. A clever way of working around the iPad’s lack of a windowing interface.

The web site

Even though a dedicated client app is usually the best approach for accessing a service like twitter (due to for example its higher speed, less network loading or the ability to cache a lot of data), these apps -especially the mobile versions- need to keep their feature set limited to allow for easy operation. Most day-to-day features can be accessed from most apps, however there might be cases where you still want to refer to Twitter’s official web interface. has recently been redesigned and is being refered to by the company as “New Twitter”. The new web site’s design clearly took a page from the iPad app’s book. The site features two panes which, albeit the fact that they don’t move, also show a timeline on the left, and details on the right. It now also features excellent integration with picture and video services, eliminating the need to click to a different web site.

The most likely case you want to visit the Twitter site is when you want to check out someone on the service who’s new to you. Say you saw an interesting tweet being retweeted by one of your friends. You might want to check out who this person is, what their bio says, what other things she has tweeted about recently, or who she follows or is following. Doing all of this quickly in a dedicated Twitter app would probably be too much of a hassle.

I find myself looking up stuff on regularly. Thankfully Nambu features an easy “view on” option for every tweet, making this process rather easy.

The problem of New Tweets

It’s very easy to use multiple devices and client apps with one Twitter account. Just sign in, and your timeline containing all of your tweets and all your sent and received instant messages will be loaded in the app. Twitter has been designed for this, and using multiple apps will cause no conflicts. Tweets or direct messages you have sent in one app naturally show up just fine in all the others.

However, there is one very obvious feature that is severly lacking as of now. Twitter has no unified way of remembering what tweets in your timeline you have already seen on one of your devices, resulting in the fact that every Twitter client on every device will mark all tweets as new, relative to the time you last used that app.

If, like me, you use a couple of devices to check your Twitter time line during the day, or occasionally use the Twitter web site, this becomes a big annoyance. Each time you open a Twitter app, you have to scan trough all of the “new” messages to see which ones are really new to you. Only to find out that once you return from say your smartphone to your desktop, these tweets also show up as new on the screen, together with a couple of really new tweets.

You get the idea.

This completely undermines the idea of Twitter, which is quick and easy access to new, real-time information.

How to add a “read status” to Twitter

If you are using an IMAP or Exchange-based e-mail service (like Gmail), you are probably using their benefits even though you might not be aware of them. One of the benefits of these e-mail systems compared to the older POP3-based services, is a server-based storage of message statuses. A message is flagged new or read on the server. Once you marked an e-mail as read on your desktop, it will also show up as read on your smartphone, even if it had not downloaded that particular message yet.

Why not use a similar approach with Twitter, and store the status of the last downloaded tweet by a Twitter app on the server itself, so another app can be aware of this information when it loads the timeline to present these read tweets accordingly.

Of course, there is one important difference compared to e-mail clients in this regard. In an e-mail client, all new messages keep their status as unread, until a user deliberatly opens one. A Twitter client typically displays all new tweets in a row, there is no need for the user to “open” one to see its contents. When a Twitter client loads the list of new tweets, this would not necessarily mean that the user has read them all.

In order to circumvent this, the app should take a pragmatic stance as to what tweets should be considered read. For example only tweets that have been “in focus” on the user’s display are considered read, and the tweets that the user still has to read by scrolling up are marked as unread for that time being.

Perhaps this read/unread behaviour can be tied to a user definable setting, although I am aware that this adds additional complexity. This added complexity, combined with the fact that many Twitter clients may implement the feature differently, is probably the reason Twitter hasn’t added this feature yet. Perhaps they feel that it would compromise Twitter’s basic ease of use.

Universal status between apps

Some developers have tried to overcome this limitation of Twitter by implementing some sort of read/unread syncing between their desktop and mobile apps. This might seem like a solution, but it ties the user to the apps of one creator on all of his devices (and thereby defies the benefit of being able to use any client by simply logging in, as explained above). And even if you stick to the same apps on all of your devices, there would still be no integration with the website, which would always show all of your tweets without any indication of whether they are new to you or not.

The most obvious thing would be for Twitter to pick up on fixing this gloring hole in its otherwise rather perfect system, by adding a server based status of new tweets to its service.

Thinking of all the iPads that must have been unwrapped under Christmas trees around the world last week, now would be a better time than ever.

The author can be reached on Twitter at @JorgK