Reviewing Wonderland Code In-World

As the Wonderland core team, we spend a lot of time using Wonderland.  We use it for meetings, we use it for collaborative work, and we even use the world for socializing. But this week we tried something new: a group code review in Wonderland.

Code reviews are an on-going process that we usually work on asynchronously: I email out the code for review, and the reviewers get back to me once they have gone through it. While this is effective for small changes, in this case we wanted to review a large amount of code with the whole group. So we decided to get together in world and discuss the code together, almost like a reading group.

The biggest challenge was getting the code into world. We could have brought a NetBeans editor into world, but that would force everyone to have the same view. Instead, we used Drew Harry’s slide spreader app to display PDFs of the source code. We found it works much better when everyone has their own view of the source.  That way we can assign people to break out of the main discussion and answer specific questions before joining the main group again.  And by using the spatial layout, we can always see at a glance where everyone is.  Here is what it looks like in-world:

Overall, it worked pretty well. We were able to explore the code both as a group and individually. And seeing the code sweeping off into the distance definitely gave a sense of how much there is to review!

There is still plenty of room for improvement.  We had to make the slides very big to make them easier to read, but this makes it hard to align your view with the slides. It would have been great to be able to see the code in the HUD.  Also, there is no syntax highlighting and no ability to jump to other parts of the code, which would have sped things up significantly. All this got me thinking it would be nice to have a lightweight shared code viewer — maybe based on JSyntaxPane — to use in world. Sounds like a new module to write…


7 Responses to Reviewing Wonderland Code In-World

  1. Aion kinah says:

    wongderful!!! I’m very hanppy!

  2. MaggieL says:

    As an interim solution, I’ve had good success running jEdit ( ) as a Wonderland shared app. It does a nice job of syntax coloring and has tools for code navigation too. Also nice: the console plug-in gives you shell command and Beanshell REPL capabilities.

  3. [Trackback] This post was mentioned on Twitter by neilcanham: Wonderland developers review source code together using Wonderland.

  4. Douglas says:

    I would LOVE to be a virtual fly on the wall during your next code review! :)

  5. Douglas says:

    Hi Jon
    If you’re interested, I have a script window I developed that makes use of jSyntaxPane … I also added auto imports … I could modify it to be the kind of thing you’re thinking of, once I have time …
    Cheers :)

  6. oyun says: I developed that makes use of jSyntaxPane … I also added auto imports … I could modify it to be the kind of thing you’re thinking of, once I have time ..

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: