The Journey Ahead Nov 9, 2007

Since my last few posts have been fluffy meme-age, I wanted to take a few minutes and talk about something real I've been working on: the next version of Journey.

Most of you probably don't know what Journey is, although a lot of people may have used it without realizing. Journey is a web-based questionnaire engine that I wrote for LARP casting questionnaires. To date, it's been used by three LARP groups: Alleged Entertainment (the group I belong to), Foam Brain Productions, and Immortal Sociopaths.

Journey works pretty well, generally speaking, and I've been happy with it. It certainly works a lot better than LACE, the older questionnaire script I wrote in mod_python to cast the first run of Snaf University. For about six months now, there haven't been any new features introduced in Journey, because it pretty much just works well enough for people to use it.

Or, at least, that's what I've been saying to some people who ask about it. Actually, what's been going on is that I've been preparing a whole raft of improvements that pretty much have to be added all at once. I think it's looking good enough that I'm comfortable telling the world about it. So, this post constitutes the first public announcement of Journey2, the new, improved Journey.

What Journey does well right now

There's quite a few things Journey can do that other online questionnaire engines can't. Namely:

  • Journey lets you create questionnaires solely through the web, instead of having to create and upload a configuration file (like with LACE).
  • Journey lets you have multi-page questionnaires.
  • Journey lets users fill out part of a questionnaire, then come back and finish it later.
  • Journey lets users come back after having finished a questionnaire and amend their response.
  • Journey lets GMs see partial responses, even if the users haven't finished the questionnaire yet.
  • Journey lets GMs use an RSS feed to be notified of new responses automatically.
What Journey doesn't do so well right now

Unfortunately, there's a few annoying problems too:

  • Journey uses the login_engine and auth_engine authentication system for handling GMs' accounts. These are obsolete and buggy, and the author says not to use them. Net result: most Journey users are actually using my "admin" account. In my opinion, that's a big failing.
  • Similarly, once a person is a GM, they can edit and view responses for ANYONE's questionnaire, not just their own. We're totally on the honor system here.
  • For certain kinds of question groups, the web user interface for creating questionnaires is cumbersome at best. Specifically, those pages you always see in LARP questionnaires that ask you to rate a whole bunch of adjectives on a scale of 1-5. Each one of those adjectives takes like 10 clicks to create in Journey.
  • Although the fact that users can fill out a partial questionnaire then resume it later is nice, the feature is not very easy to use, and it's also prone to people accidentally "un-finalizing" their response.
The Future

So, here's what I'm going to do. I'm going to get the first version of Journey2 out the door as soon as I can and then improve it incrementally after that. This means that the next release isn't going to fix all these problems right away - there will be a wider set of small improvements that will trickle in after the big, monolithic release that's coming up.

To wit - here's what's already fixed:

  • New authentication system. This is a big one. I've written my own damn authentication layer; it's called "ae_users". We've already been using it for Festival of the LARPs signups, which means that if you went to Festival of the LARPs last year, you've already got an account on Journey.
  • Completely redesigned user interface for creating questionnaires. The idea of this new one is to show you, as closely as possible, how the questionnaire will ultimately end up looking to the person taking it. It's super-shiny, and I think people will really like it.

Before I release the first version of Journey2, here's what I plan to fix:

  • Finish up the new user interface. Right now you can do a lot of the stuff the old UI let you do, but not everything.
  • Add some more goodies to the user interface - specifically, I want a way of easily duplicating a question many times (for those huge blocks of adjectives we love so much).
  • Add permissioning to questionnaires. We already have the backend for this stuff ready, because of the new authentication layer, but right now the person who creates a questionnaire is the sole owner of it and they can't add other GMs to the list.

After that, I plan to add these features, roughly in this order:

  • Annotation fields for GMs to use. This one was requested by . The idea is that GMs can have special, GM-only fields in the questionnaire that they can fill out during the casting process - for making notes on certain players and stuff like that.
  • This one is kind of a "duh" feature - instead of using some randomly-generated number as a "session code" when people fill out a questionnaire partially and hit "finish later," let's actually let them sign up using a username and password so that when they log in, they can see the status of their questionnaire responses.
  • And if we're letting them log on to fill out a questionnaire, let's reward that behavior by pre-filling out the answers we already know - their name, gender, email address, etc.
  • A user interface for casting - not just viewing the responses to a questionnaire, but actually making casting decisions through the web. Journey would help GMs keep track of who's already been cast, and which roles are still available.
  • Integrating Journey with the Festival of the LARPs web site, so that people could jump straight from signing up for a game to filling out its questionnaire. This would also, potentially, let GMs know who's signed up but hasn't apped yet.
  • Automated casting assistance. I've been talking about this one forever, but haven't actually implemented it yet. If GMs are willing to tell Journey "I want the person cast as Jane to enjoy intrigue and mysteries," Journey could help them figure out who's best for Jane during casting.

I've really enjoyed working on Journey so far, and I hope you've all enjoyed using it. If you have any comments or suggestions about it, I'd love to hear them.