Week 2 (6/1-6/7)
- Jun 07, 2012
- 1 Comment
This week has primarily been a lot of thinking and trying to come up with ideas that could possibly work. My starter project has turned out to be a great deal more complex than I or Kyle initially thought it would be, and as such, we have tried to work out as many kinks theoretically before I actually started to work on the programming.
Friday was mostly spent exploring the massive code base that is LookingGlass. I was primarily searching for the classes responsible for adding properties to each of the nodes. Another purpose to the exploration was to just learn more about the different parts of the code and how everything connects together. That afternoon, we also had short presentations to describe what we had been working on throughout the week. Everyone has been working hard and had very interesting designs and sketches of what they had been working on.
Monday, I spent a great deal of time working on sketches of how I envisioned the visualization of the remix history would play out. I came up with a variety of concepts with different themes from basic boxes to evolutionary trees to Itunes style layouts for visualizing the remix history. These will eventually be put on SparkleShare, but they are not there yet. The idea is that we're tracking the remixes of individual animations. To do so, we came up with the idea that there needs to be a remix ID to track individual remixes throughout its path. Something that came up was the problem of defining an animation using the AST nodes. While conceptually, saying that we're tracking animations is good, practically, it is far more interesting because of the AST nodes being a different representation of the code. That afternoon, I did some research on ways to make layouts by looking at different websites and communities on the internet to see how things were arranged.
Tuesday morning I continued to work on some sketches. Trying out different ideas is far more difficult than I thought. It's hard to come up something completely different from one idea. Some of my ideas may have some what resorted to mixing and matching different themes. I tried to delve into the LookingGlass themes from wikipedia and came up with a sketch involving a deck of cards as well as another involving rivers/trees. My favorite may be the sketch with the animations as books and they are stored in an animation library that looks like a bookcase. If you open the book, you can examine the animation and the code involved in the animation. After lunch at the law school, I began to work on trying to solve the anonymous user case. More on this tomorrow.
Wednesday, I tried to solve the anonymous user problem. As of the moment, we don't require people to sign in to create a world, so they can create a world as an anonymous user. They can work on it at school, save it on a flashdrive, take it home, and work on it more at home. This is all fine, but if we're trying to annotate the code as the code is being written, it will show up as two different anonymous users because the code was written in two different settings. On the other hand, if we annotate at the end, we could be missing valuable information (remixes, tutorials, etc.) during the coding process. We decided that a mixed annotation would be best where everything is annotated except for the author of the code. When the world is finally shared, the author is forced to log in and that information will be tacked on to the rest of the code to say who wrote the code.
Thursday was spent looking through the program.xml file to better understand the AST and how things were arranged as well as determine a way to select animations from the AST nodes. One possibility is take the animations by nodes. Everytime a possible beginning to an animation occurs, there is a node usually labeled as ExpressionStatement or MethodInvocation. Using this we can determine what animations are by choosing the relevant nodes.
I also began to create some classes in the AST package to describe some of the information we want in our node. Getting everything to extend properly is an interesting process involving some copying and pasting of code as well as just straight up guessing as how to make things work. None if works yet, but starting to code makes me feel good since I haven't really done very much of that this week. Most of my days have been spent just thinking about how to do things.
There is a big conference in Germany next week, and everyone has been working incredibly hard to get LookingGlass up and running to meet the deadline for submission. I hope everything goes well, and I can't wait to hear about it when they get back.
Comments
caitlin said:
<p>You've got some great sketches about how this all ends up looking through the interface. I'd be excited to see some of those as blog posts, too!</p>
Log In or Sign Up to leave a comment.