Home
About me
About my mentor
Research
Reflections on DMP
Weekly journal
A Day in the Life...
Final report
Weekly Journal
Week 1:
I drove up to Milwaukee on Saturday and got somewhat
settled. On Sunday, I picked Catherine up from the airport, so that helped
me feel more at home once I had a roommate. On Monday, we met with Prof.
McRoy to find out what she had in mind for the summer. We got set up on
computers in the lab (running RedHat, oh yeah!), and got comfortable with the
environment. We also got a LARGE stack of papers to read. Tuesday I
got started reading the papers, and found out they weren't so bad. Mostly
background reading on work that the group has worked on, and also several
papers on issues in dialog annotation. I did have the feeling of being
unprepared for working in AI fields, having never taken such a course, so I
started reading parts of an AI textbook that Catherine recommended to me
(Artificial Intelligence: A Modern Approach by Russell and Norvig, 1995).
It is quite entertaining reading for a textbook. Wednesday I
started actually annotating some of the data set, using a given annotation
scheme. We soon realized that this part of the project was not as complex
as it first looked, and would not take three weeks to do. I continued
some of the background reading and reading in the textbook to break up the
annotation, although it is not as monotonous as I had imagined. Thursday
I finished up the annotation in the morning and met with Prof. McRoy in the
afternoon to think about how the rest of the summer would shape up. Then
Catherine and I met with Prof. McRoy to work on some revisions for the
annotation scheme. Friday, I spent the morning working on installing a
Praat script to extract one row of labels from the TextGrid files. We got
to see a demo of some software that members of the research group are working
on various parts of: a tutoring system to help mechanical engineers learn,
well, mechanical engineering. I don't know much about mechanical
engineering, but it looked like an interesting program, with lots of puzzles.
Friday afternoon was filled with miscellaneous activities such as fixing
some of the annotation to conform to the revised system, working on this
website, and installing a printer on Catherine's machine.
Week 2:
The first part of the week I spent working on finishing up
the annotation project for the dialogs, and extracting text files from the
Praat TextGrid files to be used for data analysis. Then I started
annotating the dialogs using DAMSL annotation scheme by James Allen and Mark
Core. Tuesday we got to see more demos of what grad students in the group
are working on- a system to adapt information presentation to different modes
of output, a system to adapt information presentation to different user types,
and a template-based text generation system. I also spent some time
configuring my rig, installing ncftp for more convenient file transfer, as well
as the Java SDK and JBuilder by Borland. Prof. McRoy figured out that the
inter-annotater label comparison would not be as simple as it first appeared,
so I began to build a tool to compare the Praat output files. It was a
little tricky to get back into the Java programming language, which I hadn't
really touched since January, but I'm getting back into it, especially with the
help of JBuilder and its automatic fill-ins and debugging suggestions.
I've got two of the basic classes coded, but some of the logic needs to
be refined, as well as the output format. I also need to put some kind of
front end on it.
Week 3:
I got the original version of the file comparer done,
although without the front end. However, the more I thought about it, the
more I wondered how useful it would be to just compare two files and get a text
output. I discussed this with Prof. McRoy, and we agreed that the
ultimate goal is to take several different label sets and integrate them into
one unified set of labels per conversation. So, the tool needs to compare
several files, notify the user of the differences, and allow the user to make
some sort of decision as to which label to accept in cases of discrepencies.
We decided that some sort of graphical output, possibly in table form,
would be most useful.
In transfering my attention to the new design, I enjoyed the
benefits of object-oriented programming. Since I was still working with
the same type of input files and doing the same sort of comparisons, I was able
to simply plug in a number of classes that I had written for the last version.
It was a challenge to get myself reaccustomed to using the
Swing library for GUI components, but it didn't take long to get up to speed,
and I at least remembered where in the API to look. I am also enjoying
the auto-complete and "Suggest Correction" features on JBuilder.
For someone with a poor long-term memory for details, these save me much
stress! I also learned about some new components, namely the
JFileChooser, that already implements an interface with the operating system
and with the user to browse the file system and select a file to open.
Sometime during all of this programming, I began to wonder
if there might already be research published in other fields that could be
applied to developing argument schemata, which is one of the things we are
ultimately trying to find with this research, as I understand it. I did a
little preliminary searching, but haven't yet taken the time to read the
abstracts I drug up.
Week 4:
Made good progress on the compare program, by the end of the
week it can compare two or more files and line them up. Of course, a big
bug showed up Friday afternoon, but hopefully the weekend will help that.
Basically lots of coding, testing, debugging, coding, testing, debugging.
This is what I like about programming, getting a little closer to a goal
every day. It is very motivating to work on a tool that I'll probably be
using myself to do some data analysis.
I was also able to spend some time looking for background
reading material on argumentation in general. I hope this summer not only
to do some good work for Prof. McRoy's project, but also use it as a chance to
get involved in the field of argumentation theory and practice (well, some
people would say I don't need any practice in argumentation, but that is NOT
what I meant!). I now have a list of things to spend an afternoon in the
library pursuing from various journals.
A highlight of the week was being caller number 7 to WFMR (the classical radio station) and winning
tickets to the Waukesha Symphony Orchestra's concert Sunday evening, which was
well worth going to. Catherine and I also had a fun day in Madison on
Saturday, going to a live broadcast of Whad'ya
Know radio show, the farmers' market, and a tour of the capitol building.
Week 5:
This week flew by, partly because it was shortened due to
the Independence Day holiday. Catherine and I are taking advantage of the
long weekend by making a trek to the Twin Cities. We're not sure what
we'll do there, but it is sort of a pilgrimage to the Mall of America. My
multitier comparer program is coming along very well, and has essentially the
required functionality. I fixed some nasty bugs by remembering that in
Java when you copy things you have to create a new object, otherwise they will
just refer to the same object and that can lead to some nasty side effects!
Now I'd just like to add some niceities to make it a little more
user-friendly, since I will probably be its main user, at least at first!
I would also like to figure out how to get its output to interface back
with Praat. I guess it is already the half-way point of the summer, which
is simply amazing! As far as the reading part of my research activities
go, I am still trying to figure out how to find reading that will actually get
me somewhere. Much of what I find is heavily seeped in formal logic,
which is important, but not what I am looking for. Of course, if I could
articulate where I wanted to go, I would probably be more likely to find
readings that would "get me there!"
Note: We did go to the Mall of America, but the highlight for me was the detour
to see the Spam
Museum in Austin, MN.
Week 6:
This week started out rough, sort of despairing why the
JFileChooser in my program was not working as I wanted it too. Thanks to
some great moral support from Catherine and some folks on the Sun Developers' Forum I got through it,
and finally had a revelation on Wednesday. I'm still not sure why it was
a problem, but I got it fixed. The developers' forum is another reason
why I really like the computer science field. I feel like I belong to a
large community (albeit a very quirky community...) of people who have similar
interests, problems, and curiousity. And, while most people wouldn't mind
striking a vein like Bill Gates, most of them are not primarily motivated by
money and are willing to help each other out in a less-than-cut-throat manner.
Anyways, once I got the file stream situation cleared up, I just had a
few more details to refine, and I now I have a working program! Thursday
and Friday mostly spent finishing up my annotations that I had put on hold to
write the program, and then preparing data from myself and two other annotators
to put through the program. This afternoon I've actually started on using
my very own program, and catching a few little things that still need fixing.
I've also done some looking ahead to the next part of the project, which
will be to analyzed the merged label set for frequencies of bigrams and
trigrams in an attempt to find interesting patterns. As Prof. McRoy put
it, we are still kind of looking for a needle in the haystack. I would
add that we are not necessarily sure at this point that this is the haystack we
dropped the needle in, or whether there is a needle at all, but it is exciting
to think that we might be able to find some sort of patterns in the data.
Weekend plans include a library booksale and checking out
Kohler, WI, including the huge showroom of the Kohler Company (they make toilets,
among other things)!
Note: We also made a quick excursion down to the Jelly Belly
Warehouse, which was delicious as well as educational!
Week 7:
This was a week of figuring out how to do stuff. The
two biggies were using the Javadoc tool to create professional documentation
and making an executable jar file. Somehow it is a moment of pride when I
can transfer just one file to a Windows machine and have it run just by typing
one line. And a great feeling to see my code documented just like the
normal API that I use all the time on the java web site!! I think if
beginning programmers were taught how to use javadoc, they might be more
motivated to put comments in their code! I've also gotten a good chunk of
the bigram-counting project done, just need to work out some of the dirty
input/output details to incorporate it into my gui program. Then I need
to think about the more general n-gram case (or give up on that and just write
a trigram program as well). In general, I feel like I got a lot
accomplished this week. I also got to go see a really neat free concert
downtown, some "world music" group from Chicago with a LOT of energy.
Yes, I was dancing, whether you believe me or not! I have a pretty
full weekend planned since my parents will be here visiting. Hopefully
the weather will stay as nice as it is right now. I love 75 degree
weather in July!
Week 8:
Progress was quick at the beginning of the week, and I
was able to plug in the bigram-counting program and write and plug in a program
to count simultaneous occurances across tiers (using many of the components I
had already programmed for the other functions). However, while I was
reusing these components, I realized how dissatisfied I was with the robustness
and encapsulation of my code. It had kind of been nagging me for a while,
but by Wednesday it bothered me enough that I decided to turn around and patch
some things up. For example, I have a class called Entry that represents
the starting time and label of an inverval. The Entry class also
contained public fields (always a warning sign!) called isLastEntry and
beenPrinted, which obviously don't really have anything to do with the Entry
itself. So, I implemented an EntryList class to take care of some things
and spent time refactoring my code accordingly. By the end of the week, I
feel much better about my code, although I'm sure I'll find some things yet
that will bug me. I also took some more steps to clearly separating the
output classes from the back-end classes.
For some reason, this week seemed really busy, and there
were nights when I didn't even turn my computer on in my room. I went to another
free concert on Tuesday eve. by the Love Monkeys-- sometimes you're just in the
mood for some pop rock, and luckily Tuesday was one of those nights. I
even recognized some of the cover songs they did (which is an impressive feat
considering the status of my knowledge of pop culture!) On Thursday I
went to The Fantasticks, a great show at the Skylight Opera Theater. I
sat way up in the gallery, but it was an experience!
This weekend looks promising as well. I am coming in
to the lab on Saturday to get a head start on next week, since I will need to
skip a day the following week for our big Canada trip. Then on Sunday, I
get company! Lots of things to look forward to, and the project is
getting wrapped up nicely.
Week 9:
This week flew by as James was here to keep me company in
the evenings and we had a lot of preparations to make to go to Canada (where I
will be leaving for in about 15 minutes as I type this!) As this week
went on, I was glad I spent the time last week to fix the less-than-elegant
code that had been bugging me. I added a few features this week, and it
was actually quite simple to modify the code to incorporate them. I also
can tell things are wrapping up because I spent a significant amount of time
working on the final presentation I am giving next week, as well as a
"canned" demo I am making to leave as my "legacy" with the
software. I used some software called Camtasia to make the demo, which
allows you to capture what you are doing on the screen to a video file.
It's pretty cool-- sort of in the same category as Javadoc in my book!
The interface is easy, but it is harder than I expected to actually
design a presentation that shows what is important without wasting a lot of
time, and it is extremely difficult to choreograph the mouse to do exactly what
you want it to do and look elegant. I think my demo turned out pretty
neat, though. Well, I'm off to Canada!
Week 10:
Canada was great, although the trip home got awfully long,
especially since I was a bit nervous about the upcoming presentation. The
presentation on Tuesday went well, though, and I got some good advice from
Prof. McRoy and Prof. Ali. This week was all about putting together the
distribution package for my software, trying to make it easy to use for those
who come after me and impressive for potential employers/funders. We also
snuck in a little outing to a Brewers' game at Miller Park. Luckily, the
park has a retractable roof on it, so when it started raining in the 3rd inning
it didn't stop anything. And it was cool to watch the roof closing.
Unfortunately, the Brewers were not so hot, as they got beaten by the
Braves 10-2. Not a very exciting game. Today I'm trying to clean up
the hard-drives, my desk, copy the important files to disc, and then I'll go
back to my room and pack up so I can leave tomorrow morning. I'm looking
forward to being at home for a while, but I can't imagine a better place to
spend the summer than Milwaukee! I'm sure I'll be back, if only to go to the
Three Brothers again!