CRA Distributed Mentor Project Page
This is my webpage and journal for my summer spent at Georgia Tech participating in the Distributed Mentor Project (DMP) during June and July of 2001.
The DMP is a program that provides female undergraduates in computer science with the opportunity to work with an academic mentor in their area of research interest.
I applied to the DMP during the spring semester of my junior year at Princeton University. I'm majoring in computer engineering, which at Princeton is a lot like computer science but with a couple of extra hardware-related classes.
Applications were due on February 1st this year. I received my acceptance at the end of February.
A couple of important links:
The main CRA website: www.cra.org
The Distributed Mentor Project (DMP) website: www.cra.org/Activities/craw/dmp
My mentor is Prof. Amy Bruckman at Georgia Tech: www.cc.gatech.edu/~asb
My interests are in graphics, human-computer interaction, and computer education. Amy primarily researches human-computer interaction and the use of computers and the internet in education, so we are a very good match.
One of Amy's projects is "AquaMOOSE3D," a program which uses 3D graphics to help high school math students visualize and understand 3D mathematics. The webpage for AquaMOOSE is located at www.cc.gatech.edu/elc/aquamoose.
Log of my weekly activities:
I met Amy and her lab crew.
My first assignment:
In AquaMOOSE, users control a fish avatar. By entering math equations, they make the fish move in the path of the equation. One of Amy's previous (now departed) students designed a program which allows users to customize the fish - i.e. choose from a set of differently shaped heads, tails, etc., and choose from a set of skin textures. However, currently these two programs (AquaMOOSE and the avatar customization program) are not integrated. My job is to integrate them so that a user can modify the fish from inside the AquaMOOSE program.
Last week and this week I've made some modifications to the two programs that should facilitate the actual integration process.
Right now I'm working on calling the customization program from inside AquaMOOSE.
I finished my first assignment. Two grad students (Jason and Scott) who are also working on AquaMOOSE are taking it to a summer program so that the students can test out the software and hopefully provide some constructive feedback.
Jason and Scott left on Monday, so now it's just me and Phil (a GaTech undergrad working on AquaMOOSE graphic design for the summer.) I'm hoping now to do some modeling and add some more interchangeable parts to the fish, and maybe work on allowing users to customize the colors of the trails that the fish leaves in the water.
I'm working on trail color modification. I figured out how to change the colors. I can make the trails have one color or two, can give them vertical or horizontal stripes, and can make the stripes either blended or not. Next I have to make the user interface for changing the trail colors. The challenges are in making sure that both preexisting trails and new trails have their colors modified appropriately. Also, there is a feature already in the program that allows a user to select and highlight a certain trail. Currently this is hard-coded to make light green highlights on the selected trail while making the other trails dark green. This will obviously have to be modified to accommodate trails of any color.
This week we travelled to Valdosta to visit with the summer governor's school students in math. (The summer governor's school is a residential program for gifted high school students in which they take classes in subjects they would probably not be offered at their normal high schools; each student concentrates in a certain area and is called a "major" in that area.) Earlier in the summer, Jason and Scott went to Valdosta to install AquaMOOSE3D on the computers at the governor's school and to explain AquaMOOSE3D to the math majors. This week we went to assess the usage of AquaMOOSE by the students. We hoped to talk with students and get feedback on the merits and faults of the software and also to resolve problems if possible.
We arrived at Valdosta in the afternoon and sat in the math classroom during free period hoping to talk with the students. There were plenty of them around, but unfortunately they were all very busy (not using AquaMOOSE but working on projects for their classes.) The few students we talked to confirmed that they had a lot to do and had little spare time for experimentation with AquaMOOSE. However, some of the students seemed to like it and had experimented with making their own trails and ring games. We were able to identify one major barrier: students mentioned that some of the computers would not run the program; AquaMOOSE won't run if the color and resolution settings are set to a value that it doesn't like, but unfortunately it doesn't explain to its users WHY it won't run. Jason explained to the students why this happens and how to fix it.
I've mostly finished the user interface for trail color modification. Users can now make striped or solid trails, can make blended or non-blended stripes, can change the colors of these trails using RGB values, etc. I wanted to make sliders for the RGB values, but I may not get around to this because first I want to add an option which allows users to preview the changes they're about to make (i.e. see how the trails will look if they commit the changes.) Currently I'm debating whether to update all the old trails when a user changes the trail color options or to leave the old trails the way they are and apply the new trail color options only to trails created after the changes were made. An "update old trails" button would be useful.
Finished the feature which allows users to preview changes. I think the trail color customization system is at a good stopping point now - it works and I think it has most of the features one would expect... Time to think of a new project to finish out the summer. I've been thinking that some of the ring games are so difficult to solve that no normal user will ever figure them out without help. If users have no chance of solving the ring game, they may get frustrated and probably won't learn as much as they would through a process of trial and error culminating in success. A hints system would be useful. This system would allow users to access a series of hints leading to the solution of the ring game, which they could access as needed. The content of the hints could be either provided by the program or specified ahead of time by the creator of the ring game. One issue: sometime in the future there will probably be points awarded for solving ring games; how can we discourage users from looking at all the hints automatically in order to solve all the ring games quickly and accrue points easily? Perhaps deduct points for hints - deduct more points for big hints, fewer points for small hints.
This week is our last trip to Valdosta (also the students last week there). Fortunately this time, with the help of some of the math teachers, we were able to set up about 10 interviews with math students who had used AquaMOOSE. Jason, Phil, and I interviewed the students and asked for their opinions of and suggestions for the software. I was impressed by the student's suggestions; they were very articulate and committed to providing us with worthwhile feedback. Interestingly, many students mentioned that the software would be more appealing if users were given more freedom to customize their own environments. In fact, this is the eventual aim of the AquaMOOSE project - to provide a constructivist sort of environment where users have the power to build their own worlds.
Sadly, this is my last week in Atlanta. I've grown very fond of GaTech and all the people here, not to mention Atlanta itself. I spent this week at the lab finishing up some details on the hints system. I initially designed it so that students could access all three parameters of the trail equations (x(t), y(t), and z(t)) if they so desired, but Amy thought (and I agree) that this is allowing the students to access too much information about the ring game. So I fixed that feature, and now the hints system is mainly focused on hints that will be defined by the creators of the ring games. Which leaves some question as to whether ring game creators will make reasonable and helpful hints... I wish I had more time to work on this, but at least right now a basic mechanism is in place that can be modified later. I spent a lot of time commenting the things I've done this summer (I'm very bad about commenting). And finally, on my last day, we added all my changes to the software, I had a chat with Amy about grad school, and then I said goodbye to everyone and went home to pack for my flight the next morning...
My initial assignment for the summer was to integrate the fish avatar customization software with the AquaMOOSE3D software. I completed this project and afterwards was able to define my own projects. I implemented a trail color modification system that allows users to customize the appearance of their trails. I would have liked to add to this (but couldn't figure out) a mechanism that allows students to view the colors that they're choosing in real-time (i.e. in the color chooser in Photoshop). The other main addition I made to the software was a hints system which allows users to access hints to help them solve ring games, and to define hints when creating their own ring games. What remains to be done for the hints system is to integrate it into the fully networked, multi-user environment that is the eventual goal of AquaMOOSE3D. I also went on two trips to the summer governor's school at Valdosta to evaluate high school math students' usage of AquaMOOSE and interview them regarding their opinions and suggestions about the software.
I live in a suite in the Graduate Living Center (GLC) with 3 other girls. One is a GaTech grad student, and the other two are both part of the DMP program but they work in a different lab. We take trips to the grocery store and bake cookies for fun on weeknights, but on weekends we are a bit more adventurous (or at least one of us is). One weekend Becka decided to get her tongue pierced so we went down to Little Five Points (the "alternative" part of town) and went to a lovely establishment called The Piercing Experience; the piercing artist, Somer, was very nice and professional, although she did mention that she was a little frazzled that day because four of the planets were "in retrograde."
I also have a friend from school who lives in Atlanta and he's home for the summer and has taken me on tour to such fine locations as the Margaret Mitchell House, the Westminster school (where he went to high school) and the Varsity, a famous fast food place in Atlanta.
The CRA Distributed Mentor Project was a wonderul experience for many reasons.
First and foremost, I had never worked closely with a woman in computer science, and it was heartening to have Amy as a mentor and see that women can be successful and happy in computer science. Also, she had lots of good advice on graduate school and life in academia, especially from a woman's perspective. My conversations with her about these topics are extremely valuable now that I'm in the middle of the graduate school application process. Amy is also a wonderful person in general, and I'm happy that I got to know her this summer. She has a great sense of humor, has lots of ideas to share, and is very supportive of her students, including me. Just knowing that there are people like Amy in computer science makes me feel better about the field. (Also, this fall I've been visiting graduate schools and it's amazing that so many people know Amy and her work and have wonderful things to say about her. I'm really grateful to the Distributed Mentor Project and to Amy for providing me with the experience of working with such a well-known and respected researcher.)
Also, the Distributed Mentor Project gave me a good idea of what it's like to work in a research lab. I've been considering graduate school for a long time, and my experience this summer gave me a better idea of what graduate school might be like. Several graduate students work in the lab, and I got to know them and talk to them about grad school. This summer helped me to solidify my research interests. I have always pursued a multidisciplinary approach to my education, and as a result was assigned to Amy, who works in the field of human-computer interaction (HCI), which combines computer science with art, design, psychology, etc. Princeton lacks a formal HCI program, so it was very valuable for me to spend the summer at Georgia Tech, which has an excellent HCI group. My experience at Georgia Tech convinced me that I want to go into HCI in graduate school, and my top-choice programs for next year are HCI-specific programs, such as the ones at Georgia Tech and Carnegie Mellon. In fact, I liked Georgia Tech so much that it is my first choice for graduate school.
Finally, this summer gave me the opportunity to meet a lot of great people. Amy of course I've already talked about, and the other students working in her lab were all very friendly and fun. I became good friends with my two roommates, both female computer science majors and DMP mentees, during the summer. For anyone who fears that all members of computer science departments are socially challenged, my experience this summer should prove that in fact there are lots of personable, funny people in the field.
I recommend the DMP program for students who want to meet good people in computer science, to explore research, and to work with a smart and successful female mentor. The DMP is a wonderful program and I'm very grateful that I was given the opportunity to participate.