So today I was talking (ranting?) to a friend about the current state of Twitter clients on the iPhone and the abysmal state of Twitter clients on the desktop. I know what you're saying, "Surely out of the 100s? 1000s? of twitter clients out there you could find one of them that works for you?" Sadly the answer for me has so far been no. Of course this isn't for lack of having tried just about every single twitter client that runs on the Mac. As a result I figured I'd recap my quest for the perfect interface to Twitter and in the process highlight a few of the things that I really love about the Mac platform.
But before I go on my rant about the state of desktop clients let me say some good things about the state of iPhone Twitter clients, in particular one known as Tweetie. Tweetie is new on the iPhone Twitter scene but it is a serious contender right out of the gate and my favorite client by far. It is $2.99 from the iTunes Store and has just about every feature I could ask for in a Twitter client. Let me highlight a few of my favorite features you don't see very often in iPhone clients. First off I really like the UI look at some of the screenshots and I think you'll agree it has a very "iPhone-esque UI". It is easy to "retweet", send/view replies and direct messages, post an image to twitpic and update your Twitter location. Last but certainly not least is the ability to access trends from search.twitter.com as well as perform and save custom searches, very nice. In my opinion all of these features combine to make Tweetie the Twitter client of choice on the iPhone and particularly for power-users (addicts?).
As I often lament I just wish there were a desktop/Mac Twitter client half as good as Tweetie is on the iPhone. Trust me I've tried just about all of the clients that will actually run on OSX: Twhirl, Twitterific, Tweetdeck, Spaz, to name a few (by the way who does name these things?). What I've found for the most part is that the clients packed with features tend to have horrible UIs and the clients with tolerable UIs tend to sacrifice UI design. Of course on the one hand I suppose that this is the eternal paradox of software design. One would think given I work in the field I might keep that in mind but hey I can't be on the clock 24/7.
Alright so here's my Twitter recipe:
- One part Twitter web interface.
- One part Fluid Site Specific Browser.
- One part Endless Tweets userscript.
- One part Textexpander.
- One part Twitterific.
- One part Growl.
- Ten point five parts of Mac OS X.
Create a new SSB in fluid with the Twitter.com homepage. Season the SSB with the Endless Tweets userscript if desired, this marks tweets since the previous reload as "read." Next install Twitterific and configure it to display Growl notifications for your Twitter account and turn off the option to display the window. The effect of this is that you simply get Growl notifications of your Twitter. This was the easiest way I could find to do this and still use the Twitter.com homepage. What I've found is that usually the web interface is the most reliable and you don't have to worry about API changes.
For added usability and flavor use Textexpander to create Twitter related keyboard macros as needed. Textexpander is a Mac preference pane and probably no stranger to seasoned Mac users that allows you to create "snippets" or keyboard macros. For example if I type something like ".bobma" I could then have Textexpander replace that with "Barack Obama." In the context of Twitter one really handy feature is Textexpander will also run Applescripts and I have scripts setup to take the URL on the clipboard and turn it into either a TinyURL or a Bit.ly URL and paste it into my tweet. I also have macros for things like replies for common people I @reply, and for retweeting as well. I've found with these snippets I've been able to make up for many of the things I might miss from a third party client.
Combine and serve, you should end up with something like this.
I hope you've enjoyed this expose on how I interface with Twitter and by all means if you have suggestions of other was to attack the problem, clients I should try, etc. Please leave them in the comments or @ them to me at bethejustin on Twitter. Until then Tweet on!!