Simple answer: I use trakt.tv.
Trakt is a website that allows you to…well… track all the TV shows you’re keeping up with. As an additional feature, it also allows you to track movies you’ve watched and own. That is the essence of the website. In addition to the general tracking features, it also allows you to check what movies and shows are trending. It also offers recommendations (based on your watched list) for movies and shows you might like.
I didn’t always use Trakt. I used to use a site called EpisodeCalendar. While I do admit this site is easier to use and learn, there is a problem. There will be an incoming paywall at some point in time. At the time of this post, the site says that once the changes go live, you must purchase a “premium subscription” if you would like to track more than 20 shows, which is what I do. Even though the price is extremely reasonable (a mere $1 a month), I take issue with the principle of the implementation.
I was a user before this policy came out. Premium offered you perks like custom lists only. At that time, I was tracking close to 35 TV shows. After this implementation, which will occur at an unknown time, if I choose to not upgrade to a premium, I lose tracking on 15 of those shows. I’d rather not support a site that reels you in by offering a free service, then threatens to screw you over if you do not pay.
Trakt is crystal-clear about what you get for a subscription. They are more like “perks” and enhance the quality of the experience. These features include push notifications and access to test new beta functionality of the site. All really cool, but not necessary. So, without this premium, your experience of the site is not diminished. Nothing is hidden behind a paywall, and I am more willing to support it.
Another nice feature from Trakt is the freely-available API for those of us that like programming. The API provided allows you to pull a lot of information from Trakt and put it into your applications (mobile or web-based). This can be information about a movie or a show, or a user’s watch history, etc. I made a page using this Trakt API on my main site. You can check it out here. That page will automatically update as I update data on the Trakt website. I made that page simply to try it out and liked it so much that I decided to make it a permanent part of my website.
Using the Trakt API is dead-easy too. You’ll simply need to retrieve the data from a page using file_get_contents (in PHP) that will contain the data you are looking for. The API documentation outlines these pages, also available on Trakt. The data returned is in JSON format.
If you’re not familiar with JSON, you can check out the wikipedia article here. You can think of it as an alternative to XML for data storage. Like XML, it has a very neat structure and PHP already has a built-in function (json_decode) to parse that information and store it neatly into a multi-dimensional array. Once that array is made, you can read the data based on field names. For example, if I wanted to get the IMDB link of a movie at index i, I’d use: $result[‘activity’][$i][‘movie’][‘imdb_id’]. All these field titles can be read directly from the raw JSON that is output, which you can also see using a viewer provided by Trakt.
Trakt has all the features a movie/TV show fan would want. It allows you to track TV shows, movies, get recommendations, keep track of what your friends are watching, and provides you with a highly functional API to do really cool stuff with. My only criticism is that the site is a little clunky. It has a bit of a learning curve, especially if you’d like to be organized (adding items to a watched list, removing, etc.).
It’s a great site and I don’t intend on using anything else anytime soon.