So, I’ve become a fan of watching professional videogames — in particular, Starcraft 2. Unfortunately, since videogames aren’t yet popular enough to be covered by the likes of ESPN, it’s sort of difficult to quickly check the scores of popular matches on a smartphone. I decided to try and build an app for my phone that would solve this problem.
Since I’m working on it only in my spare time, it’s been a pretty slow-going process, but today I released the first pre-alpha build. It’s not feature complete, and it has crashes and display issues and all that, but it’s definitely usable, and I’ve definitely enjoyed learning about Android app development as I go along. The source and releases and everything are hosted on github, which I’ve also really enjoyed using — git is a pleasure to work with, and I’ve found all the issue / release / etc. tracking that the site provides super useful.
The app is really simple right now — it only follows one series of tournaments, Blizzard’s official “World Championship Series” — it just has a main sort of “timeline” view that shows a brief summary of all the matches in the current season. Those matches can be selected to view more detailed information, like what map was played, and what order games were played in. The app pulls in fresh data every time it launches (currently in one huge file, which is on my list of things to fix) from a server that updates every five minutes.
Unfortunately, finding good, machine-readable Starcraft results is pretty tricky. I ended up using Liquipedia‘s API to pull the wiki-formatted version of all the results pages, then running that through a parser (using the excellent, but oddly named mwparserfromhell package). Liquipedia’s results are reasonably well formatted, and updated quickly by volunteers from an established community — without them, I don’t think this app would be possible.
In fact, since I’m about as far as you can get from a user-interface designer, I’ve also relied on Liquipedia for formatting / style; this has had the pleasant side effect of letting my app be understandable to anyone who is familiar with their site. Since the WCS has a pretty complicated structure (e.g. there are four person group stages where the top two players advance, third place stays, and the fourth place drops out) this is quite the benefit.
I look forward to continuing development, though again, since it’s just done in my spare time, the timeline is pretty slow. There’s a great deal going on at work which happily consumes a great deal of would-be free time as well. The grand finals of this years series are this coming weekend (Nov. 8-10), and I would love to have a version of my app in Google’s store before next year’s series begins, which is probably in early Spring 2014. If you decide to try out any of the pre-release builds, you’ll have to let me know what you think!