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…