How It Started
During senior week last year, I was sufficiently bored waiting for my senior friends to graduate. One of those nights, I happened to run into two friends who had an app idea. It was a senior week hookup app inspired from last chance dances at other schools. They felt that the demand was clearly there and was looking for someone to help build it. I felt intrigued, and since I didn’t have anything much better to do, I said yes.
I didn’t exactly know what I was getting myself into. The app mechanics were simple: each senior could submit up to 10 people they’d like to hookup with, and if interest was mutual, we’d connect them over email. How hard could it be? I expected a night’s worth of engineering.
However, as we started working, I quickly realized that the real challenge was data. Users couldn’t be presented with 10 open text fields. Names can be written differently. There could be duplicates. How would we know which names correspond to which users? We needed a precompiled list of all seniors with their names and emails. Users would select anyone from this list and the system would associate names to users using their email as identifiers.
So we set off to create that list. Unfortunately, it was not easy. We stitched together names and emails from QuakerNet, Penn Directory, and the class Facebook group. After many hours we had something we could work with. We also added a form to the site so that users could report missing names.
The actual website, intended for mobile use, was quite simple: a signup page and a form with ten searchable select fields. It looked like this:
I gasp now at how ugly it was, but it got the job done, so we quickly launched it. Our goal was to have matches go out by senior formal. It was only a few days ahead.
Marketing was a bit tricky since we wanted to stay anonymous. The thought was that anonymity would lend more credibility, adding allure and mystique to the app. No one wants to submit their crushes to an app their lousy friend built. So we stayed anonymous and indirectly asked friends to forward marketing emails to listservs. We struggled to build credibility until we hit Under The Button with this article:
Then we made it to the class-wide senior week email sent by the class board. It was glorious. We couldn’t have written a better one liner ourselves.
When all was said and done, we had a few hundred signups and a couple dozen matches. Success stories kept us excited for a few days, we had a fancy dinner to celebrate our hard work, then I erased the database, and it was over.
(Another) Last Hurrah
But.. we did it again this year: lasthurrah2016.com. Not an incredibly thought through decision. We just thought people would like it again. I won’t bore you with all the implementation details this time. Pretty much the same deal. The main difference was that we completely revamped the front-end:
With more time, more credibility, and more marketing, we reached a lot more people this year.
Google Analytics reports that 4000 people visited the site. That figure is bloated because mobile and web visits were being double counted as separate users, but even discounting for that I'd say that a big majority of our class at least visited the site. Among those who visited, 800 students signed up and over a hundred matches were made.
A Deep Dive
When I sat down to close up Last Hurrah this time, I couldn’t quite just pack up and move on. I had some questions. Why were there only ~100 matches when 800 people could choose up to 10 people each? What was the gender ratio? Were some people disproportionately popular? How many of us were recipients of secret desire from our peers?
I set off to answer some of those questions, and I dived into the data for quite a few hours. At the end, it only seemed fair that I shared my findings with you. I would like to emphasize that I did not look into any personal data. In other words, I didn’t look at anyone’s list or matches. Analysis was only done on aggregate data by a program that I wrote. It’s the same way Gmail is able to display email specific ads without a human reading your email.
Okay, so let’s begin. We’ll start with rough user stats. We had 812 signups. These are all actual Penn seniors because we confirmed their school email. Since our class is about 2500, we roughly had a third of the class signup.
Among the 812, 591 users actually submitted their list. This means that 27% of the users had signed up just to see what the site looks like. Feels reasonable. The following graph is a distribution of how many people users had on their list. You can see that the majority of users decided to put down the full 10 people.
Submitted List Size Distribution
Moving on to gender distribution. Gender had to be guessed based on first name. I used an external library to do this. The library uses a giant dictionary of 40,000 first names (not just US names but also international names) and their probability of representing each gender. So given a first name it guesses male, female, or unclear. As a disclaimer, I acknowledge that the male/female gender divide is simplistic, but given that this was not self-reported gender, my options were limited.
The graph below shows the estimated gender distribution for the 591 users who participated.
The gender ratio is close to 1.5 to 1. Not bad.
Now let’s look into the actual selections people made. Again, this is all in aggregates and not pertaining to any individual's list. We will refer to a single name on someone’s list as a single selection. So each user could have made up to 10 selections. In total, 4481 selections were made by the 591 participating users. 1980 of the 4481 selections landed on one of the 591 users. This means that 56% of all selections were ineffective because the person on the other end did not participate in Last Hurrah. Feels like a lot went to waste, but it’s very reasonable given that 591 out of 2400 is a smaller percentage than the current hit rate of 44%.
In the world of Last Hurrah, your popularity correlates to the number of times others put you down on their list. The graph below is a distribution of that popularity. For the technical folk, you can think of it as an in-degree distribution of a directed graph.
More than half of the population lies within the 1 or 2 selections bucket. The true outlier is the one individual who received 31 selections (I don’t know who it is so don’t ask). The area of the graph above sums up to 1276, which means that 1276 people had at least one person who selected them. The maximum that the graph’s area could have summed up to is 2433 since that’s the number of graduating seniors we had on our precompiled list.
1276 out of 2433 feels harsh at first glance because that means 1157 people (48%) did not receive a single selection. Does this mean that 48% of our class is desired by no one? Not at all. Keep in mind that the selections were made by only 591 people, and people choose those who are in their social circles. If anything, 1276 represents the reach of the 591.
If we look at how many among the 591 received at least one selection, it’s a whopping 577. That's 97.6%. Almost everyone. I am honestly surprised by how high that number is. As vulgar as the intentions of Last Hurrah may be, this statistic is incredibly endearing. Everyone is desired by someone.
However, due to the tragedy of misaligned desires, only 111 matches were made, involving 165 people. This means that only 28% of the people who submitted lists received a match. Below is the distribution of the number of matches people received.
Match Received Distribution
Again we have an outlier who received 5 matches. The vast majority received 1.
I want to end this post with a note I received at 2:30am on the last day of senior week. It came through an anonymous support system we had set up for users to reach us.
Those two lines seriously made my week. On that note, I'm ready to leave Last Hurrah in memory lane. Thank you to everyone that helped me with this project, especially the two friends who started it all.