Sunday 9 December 2012

FeedHammer 2013

Hi All,

Although it may look as though not a lot has been happening with FeedHammer for most of this year - don't be fooled. We've seen some huge changes behind the scenes - changes which should start to come into effect around the turn of the year..

What makes FeedHammer different to most of the other news readers out there is that we act as an aggregator of Warhammer news. We go out there and grab all the stuff we think is interesting and store it in our database - where we can store it, index it, examine it, and post process it before making it available to the mobile app and web site.

This lets us do some cool stuff which we've wanted to do for a while - but have been holding off doing before we are sure we have the back end systems in place that can handle it in the most efficient and scalable way. We want to build a sound, scalable base before tagging on more functionality to the app prematurely.

For the last year we've been running a full Java enterprise stack - which has worked exceptionally well - but requires a lot of complex components working together. During this period we've seen the growth and maturity of more 'cloud' based platforms - which can scale dynamically very easily. I've always felt like this is the direction I've wanted to go with this - and have spent a lot of time looking at PAAS solutions like Google App Engine and Cloud Foundry, but they've always *just* failed to hit my mark. Twice now I've done a lot of exploratory development work only to get so far and realise it's not going to do everything I want, and I've ended up returning to the current working solution. However - now I think I have the best solution for moving forward. To cut a long story short - I've basically rewritten the whole back end system using Spring - which I think will give most flexibility over the coming years as the various cloud platform offerings mature.

Initially I plan to run this on Amazons EC2 platform. This is the gold standard in this area and a good place to start - the new back end is up and running on there now and undergoing tests. A screen shot of the admin console is shown below:



This is running in parallel to the current live system (which is alive and well, and running on OpenStack).

If you think of whats going on behind the scenes in FeedHammer - there's actually quite a lot to consider and manage. For a start you need to be able to define which news sources you want to grab - and what type of news format they provide - RSS, Atom, Twitter, Web pages...

You also need to specify when you should update them - each one is different - hourly, daily, 3 hourly, etc.. And then you need to spread the load so it doesn't try and read them all at once. You need logging to keep an eye on whats happening to spot potential problems and troubleshoot existing ones...

All of this needs an administration console to manage - and I now have most of that in place - some screen shots are shown below (remember - this is just the back end, for my eyes only to try and keep things running smoothly):







Some of the new functions that are in place and getting lined up to go live include:


  • Linked Items - because we store and index everything - if you view a story about, say Bloodletters on Bad Dice - we can suggest other Bloodletter stories from different sources at the same time (from completely different sources)
  • Podcasts inline - we now extract and identify media content from news items, including Podcasts - and can provide a media player so you can stream the podcast directly (should you want to)
  • Improved media image extraction - if as story has a thumbnail image - we now use that image in place of our default one for that source
  • Improved scheduling and caching - now we have that in place we can add more content with more confidence. We've always been cautious in adding too much too quickly (though in part thats because we don't want to dilute the content - but that's another issue for the next major upgrade)
  • Brand new Mobile Interface - we still need to iron out some of the bugs on this one - this is where our focus will be after we get the new back end live - we want to update our Android app and roll it out to Apple and MS devices too in the new year

If you've got this far - thanks for staying with me!

I just wanted to share what was going on -  and let you know that we're working *very* hard to get a solid, scalable and useful platform in place that will take us though 2013 and well beyond - and if you have any suggestions for features or improvements - please do get in touch! We should start to see the fruits of this years (sometimes frustrating) labours coming on line soon!

And - as ever - if you like the product - please do leave a positive review on the Play Store (of just get in touch another way) - that's what keeps me wasting me weekends hunched over a keyboard!