It is a truth universally acknowledged
that a project in possession of great work must be in want of more work.

This week has been crazy. Everything is blurring together so much that I'm not sure what happened this week and what didn't.

As far as work goes, I was pretty busy this week.

At the week's start, I worked on improving the way we save student assignments. A little background: we have a LOT of different ways to save sketches. We can save as a single sketch (basically just points and strokes and shapes), as a .PNG image of the sketch,  or as an assignment (which include multiple questions/sketches). Before, students could only save the individual sketches, not assignments, and I made it so that student assignments can be saved too. Now, when a student saves an assignment, the file contains for each question: the text of the question, the question image, any number of instructor-input key sketches / equations / answers, the student sketch / equations / answers, and all of the sketches in the tab note panels. These files can get very large because of the way we save sketch information (each point/stroke/shape has a 32-bit ID field, the 32-bit representation of the time it was created, and any other information that needs to be stored. On average each question (including the key sketch, the student sketch, and a few tab sketches) takes 1 megabyte.  That's quite problematic.

Also this week, I developed functionality to migrate the strokes of a sketch on a note panel to the main window. The action is undo-able and the strokes are recognized as they are added. I included screenshots of the added functionality at the end of this document. Alexis is working on getting the strokes to move, so when that is finished, the copy functionality will be more practical and less messy. Here are some screenshots of this functionality:

Then, I started work on some of the new recognizers that Travis needs, including a 4-stroke 'x' character and a 3-stroke y-character. We need this because our strokes are segmented at intersection points, so our two-stroke x becomes a 4-stroke x.  I am also working to improve my segmentation algorithm by finding a way to find a "perfect" intersection point to segment, rather than just a point nearby.

Finally, I created an online user-study that allows people anywhere to draw the shapes that we need to recognize. The more data we have on the way people draw, the better our recognizers will be. We analyzed the preliminary data, and had a overall recognition accuracy of 53%. That doesn't sound very promising, but the data we checked was from the first eleven people that took the study, who were all people in our lab. We purposely drew in ways that would not be accepted, because we knew the limitations of our recognizers. We have great hopes for improvement!!!

We've worked so much this week that I didn't have much time for socializing or leisure activities. I worked on my puzzle and my cross stitch, but I'm not done with either. I miss my friends and my family so much and I feel the white walls of my dorm room closing in on me, but I've only got a few weeks left. Almost time to go home!!!!