Tweet Talk is a browser extension that enhances the news reading experience. Designed to give the reader “more,” Tweet Talk allows readers, looking at an online article, to expand their knowledge of its topic by providing expert opinions, links to related articles, and information from experts talking about that topic instantaneously.
Who wants to use Tweet Talk?
Tweet Talk was designed to appeal to a large audience and subsequently can be used by a multitude of people for a variety of reasons.
It could be used by a student as a research tool to gain a wider perspective on a topic, or by a sports enthusiast looking for varying viewpoints on the last night’s game, or by a businessman looking to see what experts are saying about yesterday’s stock market activity. The possibilities for using Tweet Talk are endless, but the goal is the same: to instantaneously provide more information and opinions from the people who know best.
Using Tweet Talk
Our usability goal for Tweet Talk was that it require minimal effort on the part of the user. In order to meet this goal, we created a very simple, clean interface that does most of the work for the user.
To use Tweet Talk, the user needs to download the extension from the Google Chrome app store, available at bit.ly/tweettalk. While reading an article, the user activates Tweet Talk by simply clicking on the extension icon in their menu bar. The extension instantly presents the user with tweets related to the article from experts in the field.
If the user is curious about an expert they don’t see in the list of returned tweets, they have the option to search for that expert, or anyone else for that matter, by entering their Twitter handle into the search bar provided.
How it Works
- Server Side: Node.js
- Backend: Firebase
Otherwise, Alchemy API pulls the content of the Web page and designates a list of keywords, listed in terms of their relevance to the article. Then eight queries, using the top eight keywords, are used to pull tweets with Twitter’s Streaming API. The optional parameter ‘result-type’ is set as ‘popular’ to retrieve tweets which Twitter thinks to be important, based on number of retweets and ‘favorites’. Once the tweets are pulled, they are immediately sent to a filtering process. First, we check if the tweet is from an organization by comparing names with a blacklist of organization-related words. The function also checks if the tweet is from someone with less than 10,000 followers or more than 1 million followers; the intent of this filter is to identify experts but not celebrities. All of the tweets that pass those tests are then ranked based on their relevance to the article. We assign a weight based on several factors: the number of matching (non-stop listed) strings between the article and the tweet; the placement of each matching string (the higher the string, the more important it is); and the relevance value, between 0.0 and 1.0, assigned by Alchemy API. We also assign more weight for tweets from a news correspondent or ambassador, who tend to be more knowledgeable about their area of focus. Finally, the tweets are sorted by relevance and stored in Firebase along with the article’s url, and then returned to the front end to be displayed to the user.
When the user wants to search for relevant tweets from a particular expert, the user enters the Twitter handle of the expert in the search bar topping the extension. An AJAX call is made to the ‘expertSearch’ RESTFul method declared in the Node.js server. The same mechanism uses Alchemy API to determine and rank keywords of the article. Then the tweets of the particular expert are retrieved using Twitter’s User Stream API. The resulting tweets then follow the same process as above to be filtered and ranked. After the tweets are ranked, they are returned in order of relevance to the extension to be displayed.
We also want Tweet Talk’s searching functionality to allow Twitter names, rather than only handles, as well as an improved ability to display more than one relevant tweet from a searched expert.
To improve the user experience, it would be helpful to add the ability to create a custom list of experts — to be checked any time the extension is used on an article — or the ability to ‘favorite’ experts so they are more prominent in the list for all users.
For users unfazed by the friction of signing in, offering the tweets in a more Twitter-like format, with options to ‘favorite’, ‘reply’, or ‘follow’ the expert from within the extension, would create a much more interactive extension.
Finally, although we implemented a filter that catches many, if not most, organizations and non-experts, there is always room for improvement. Certain organizations are still missed and sometimes tweets appear from experts on topics other than the one given. Perhaps using Wikipedia to ascertain the background of the expert could be used as an alternative to finding non-expert indicators in the tweets.