Finding the right Twitter client

Twhirl Twitter client
Twhirl Twitter client

When I first started using Twitter on Sunday 27 January 2008 I very quickly decided that I wanted to use a desktop client rather than log in to the website every time I wanted to make an update or read what other people had written.

I was used to other social media clients, such as Windows Live Messenger. I liked the convenience, and I had the desktop space to accommodate it with two monitors at home and three in the office.

I quickly selected the Twhirl desktop client from Seesmic as my client of choice. It ran using the Adobe AIR framework so was quick and easy to install and for a single Twitter account user it gave me a really simple way to both read and post updates.

Every now and then I’d scan the horizon to see what else was out there but I kept returning to Twhirl. There was a simplicity about it and it was compact.  I could tuck it into a corner of my screen and work around it, see:

Twhirl on the desktop

I also liked the tab-like buttons across the bottom of the user-interface to switch between my main Twitter stream, replies, direct messages, favourites, etc.

What Twhirl wasn’t so hot on though was multiple accounts. While it did support them you either had to switch between one and the other or open two (or more) concurrent windows side-by-side, which made it somewhat less compact.


TweetDeck Desktop for Windows
TweetDeck Desktop for Windows

I tried TweetDeck shortly after it first launched and I have to be honest, at the time I really didn’t like it. A few more versions down the line and I switched to TweetDeck Desktop right about the time that Seesmic stopped supporting Twhirl. It seemed like a good time to make the transition.

Also we’d just started using the new University of St Andrews web team account @stawebteam and I wanted to be able to use one client for multiple accounts, in rather a less clunky way than Twhirl offered.

Over the last couple of years TweetDeck have added more and more features: support for Facebook, MySpace, LinkedIn, GoogleBuzz and Foursquare. You can now view YouTube videos and TwitPic photos within TweetDeck (rather than being punted out to your browser to view them). They’ve kept up-to-date with Twitter’s API twists and turns: lists, retweet changes, requests-per-hour, scheduling updates, etc.

TweetDeck is also now available on the iPhone and iPad, on Android, and as an extension for Google Chrome.

It’s all very impressive stuff, but the truth is I don’t want more features I just want a better user-interface. I want a user interface that I can customize to the way that suits the way that I work. And TweetDeck just doesn’t offer me that.


My first gripe is navigation. In TweetDeck I get columns. Lots and lots and lots of columns. I have two ways to navigate:

  1. Horizontal scrollbar
  2. A group of blocks in the centre of the window which represent each of the columns.
Navigation options between columns using TweetDeck
Navigation options between columns using TweetDeck

The scrollbar is fiddly. The blocks are even more so. I either need to have a photographic memory to remember what each of my 12 columns are, or I need to slowly hover above each block to reveal the tool-tip to identify each of the columns.


My second gripe is layout and it begins in exactly the same way as my first gripe: In TweetDeck I get columns. Lots and lots and lots of columns. And that’s all. I can’t stack the columns, I can’t vary the width of the columns: two wider columns and two thinner, for example.

While I do get a neat, single-column view—similar to Twhirl—as soon as I maximize TweetDeck it all becomes a bit unmanageable thanks to the poor navigation options (see above).

Multiple accounts

While TweetDeck does allow me to manage multiple accounts in a more integrated way my main gripe is…well, there are a lot of columns (see above) I can’t quickly distinguish the columns from one another. There’s a lot of horizontal scrolling (see above).


That’s when I discovered Sobees Desktop for Windows which offers me:

  • Multi-tabbed interface
  • Multiple layout options
Sobees social media client for Windows
Sobees social media client for Windows

As you can see from the screenshot on the left, Sobees gives me the compact, single-column view that I really like but down the left-hand side I get the tabbed-access to home, replies, direct messages, favourites, etc. that I got with Twhirl.

Then in this layout along the top I’ve got tabs for the various Twitter accounts that I manage.

Having my accounts compartmentalized in such a way really works for me.

And Sobees doesn’t just support Twitter, it will also connect to Facebook, LinkedIn, MySpace, RSS and (oddly) the New York Times.

I’ve found the RSS feed option to be particularly useful.

Reordering how I organize my columns is simply a matter of drag-and-drop:

Reordering a layout in Sobees
Reordering a layout in Sobees

I used Sobees exclusively for about a month a couple of years ago just to see how it fared against TweetDeck…it was slow. Really slow: to start-up, to update, and every now and then all my data would disappear completely requiring me to ‘bounce’ it (switch it off and switch it back on again).

I keep going back to Sobees every now and again, but it never lasts. I still keep going back to using TweetDeck even though the layout and navigation issues drive me mad. The main reasons: speed and reliability, with extra features coming a close third.

moTweets for Windows Mobile

moTweets for Windows Mobile
moTweets for Windows Mobile

That said, more and more, I’m using moTweets for Windows Mobile / Windows Phone. It handles multiple-accounts effortlessly and has a very simple user interface that I can use with one hand.

Desktop application designers take heed: mobile devices are offering the simplicity and focus that your users appreciate. But maybe that’s the topic of a future post.


For my needs TweetDeck still has the edge, although the user-interface drives me nuts. I really, really wish TweetDeck offered tabs and the ability to stack columns like Sobees does.

That said, I love the simplicity of moTweets for Windows Mobile. It’s so tactile and allows me to switch between views and accounts very quickly, and very simply.  Something that TweetDeck falls short on delivering.

You may have noticed that I haven’t once mentioned Seesmic Desktop. That’s because I tried it. And uninstalled it. Maybe it’s time to give it another whirl. (Not Twhirl, they’ve stopped supporting that.)

Blueprint CSS v.1.0 cheat sheet

Blueprint CSS 1.0 cheat sheet

This afternoon I published my Blueprint CSS v.1.0 cheat sheet, a handy guide to all the classes used in the Blueprint CSS framework.

I even got a mention on the official Blueprint CSS Twitter account, which was kind:

Announcement about the latest cheat sheet on the Blueprint CSS Twitter account
Announcement about the latest cheat sheet on the Blueprint CSS Twitter account

The cheat sheet is released under a Creative Commons license, allowing you to adapt the work so long as I’m attributed. The file is available in PDF and Microsoft Publisher 2007/2010 (source copy) formats, as well as on Scribd.

VisualSVN Server for Windows

VisualSVN Server Standard edition
VisualSVN Server Standard Edition

Having been using Subversion (SVN) for file version control at work for the last couple of years I really wanted to start using it at home for my own development projects. However, in my experience, it’s not exactly the easiest application to install if you don’t have much experience with SVN.

I was about to give up when I discovered VisualSVN Server for Windows which allows you to quickly and easily install a fully-functional Subversion server on your PC.


Installation was as simple as downloading a Windows .msi file and following the on-screen installation instructions. The installation file is modest too, at just over 4 MB.

During the installation process you are invited to specify where you would like to store your code repositories. The recommendation was to leave it to the default value (C:\Repositories) but I’ve stored my repositories on a separate partition so that they are not lost if I need to reinstall Windows on C.

You also have an option to change the port that VisualSVN is installed on, which is important if you’re running any other kind of Web server on your PC, such as XAMPP.

VisualSVN Server Manager

One of the things that I found trickiest about installing SVN manually was the lack of graphical user interface (GUI).  I’m a Windows guy at heart: I need my little pictures!

VisualSVN Server lives up to its name by providing a GUI management console (which is a Windows MMC snap-in) which gives you access to:

  • Start and stop the server
  • Server URL (to view repository in your browser)
  • Logging information
  • User and group information
  • Repositories
  • Version information about VisualSVN

That’s the screenshot at the top of this article.

Access your repository using TortoiseSVN

Just like any other installation of SVN you can access your repository files using the TortoiseSVN client for Windows.

Access your repository via a browser

The trickiest thing that I found about trying to install SVN manually was trying to integrate the Web server features of the application so that I could view my repositories using my Web browser.

This is set-up automatically in VisualSVN Server; I’ve changed the port that I access it on because I’m running a localhost Web server for development purposes.

View of VisualSVN repository in a browser
View of VisualSVN repository in a browser


When I last reinstalled my operating system, upgrading from Windows XP to Windows 7 I did wonder if I’d get my SVN repositories back easily.

The good news is that it was simple! During the installation I told the installer to use the existing repository location and it picked up the version-controlled files already there.


If you want a really simple Subversion server for learning, testing, development then I can thoroughly recommend VisualSVN Server for Windows.

  • Follow the VisualSVN team on Twitter: @visualsvn

Differences between Blueprint CSS 0.9.1 and 1.0

Blueprint CSS

I know I’m a bit behind the times posting this given that the Blueprint CSS framework was updated to version 1.0 (from 0.9.1) on Wednesday 29 September 2010 but I’m in the process of updating my cheatsheet and I thought that someone might find the following interesting/useful.


The official changelog file included in Blueprint CSS version 1.0 gives the following brief overview of changes:

  • Added detailed explanations to core uncompressed CSS files [CMM]
  • Added .info and .alert classes to forms.css [CMM]
  • Fixed numerous bugs in forms, including the fieldset padding bug in IE6-8 [CMM]
  • Fixed specificity problems in typography.css and grid.css [CMM]
  • See Lighthouse for more bug fixes

Comparing the files for version 0.9.1 with version 1.0, however, I’ve noted the following changes in detail.


1. NEW body background

A new declaration has been added to the body rule “background: white;”.

2. NEW caption, th, td float rule

New declaration has been added to the ‘caption,th, td’ rule to prevent these elements from floating.

3. NEW :focus pseudo-class

New pseudo class to remove outlines from on-focus links.

4. CHANGE html element

The ‘html’ element has now been separated from the main reset group. ‘html’ now no longer inherits the font and vertical-align rules along with ‘div, span, object, etc.’

5. ENHANCEMENT code style

Code style on table rules has been made consistent with declarations above it, on separate lines rather than inline.

6. ENHANCEMENT comments

Three rules now have new comments.

  1. The ‘article, aside, dialog, etc.’ rule is now prefixed with a comment to explain that “this helps to make newer HTML5 elements behave like DIVs in older browers”
  2. The ‘body’ rule is now prefixed with a comment to explain that “line-height should always be unitless.”
  3. The ‘caption, th, td’ rule is now prefixed with a comment to explain that “float:none prevents the span-x classes from breaking table-cell display”.


7. NEW classes

New .left and .right classes which can be used on any element. These replace the p img.left and p img.right groupings.

8. NEW table-striping

New rules to enable table-striping, in both new and old browsers.

9. CHANGE colours

  1. Colour for ‘a:focus’ and ‘a:hover’ pseudo-selectors have changed from #000 (black) to #09f (bright blue).
  2. Colour for ‘a’ element has changed from #009 (dark blue) to #06c (bright blue).


The ‘dfn’ rule has been merged with the ‘strong’ rule as they both had only one declaration: ‘font-weight: bold’.

11. CHANGE lists

The ‘padding-left’ declaration on ‘ul’ and ‘ol’ elements is now 1.5em rather than 3.333em.

12. ENHANCEMENT comments

  1. New comment to prefix the .left/.right rules to explain that “these can be used to pull an image at the start of a paragraph, so that the text flows around it (usage: <p><img class=”left”>Text</p>)”
  2. New comment to prefix the tables rules to explain that “because of the need for padding on TH and TD, the vertical rhythm on table cells has to be 27px, instead of the standard 18px or 36px of other elements.”
  3. New comment to prefix the new rules for table-striping: “You can zebra-stripe your tables in outdated browsers by adding the class “even” to every other table row.”


13. NEW IE8 hack for fieldset and legend

IE8 has a bug whereby it doesn’t apply padding correctly on fieldsets. This hack fixes it.

14. NEW .alert and .info classes

There are now two new coloured box classes to join ‘success’, ‘error’ and ‘notice’ called ‘alert’ and ‘info’. ‘alert’ shares the same colours as ‘error’ (red) and so can be used where ‘error’ is semantically the wrong term to use. ‘info’ is blue.

15. ENHANCEMENT select rule

The ‘select’ rule has now been separated from the ‘input’ rules, presumably for semantic reasons and to make way for the new HTML5 input attributes.

16. CHANGE input rules

The input rules have been changed.  Gone are the input.checkbox and classes. There are now two HTML5 attributes: input[type=text], input[type=password].

17. ENHANCEMENT comments

  1. New comment to prefix the label, fieldset and legend rules to introduce a new IE8 hack: “A special hack is included for IE8 since it does not apply padding correctly on fieldsets”
  2. New comment to prefix input elements with new HTML5 attributes: “Attribute selectors are used to differentiate the different types of input elements, but to support old browsers, you will have to add classes for each one. “.title” simply creates a large text field, this is purely for looks.”
  3. New comment to prefix ‘form.inline’ rules: “This is to be used on forms where a variety of elements are placed side-by-side. Use the p tag to denote a line.”


18. ENHANCEMENT !important declarations

‘!important’ declarations have been placed after every ‘input-span-x’ rule (where x = 1-24).

19. CHANGE change of border color

The border colour on both ‘.border’ and ‘.colborder’ classes has changed from #eee (light grey) to #ddd (mid-grey).

20. FIX .push class float

The float declaration on all the .push-x (where x = 1-24) rules has been changed from ‘float: right;’ to ‘float: left;’

21. ENHANCEMENT .prepend-top and .append-bottom

‘div.prepend-top’ and ‘div.append-bottom’ selectors have been added to the ‘.prepend-top’ and ‘.append-bottom’ selectors, presumably to make these rules more specific.

22. CHANGE height of hr element

The height of the horizontal rule (‘hr’) element has been changed from .1em to 1px.


23. FIX legend

There is a new ‘legend’ selector that fixes issues with margins on legends within fieldsets in IE.

24. FIX label

There is a new ‘label’ selector which corrects how labels behave in IE6 and IE7.

25. DELETED form.inline label

The rule for ‘form.inline label’ has now been deleted in light of the new ‘label’ fix (above).


26. ENHANCEMENT comment

There is now a comment to prefix the ‘:link:after, a:visited:after’ selectors which explains “This has been the source of many questions in the past. This snippet of CSS appends the URL of each link within the text. The idea is that users printing your webpage will want to know the URLs they go to. If you want to remove this functionality, comment out this snippet and make sure to re-compress your files.”

Isaac and Jane are home

Baby Isaac asleep in his cot in the living room
Baby Isaac asleep in his cot in the living room

This morning I dropped off Reuben and Joshua at their grannie’s house, the plan being that I’d drive up to Dundee to the hospital to spend some time with Jane and Isaac before grannie brought them up later at visiting time.

I arrived on the ward just after 11:00 to discover that they were keen that Jane gets home today. Quick change of plan, followed by a long six hours wait until various physical checks to Isaac and Jane and whatever items of paper work were completed.

We drove away from Ninewells Hospital at 16:45 feeling decidedly less nervous than when we had made the same journey 26 months before. This time we didn’t even stop in St Andrews to see if he was breathing!

Thank you

Thank you so much to everyone who has sent, emailed, Tweeted, ‘Facebooked’, voice mailed messages of congratulations, and for everyone who has prayed for us and kept us in their thoughts. We love you all. x