Friday, January 30, 2009

Weekend Update

I just finished meeting with Val again to continue finalizing my design doc and make a list of what I need to be focusing on next. What's left for the design doc is the background reading I still need to do about the Tree of Life project itself, both for the prior work section and the abstract. 

Next Steps: 
- download PhyloWidget standalone application, install it, and get used to how it works
- download Eclipse
- look back at old Java code I've written to re-familiarize myself with the language
- download PhyloWidget source code, open it as a new project in Eclipse, compile, and run it
- look for any code documentation on the PhyloWidget site

- meet with Val, Thursday the 5th

- experiment with small changes to the existing code to see how easily it can be manipulated
- decide then whether to build upon the PhyloWidget code or start my application from scratch

In addition, I'll also start brainstorming about the functionality I'd like to include in the program, so that we can start working towards a UI design as well as a software design. And, of course, I'll have a finished background section to add to my design document. 

Logistical note: I'm working on figuring out how viewers can RSS feed my blog, so your browser can automatically inform you when I've made a new post. I'll let you know once I get that working.

For now, here's the Gantt chart I've created to organize my workflow up through the Alpha presentation during the last week of February. From there on the chart is vague, since I know I'll arrive at a more detailed list of tasks as I proceed.


Sunday, January 25, 2009

Munzner's TreeJuxtaposer

I completed reading the SIGGRAPH paper by Tamara Munzner about visualization and structural comparison of trees.  I'm focused solely on the visualization aspect, for the Tree of Life dataset. Comparison of trees or subtrees is not within the intended functionality of my program. The paper was dense and would certainly require re-reading if I were to try to implement any of her algorithms, but reading it once gave me a sense of the topics she addressed and the difficulties she encountered. 

Topics relevant to my project: 
- Scalability in Tree and Display Size
- Guaranteed Visibility of landmark nodes, regardless of user's navigation. While her goal in doing this is for the sake of comparison, it would be of additional value to my program, where students may want to focus on the relationships between specific organisms.  
- Occlusion of other nodes due to labels

Topics I don't need to bother with:
- Automatic Identification of Structural Differences between input trees
- Differences Characterization - exactly how two trees are structurally different

Topics I could read more about:
- Herman et.al. 2000 survey of tree visualization research
- Quadtrees (her datastructure of choice)
 H. Hauser: Scientific visualization: The visual extraction of knowledge from data, Springer, ch. Generalizing focus+context visualization, pp. 305–327, 2005. 
- Other tree visualization options that are different from the TreeJuxtaposer (referenced in Munzner's paper)

Wednesday, January 21, 2009

Design Doc Meeting

I just finished meeting with Val (Tannen, my advisor) about ironing out some of the details of my project so that I can write a more complete design document. Out main focus ensuring that my project will have a definite beginning and end and that it is a project I can successfully complete in one semester. 
We reviewed some of my questions and went over the design doc template to make some changes and additions to what I'd already started to piece together. 

We decided that I need to do two things: 

1) Read Tamara Munzner's paper on the Tree Juxtaposer to see how she visualizes trees and what I can learn from that. This will also get me started in the "Past Work" section of my design doc. I can choose to trace back from her references if I see things that I feel might be of additional use. 

2) Spend a long while studying the already-written PhyloWidget code from Yale. I'll need to decide whether to start from scratch using that as a guide or whether to use it as a basis on which to build my code. Deciding how to utilize the PhyloWidget will have significant influence on the structure of my project, right down to the languages and libraries I'll be using to write the code. 

In addition to that, I feel I'll need to do at least some background reading about Data Integration, since I'll need to do some amount of that to ensure that we're using fresh scientific data all the time. I'll also want to read up on algorithms and data structures that would be most useful for storing and manipulating data about trees. 
Val is going to get in touch with his colleague at Yale who is excited about this project and seems willing to lend a hand, especially with the code from the PhyloWidget project that was created by one of his students. 
At this point it's still quite too soon to detail things like algorithms of choice or even to attempt a Gantt chart. We're still very much in the "figuring things out" stage. 

Monday, January 19, 2009

Transition Announcement

My "Adventures" are taking a turn, a change in focus to the more, well, local - instead of traveling the world, this semester will be spent getting comfy in my computer chair and working on my senior design project. As such, my blog will now be a hub of activity all related to my project - progress reports, links to useful and relevant sites, questions and comments from my faculty advisors, etc. This is the beginning of what is sure to be an interesting ride.

Next up: Abstract and full Design Doc to be posted shortly.