Are Twitter Clients the new Hello World app?
There’s been a bit of talk on Twitter recently about the various twitter clients that exist, with more being created practically every day. One view was that everybody is trying to create the ultimate twitter client.
Certainly there are a lot of new twitter client apps being made, some with lofty aspirations, but more importantly I see a twitter client as the new "Hello World" for desktop applications. And I think it’s a great choice. The days of a Hello World application consisting of a Console.WriteLine are long past. To dig in and learn something new, you have to implement something with at least a little substance to it.
A twitter client has the key components one needs when learning a new technology:
In terms of base functionality, a twitter client has a very simple task. Heck, Twitter itself is built around the simple premise of asking "What are you doing right now?" and letting you answer. A twitter client, at it’s core, needs to do two things: display your timeline and let you update your "status". Simple as that.
Easy and intuitive API
Twitter’s API is easy. Really easy. When you’re writing a real-world Hello World application, you want to focus on what you’re trying to learn, which is the technology, and not a complex API or other things that simply distract.
Like most applications that have a user interface (and even those that don’t), there’s always room for choices. Depending on what you’re trying to learn (I’m a UI guy) you have different approaches you can take. If you’re learning WinForms or WPF, you can play with different presentation models, learning how to accomplish what you want. If you’re learning deeper back-end programming, you could play with the windows services APIs, or WCF, or whatever. It’s flexible.
Room for expansion
A twitter client can move beyond the basics I mentioned above and incorporate more features, with the limit practically being your imagination. Just look at twittervision.
My friend Mike has been diving head first into .NET (he’s an MFC guru), and decided to create a great twitter client (Bitter) not to create the ultimate one, but to learn the technology. Which is good, because an ultimate twitter client has already been created. It’s called Twitterific. 🙂