What makes it interesting is the message length restriction it imposes. You have to fit you message just in 140 characters. That's even less than in a regular SMS (160 chars)! So how can that be useful in any way?
In this post I'm going to provide answers to this question. I'll also share my gripes with Twitter. Although it's quite a nice service, it does indeed have its flaws, at least from my perspective.
Overview of TwitterApparently Twitter was originally developed somewhere around 2006 and spun off as a company at 2007. Given that I'm pretty late at the game since I started tweeting just last Summer.
I'm pretty sure a technically proficient person could implement the core concepts over a weekend but I digress. :) I know there's a lot more involved in getting these kind of things done than just coding. Getting the ideas and business logic right are equally, if not even more, important as well.
MessagesAs mentioned in the intro small messages, tweets, form the core of Twitter. They make it possible to share information with other users. It is also possible to follow other users and their messages.
In addition to sharing random snippets of information you may have actual discussions with other users. You can comment on their tweets and even redirect them, retweet, to your followers. I find this quite valuable. Nothing is cooler than getting some feedback. :)
URL ShorteningSometimes the 140 character limit can be pretty bothersome. This is true especially when you want to share long links. It is quite common to use a URL shortener, such as bit.ly, to overcome this issue.
HashtagsI have noticed it's quite useful to use hashtags. They (ie. #programming) provide a mean to attach semantic metadata to your messages. This in turn makes it possible to find messages related to the specific subject without too much hassle. Sadly there does not appear to be any easy way to attach this kind of data to existing messages to help categorize them further.
ListsIn addition it's possible to group users to specific lists. As far as I know the idea of listing is to avoid information overload on your main screen where you see tweets of other people. Some people just tweet a lot so it can become a bit burdening after a while, especially if you follow a lot of people.
Additional FeaturesThere are some additional features, like tweets as SMS messages and such, but I really haven't bothered looking into those. I did try the official Twitter client available for iPad and it actually worked out pretty smoothly. Since then I've settled using Flipboard instead since it provides nice view to my Google Reader news as well.
ConclusionOverall Twitter is very simple. There's nothing complicated about the concept. It's all about just messaging. I consider it sort of a slow version of IRC.
I believe the concept is not without its faults, however. I personally would like to extend the idea a bit and take it to the next level.
How to Improve Twitter?As hinted above Twitter isn't perfect by any means. I guess whether or not you like Twitter depends a lot on the way you use it. It's current iteration might be perfect for some people. No idea really. Anyway, I'm going to go through my list of gripes next:
- No way to attach metadata to existing messages
- I think it would be really valuable if the users were able to attach hashtag kind of metadata to existing messages somehow. This would make it way easier to find interesting tweets in given subject.
- No native URL shortening
- It is always annoying to use an external service to do this. I would appreciate if the URLs pasted to tweets would get shortened automatically.
- Clunky commenting interface
- It's pretty hard to see the flow of a conversation in the official user interface of Twitter. It would be awesome to see them in a threaded manner.
- Tweeting is way too coarse
- Even though hashtags provide one way to categorise your tweets, they are inadequate. There are times when you don't want to share your tweet with all your followers. I would prefer to have multiple pipes (ie. programming, links, art, ...) in which to direct my tweets. The followers could then subscribe to those pipes should they want to see a subset of my tweets.
- No tweet queue
- There are times when I tend to tweet quite a lot in short time. This is particularly true when I'm going through my RSS feeds and find plenty of interesting stuff. I would prefer to have some way to queue and delay these kind of tweets to avoid spamming my followers.
I believe some available Twitter clients manage to solve some of these issues. I wouldn't mind if Twitter solved them in its official UI, though. :)