My Twitter client, Halfwit (please excuse the placeholder home page), is really coming along. Already it’s up to version 0.0.0.23, and has some great new features.

The “Home” page now shows your normal timeline of followers, along with any tweets mentioning you and any direct messages sent to you. It also includes an optional search for a phrase you enter on the Options page. Here’s my Home page which incorporates tweets with the “#nocleanfeed” hashtag. You’ll notice that the “search result” tweets are highlighted in light pink rather than the standard blue:

Home Timeline with Search Results

This should prove very useful when tracking events like Code Camp Oz, coming up in a couple of months.

Halfwit also has a feature that I’m calling “dynamic column layout”. Essentially, you set an “optimum width” for your tweets on the Options page, and as you widen the window, Halfwit will detect whether there’s room for another column of tweets. Here’s the same view as before, widened:

Two-column Layout

As you can see, I’m getting nearly twice as many tweets on the screen at once. There was a trade-off in introducing this feature: The use of WPF’s WrapPanel as the underlying panel for the ListBox means that the ListBox isn’t “virtualized” anymore. It has to render every item whether or not it’s visible on screen. This has increased the memory usage a bit but doesn’t seem to have impacted on performance much, so I think it was worth it.

There are still a few little glitches to work out. I’m keeping a To-Do list in Google Wave, so if you’re interested in being added to that, add me to your Wave contact list and let me know. I’m mabsterama –at- googlewave.com.

More Halfwit posts to come – I’m keen to talk about the architectural decisions I’ve made and see if I can get some advice around memory usage.