Tiffany's diary entry - Autumn 2012

Tiffany’s still on track for her master’s degree, although she just made the 2:1 she needed. She’s also been given her final year project, which involves writing an algorithm to analyse tweets and decide how cool a user is.

Tiffany in a giant yellow clog Strangely - I think the majority of people would think this unusual - summer is my least favourite time of year. It always involves a disappointing amount of sunshine, too many spiders and wasps, and a barren wasteland of inactivity. The start of my third year can't come quick enough!

In my last diary entry, I spoke about needing to achieve a 2:1 in order to progress to my master's year. I'm pleased to say that I did get a 2:1, although only just, so I'm still on track for my master's degree. No resits either, which is good, although I think I do need to try a little harder next year in order to get the first I'd like.

Another major event that happened in my third and final term of second year was being given my final year project, and writing my proposal in which I discuss my research into the field and my plans for the project.

Writing an algorithm to analyse tweets

I was given my third choice, which I was a little disappointed about, but I'll make do. My project is going to be to write a “coolometer” for Twitter, which involves writing an algorithm to analyse tweets and decide how cool or uncool the user is.

An interesting concept, in my proposal I came up with a mathematical formula which takes into account the number of tweets the user has posted, the number or hashtags and @ symbols used, and the number of followers versus the number of people that the user is following:

Coolness = ((C * 0.5) + (F * 0.25) + (H * 0.125) + (A * 0.125)) * 100

Where:
C = coolness level as determined by the language classifier
F = number of followers a user has minus the number of people they are following (celebrities and other popular people on Twitter generally have more followers than people they follow - returning a positive value. Less popular Twitter users generally have less followers than people they follow, returning a negative value)
H = average number of hash tags used per tweet
A = average number of @ symbols used per tweet

The four values are weighted in order of importance, so coolness level will have the most influence on the final result.

Training the language classifier

The language classifier mentioned is a tool I found during my research that can be trained to analyse a piece of text and classify it. In this case, I'll give the classifier several examples of what I deem to be cool and uncool tweets to train it. Once trained, the classifier should then be able to class pieces of text as either cool or uncool. Obviously, coolness is subjective, which makes the project all the more intriguing. I'm looking forward to getting my teeth into this project at the start of next year.

Getting a high mark for the group project

The final presentation and demonstration for the Android friend finder project mentioned in my last diary entry also went well, with the whole group achieving over 90 per cent and a solid first overall. I'm so proud of myself and the rest of the group, and really believe we deserved such a high mark as we toiled endlessly to get the project done! One particular low point was spending 24 hours solid in the computer labs the day before the project was due. I felt like the walking dead afterwards, but it was worth it.