James Stanley


Tue 10 September 2013

My latest project: Xory. I started this on Friday afternoon and now consider it releasable.

It's a picture guessing game inspired by Prof or Hobo where you're shown a series of images and have to guess between two categories.

It's under 500 lines of Perl, and uses Mojolicious for the app framework and Bootstrap 3 for the UI. Bootstrap 3 is in some ways a regression in my opinion. The fresh look is nice, and having it responsive by default is also nice, but having to compile it is needless hassle. Mojolicious, as always, was a joy to work with.

I'm a little uneasy about using DBM::Deep for the database. DBM::Deep is pretty buggy but really does make things easy. DBM::Deep allows me to store all state in a giant hash, and not have to worry about writing to disk. It probably does introduce difficult race conditions if running under hypnotoad or similar, but I currently use a single-threaded server so that's not a problem. There are definitely some race conditions in Xory, caused by handle_uploaded_pic running in fork_call, but they'll only be invoked if someone tries to upload two pictures at once so I'm not going to worry about it for now.

The game is similar in concept to guess-whom, in that it asks the user to create the game and is based around sets of pictures. It's a lot simpler though, to the extent that I finished it before getting bored.

If you like my blog, please consider subscribing to the RSS feed or the mailing list: