About FeedBurner Stats 2 Feed

I started using FeedBurner a few months ago.
RSS World News feed was the only burned feed so it was almost easy to check its stats every day.

Since FeedBurner was offering day after day more useful services I burned a few other feeds and I quickly reached more than 8 (feed)burned feeds.
The main problem was to find a way to check feeds stats every day without opening each feed dashboard.

FeedBurner offers a delicious API service so I started to code a light tool who is able to check the stats for you and, why not, converting them into your a single personal Feedburner stats feed.

The ingredients

Would you like to know what are the ingredients to cook the FeedBurner Stats 2 Feed recipe?
Here they are.

  • A wonderful Sony Vaio notebook with Microsoft Windows XP and SUSE 10.
  • Mozilla Firefox and a tons of extensions.
  • PHPEdit, the best PHP IDE for Windows.
  • MSN Messenger, Skype and ICQ, used to relax my mind before and after a PHP line code.
  • Winamp and 8Gb of Mp3.
  • A truck of cold beer.
  • A few cool PHP classes: FeedCreator and Feedburner Awareness API class, both with small personal improvements.
  • Many and many hours used to develop PHP code.
  • A not-so-fast-but-really-useful UMTS/EDGE internet connection.
  • ... Ladies and Gentlements, the most important ingredients: FeedBurner and its Feedburner Awareness API!

Mix all the ingredients, cook for 30 hours and serve cold after some tests.

Behind the scenes

FeedBurner Stats 2 Feed is a powerful tool completely PHP coded and written using object oriented web programming.
Would you like to know more details about FeedBurner Stats 2 Feed backend? Follow me!

The core of this tool is composed by 4 classes.

Starting from the lower level available the first PHP class is a Feedburner Awareness API class, called FeedBurner.
FeedBurner class is responsibile for quering FeedBurner API interface and gathering raw data. No further action is done, just ask FeedBurner for data, fetch data and return raw data to the second class.

FeedBurnerAwareness, the second class, expands FeedBurner class methods and is responsible for cleaning raw data, sorting records and check for errors.
FeedBurnerAwareness is able to set advanced options such as time range and API arguments.

Now that the data is arrived at the third floor, cleaned and sorted, the class FeedBurnerStats is ready to welcome and manage all requests from the main public tool view.
FeedBurnerStats class is a bridge between the user and the tool core. It is also responsible of filtering user's input and mix multiple requests into a single output.

Here we are, now the tool just need to print the output. The class FeedCreator is used to produce the RSS 2.0 feed.

4 classes used just for a single tool?!?

Yep, that's it. The main reason is because an object oriented programming is wonderful if you are planning to improve the tool in the future with a few code changes.
The version 1.0 of this tool, that never seen the public side of the web, was written without classes. When I decided to improve the tool adding multiple feed support I used less time to code the tool again from the beginning rather than extending the old version.

I love OO programming... Java is one of the programming language I most loved.