So a lot of sports news websites have a lot of clutter, showing the user a bunch of information on their landing page with respect to all the scores, 20 different stories etc. not all of which are relevant to the user himself. So this is an attempt to create a smart news, general information and score-keeping engine that provides minimal clutter for the user and makes sure he or she gets meaningful information
What it does
It is an alexa skill that can be used to keep tabs on multiple on-going sports events. It helps you keep up with latest tournament, series and match info, what you can catch right now and so on. I have used sportradar's API (https://developer.sportradar.com) for accessing multiple sports feeds. I am using ESPNCricinfo's RSS feed for getting live cricket scores. Currently it only has cricket and european football and even there it gets things wrong w.r.t accents etc. but it gets the basics right. For cricket, it can tell you what series are on-going, what are the teams in those series, how many matches are over and how many are left, a team's basic information, a player's profile (batting/bowling style) and career stats and current live scores. For football, for now it can only tell today's schedule and yesterday's results.
How I built it
I built a custom caching service and deployed it on AWS ElasticBeanstalk, which basically caches data from Sportradar's feeds in a searchable format so that user can get the information he or she wants as quickly as possible. The skill itself is hosted on AWS Lambda and is built to have minimal footprint, dealing mostly with meaningful utterances of the data, while most of the work w.r.t fetching the data is done on the service on AWS ElasticBeanstalk
Challenges I ran into
A lot of the feeds are XML, so parsing them to JSON and then accessing them while making sure the data was clean of different quirks was a challenge.
There is a huge barrier w.r.t the accent, and a lot of Indian cricketers names are virtually unrecognisable to the skill if I want to get their profile and information, which still remains a huge barrier
Accomplishments that I'm proud of
The project is only a week old, and the amount of work I have managed to get done while balancing my day job is definitely something I am proud of.
What I learned
This is my first ever deployment on AWS of any kind, so all in all it is a huge deal
What's next for spectator
More sports definitely. Am looking at tennis next, followed by NFL probably.
The caching service could use some work, am looking into Amazon Elasticache's redis service.
Am talking to a lot of my sports fanatic friends trying to come up with helpful scenarios