Monday, May 8, 2006

Two BGG things

I've done a couple of new BoardGameGeek-related things lately as well as some expansion and documentation of the XML API I wrote about before. Specifically, I created a Greasemonkey fix to the buggy BGG menus, a stripped down "BGG mobile" and some minor schema changes and improved features in the BGG XML API.

Over the past several months, I've been noticing some annoying slowness in Firefox. It seemed intermittent, and I finally got around to tracking it down. It turns out the culprit was the BGG dropdown menus. For whatever reason (a bug I assume) they do a little callback every 55ms. This is insane, for a dropdown menu, especially since it's always running. Scott is aware of the problem, has contacted the provider of the menus and will hopefully eventually roll out a fix. In the meantime, I didn't want every open BGG tab using up a chunk of CPU. When you've got 15 tabs open, it really adds up. So, using a combination of AdBlock to block the /udm-resources/* URLs from the geek and a greasemonkey menu replacement script, it is fixed. Rather than do something slick like replace the menu system with something better in every way, I just replaced it with a big pop-up accessible via a "menu" link at the top of the page. I use the menus rarely enough that this is more than good enough for my purposes. The CPU issues are gone. If you don't know what Greasemonkey is, read my post on Greasemonkey.

I finally got a web browser for my Blackberry. It's slow, but
functional. While it actually manages to render BGG, it is almost
unusable as an interface, simply because BGG tends to assume a
reasonably large screen. So, using the XML API, I wrote my own href=http://www.mkgray.com:8000/cgi/bgg>BGG Mobile. It's purely an interface to game
information, and only the basics at that. The idea is, if I'm in a
game store, thrift store or whatever, I can find out if a particular
game is any good. It shows me it's rating, basic information, and
user comments. It's got two additional things worthy of note. First,
it translates the rating into a number of stars that is entirely
arbitrary, but matches my gut feeling for significant cutoffs. That
is, the difference on BGG between a 6.0 game and a 7.0 game is much
more significant than the difference beween a 4.0 and a 5.0, and even
more than the difference between a 7.0 and an 8.0. A 6.0 game isn't
very good. A 7.0 game is. Additionally, it shows "consensus comments"
for games with a lot of comments. These are generated via textual
analysis of the existing user comments on a game, and it automatically
picks the 5 most representative comments. Both of these features (the
"BGG mobile" interface and the consensus comments, not the stars) will
probably eventually make it to BGG proper, but in the meantime, enjoy
them on my site.

Finally, I've made various bug fixes and feature improvements to the
BGG XML API. Most usefully, check out the href=http://www.boardgamegeek.com/xmlapi/>BGG XML API
Documentation.

No comments:

Post a Comment