Feb
19th
2009
Natural Progressions and Design Decisions.
I’ve picked up working on twittle again. I heard a podcast talking about a “new” twitter client for windows built on WPF, and I decided to check it out. Blu (the client) has a lot of nice features, but it’s got enough flaws to make me want to gouge my eyes out. 1st problem, it takes up over 100mb of memory just to run. The next problem is that the window isn’t resizable. Another problem, which probably isn’t glaring to most users, is that it uses PNGs for all it’s UI chrome and animations… this is why problems #1 and #2 exist to begin with. The app just feels heavy… in an obese sort of way.
Like all things in life, having another entity doing the same thing you’re doing is only going to lead to innovation and a pursuit of making a better product. Twittle is still missing some serious features, in-line @linking to users mentioned in tweets is probably the biggest one (and the hardest to fix). What I have focused on is refining the interface to behave fluidly and without instruction.
Twittle 1.0.21 has seen HUGE improvements in the last 3 days to all aspects of the application, and it has a lot to do with competition…
- Reduced Window Border Clutter – No need to have a 7 pixel outline around the app, I also rounded the edges to give it a softer feel.
- Moved settings and refresh to be less prominent – The app auto updates itself based on what you choose and the settings window isn’t accessed often, so there is no need for these items to be at the top of the window.
- Added tabs for types of info…
- Followers is an interesting feature, I’ve never seen it done on another app, so it’s kinda cool to see who is following you, click on their latest tweet, and check them out. If you get an email that someone is following you, you can refresh and it will show them and their latest tweet.
- Search was a no-brainer and difficult to implement. The search feed is not just an XML document like the other standard feeds, but an entire Atom feed. This meant troubleshooting the best way to handle the namespace and to parse the information. It’s still spitting out HTML in areas, which seems clunky, but if I can find an HTML parser for WPF it will do all the heavy lifting for @’s and #’s.
I love the idea of being able to search for a specific word and watch the information come in. I can query “Macworld” and see all the latest news about the event. You’ll probably see twittle expand more on this issue as the app completes it’s more important goals. - Transparency effects have been refined – Specific UI elements now have a multiplier so it’s not just the entire window that goes transparent, but background elements go transparent without effecting the readability of the text. Version 1.0 essentially made the entire window transparent making the feature (and the text) unusable.
- Code cleanup – Josh has helped me a ton in trying to modularize and shrink the codebase to reuse code wherever possible. This has been great in keeping twittle’s light feel, yet styled to not be boring.
- ClickOnce – This was another great addition. ClickOnce allows people to get updates without having to “re-install” the application. This means users will always have the latest and greatest.

