While I initially chortled and flung about derogatory “twits!” when talking about people who were lame enough to use Twitter in its early days, I’ve done a complete 180 and become one of those rabid Twitter users who is constantly reading or posting to the super-popular microblogging service. Not only do I have a regular personal account, @trevorbramble, but one for each of my blogs and/or active projects. About five exist at the moment, I think.
Managing all of these accounts is tedious work, either spreading the logins across different browsers and browser profiles, or juggling logins within a single browser, any way you do it is boring. There is one client, to my knowledge, that handles multiple accounts, and that’s TweetDeck. TweetDeck is pretty good at doing that, but it’s got plenty of problems. It’s an Adobe AIR app, so I had to go through some extra steps to get it working on my 64-bit Linux installation. It has no way to search or directly pull up a user (they have to be mentioned in a tweet). And while its column syncing feature sounded nice, I couldn’t get it to work between my desktop and iPhone.
The final straw dropped when I recently switched from Firefox to Chromium for my primary browser (I still use Firefox for development) and found that TweetDeck was hard-coded to use Firefox regardless of what I specify in system preferences. This is just unacceptable, so I decided it was time to make my own Twitter client.
After digging through the API documentation a bit, reading about oAuth, and otherwise examining the viability of actually executing on the idea, I settled on a name and started sketching out an interface using an app I recently came across in Google Reader (via Delicious, I think) called MockFlow. It is an absolutely fantastic tool for generating interface mockups, and I highly recommend it. Easier by far than working things out on paper (scribble, erase, scribble, scan, amplify contrast, email…).

After I felt good enough about how things were laid out I started working up the interface prototype in HTML (& CSS). A few minor changes were made as the rubber hit the road, but mostly it’s working out just as I’ve envisioned it. I considered, briefly, doing this in HTML5, but I think I’d rather have an application that people can use this year. Here’s what it looks like after a couple of hours on the mockup and a couple more on the implementation.

After I nail down a couple more things in the interface I’m going to start on the server-side prototype. This is going to be a fast and loose sort of thing just to make sure my ideas are workable (I have a few innovations in mind as well) after which I’ll come back to it with a framework and structured approach which will become the public beta.
After development settles down on the web app I’ll probably look at developing platform-specific apps that hook into the service, mostly for mobile phone users (Android & iPhone) but possibly also PC users, via GTK to make it available for all 3 major operating systems.
Keep an eye on HYDRAtweet.com, and of course, follow @hydratweetapp on Twitter for more info!
Anyway, back to hacking.