Did I ever tell you the story about user interfaces, Twitter, open-source, Greasemonkey, Firefox, Creative Commons, and desks pushed together in a group?
I use Twitter, but sometimes it is a day or two between my sessions. One thing that always bothers me about the user interface at Twitter is that it makes it difficult to read the tweets in chronological order from where I left off last time. Since Twitter pages are arranged in reverse chronological order, that means I have to go back a few pages to see those tweets. My frustration with the UI at Twitter is that the “older” and “newer” buttons to navigate back in the pages is at the BOTTOM of the page. So, it is a minor pain to scroll to the bottom of every page to go back, then repeat that process as many times as needed to get back far enough in my tweets to start reading again.


Though complaining is fun for me (ask my colleagues), I decided to submit a suggestion to the Twitter comment page on adding “older” and “newer” navigation buttons to the top of the page. I got a nice “thanks” response and that they would pass the suggestion on to the development team. While I’ve been waiting to see if that suggestion gets incorporated, something interesting has happened that makes it irrelevant in a way.
In talking with Martha and Patrick about my Twitter request, Patrick suggests “why not a Greasemonkey script?” If you are unaware, Greasemonkey is a Firefox add-on that allows folks to write JavaScript to change the content on a web page – for example, adding “older” and “newer” buttons to the top of the Twitter page. Now, this change doesn’t happen on the central Twitter page for everyone else in the world, just those that are using Firefox with Greasemonkey and the script installed that adds the buttons to the Twitter page.
So, the search was on – looking for a Greasemonkey script that someone may have already written that addresses my needs – surely I’m not the only one who has thought of this brilliant user interface addition for Twitter.
After a short Google search on “Greasemonkey Twitter navigation” I found Twitter PowerToys on UserScripts.org, a script written by Manuel Gonzalez Noriega. The description was “Duplicates twitter navigation at the top of the status box + adds a “send personal message” link besides every user name on the timeline.” Bingo! (or, as some in my shop say, “Disco!”).
So after downloading the script and installing it, I was disappointed to discover that the Greasemonkey script didn’t work – it seems that script was created this past summer, but since then Twitter has changed the UI on their pages, so though the script was creating a second set of buttons, it was still located at the bottom of the page, just above the original buttons. So, what seeming was in my grasp was taken away – but only temporarily.
Did I ever tell you how cool it is to have a programmer working right across the desk from me? Patrick was able to open the Greasemonkey script, make a tweak or two, and then send me the updated file. I loaded it, cleared the cache from my Firefox browser, navigated to Twitter, and basked in the glow of navigation buttons at the top of the page.

The story doesn’t end there.
Now, I can also turn around and share this script with you – you too can have navigation buttons at the top of the Twitter page. You see, Manuel Gonzalez Noriega, the original author of the Greasemonkey script published it under a Creative Commons Attribution license. This means, he gives us permission to modify his original script and offer it to others by simply giving him his due credit for creating the original script. That said, you can download and use it yourself.
So, thanks Manuel, Patrick, Creative Commons, Greasemonkey, Firefox, and my colleagues who don’t seem to mind having all of our desks pushed together in the middle of the room.
I love it when a plan comes together.