TrackBack was first released in August 2002 by the creators of MovableType, and since then, the product has gained popularity among the blogging community (or "blogosphere"). TrackBack is a relatively new framework for peer-to-peer communication and notifications between Websites. With TrackBack, sites can communicate about similar interests and resources.
Although originally developed as a blogger-only tool, TrackBack has recently started to enjoy popularity among regular content sites, such as O’Reilly. In this article, I’ll give you a short description of the possible uses of TrackBack, how it works (I won’t actually dive into the code), the advantages and disadvantages of the product, and finally a conclusion, including resources that can help you to implement TrackBack in your own sites.
What is TrackBack?
TrackBack is an API that enables Websites to communicate about similar interests and resources.
Let’s imagine you run a Weblog, and you write an interesting post. Your friend, who also has a blog, wants to comment on your post. Instead of him making the comment within your blog, he simply posts the comments on his own Weblog and sends a TrackBack "ping" to your site. You are then be notified of the comments on your entry, and surf off to check out your friend’s post. You may then decide to comment on your friend’s comments. The discussion goes on. As such, TrackBack can be used as a discussion board, between different Websites and people.
A few examples of TrackBack being used in the way I’ve just described are:
Another possible use for the software is to set up repositories of related content. Suppose you’re a PHP fan, and you want to start a new site about PHP. Instead of having people add content to your site, you could simply ask people to send a "ping" to your Website every time they have something to say about PHP.
A few examples of TrackBack repositories are:
- http://www.blogroots.com/blogpopuli.blog (a blogging repository)
- http://www.jacobsen.no/books/ (a book review repository)
- http://www.theredkitchen.net/ (a cooking recipe repository)
These are just a couple of scenarios â€“ there are many more uses of TrackBack, and, combined with other technologies such as RSS, it can be an excellent means of communication between sites.
TrackBack is currently the only framework that provides the functionality I just described. As of yet, no other API provides you with the same or better capabilities offered by TrackBack. Certain parties are considering creating a similar system, but until such time as a new system is developed, TrackBack will continue to be the only product in its class.
How Does TrackBack Work?
TrackBack functions by sending "pings", which are standard HTTP calls. There are two parts to the TrackBack process: the client and the server. The client is usually your software or CMS (for example, MovableType). The server is on the receiving end; though it can be anything, in most cases, it’s an ASP/PHP/Perl script.
To send a ping, your client makes a standard HTTP request to the server. It then receives a response, in XML format, from the server. You must send your ping to a particular URL that references a post, category, etc. This is called the TrackBack Ping URL. A typical TrackBack Ping URL looks like this: http://www.example.com/mt-tb.cgi/3. When implementing TrackBack on your own Website, you can use any format you like.
To send a ping, your client must send an HTTP POST request to the TrackBack URL. The content type that should be used is "application/x-www-form-urlencoded". A typical request might look like this:
As you can see, 4 parameters are possible:
- Title – (optional) – The title of your post or article.
- Excerpt – (optional) – A short excerpt or description of your post. Depending on the software, this parameter may be cropped to 255 characters (MovableType does this, for example).
- URL – The URL of your post or article. This should be a permanent link, and should not be changed at any point in the near future.
- blog_name – (optional) – The name of your blog or site.
After your ping has been sent to the server, you will receive a response, in XML format, from the server. The response to a successful ping will look like this:
<?xml version="1.0" encoding="iso-8859-1"?>
If your ping failed, the response will look like this:
<?xml version="1.0" encoding="iso-8859-1"?>
<message>The error message</message>
The Pros And Cons
There are several advantages and disadvantages to TrackBack. My personal opinion is that the advantages far outweigh the disadvantages, but judge for yourself:
- It’s very easy to let others know about interesting content you’ve found.
- You can use your own Weblog or Website to make comments on articles or posts.
- TrackBack is really a connection to other Websites. It will allow you to talk to other people without needing to register on discussion boards, mailing lists, etc.
- TrackBack can actually be very useful in meeting new people. Since I’ve been using TrackBack myself, I’ve met several new people through the system.
- The TrackBack system, like any other online communications model, is extremely vulnerable to spam. Currently there are no real solutions to combat this problem.
- If you aren’t careful, you may leak certain things that should have been kept confidential (read jeremy.zawodny.com for more information).
- The product’s uptake has been slow and, at the moment, not enough sites are using it to make the product absolutely indispensable. However, as more sites are now beginning to implement TrackBack, it will soon become truly useful.
- Empty TrackBack pages (usually generated by MovableType) have caused great problems for Google, as can be read here and here . This problem arises from the way TrackBack is implemented — it’s not a core flaw in TrackBack itself.
These are the main pros and cons of the product. The main advantage of TrackBack lies in the power it provides in terms of communication with others — you can communicate without having to leave your own site or Weblog. In my personal opinion, this single advantage makes it very worthy of implementation on your own sites!
Although TrackBack is still a relatively new system, already it’s very promising. The product’s potential, as more and more Websites catch on, is huge.
TrackBack allows you easily to reference external Websites, articles, and other content. Because TrackBack uses standard HTTP POST requests, it can be implemented in any programming language, on any server.
The TrackBack system has several advantages, and disadvantages, but in my personal opinion, the pros far outweigh the cons. The direct communication TrackBack provides is a huge benefit to any community-oriented site.
I haven’t personally implemented TrackBack on my own sites yet, but I have been using it for the last few months on my Weblog. So far, the experience has been very positive. I’ve met several new people through TrackBack, and I’ve discovered quite a few of interesting articles that I otherwise wouldn’t have read.
Here are a few resources to get you started implementing TrackBack on your own Website. You don’t need to worry about any licensing schemes, because TrackBack is available free!
- TrackBack Technical Specification
- Standalone TrackBack Implementation (tar.gz file)
- TrackBack Development
- TrackBack Module for RSS 1.0/2.0
- Auto-Discovery of TrackBack Ping URL
Jump Start Git, 2nd Edition
Visual Studio Code: End-to-End Editing and Debugging Tools for Web Developers
Form Design Patterns