Best Dataset Ever

This is an end-of-semester thing that we’ve been looking forward to.  Back in mid-October, I thought it would be fun to record our sleep and wakeup times.  We started on October 14th, and here are the results from calculating hours slept.  I think we have a lot less than the average number of all-nighters for college students.

You can download the dataset (csv format) here.

Note: the hours slept are calculated for the night before, e.g. Sunday values correspond to hours slept Saturday night through Sunday morning.

Summary (hours):

Charles Danny Duncan Tom
Mean 7.53 7.08 6.93 7.19
Median 7.47 7.17 7.25 7.94
Standard Deviation 0.900 1.99 1.84 2.37

As you can see, Danny, Duncan, and Tom have left-skewed distributions (the mean is less than the median) whereas I’m right-skewed.  I have the highest mean sleep time and the lowest standard deviation.  Tom has the highest standard deviation, and Duncan has the lowest mean sleep time.  Graph:

Days of the week:

We were also curious about our sleep patterns during the week.  Tom was usually very well rested on Tuesdays.  Graph:

Correlation Matrix:

Unsurprisingly, I am not very correlated with the others.  Duncan and Tom have the highest correlation.

Charles Danny Duncan Tom
Charles 1
Danny 0.0758 1
Duncan 0.0135 0.2899 1
Tom 0.1032 0.1035 0.4019 1

My hours:

My variance increased over the semester.  Graph:


Thanksgiving break meant a lot of sleep for Danny.  Graph:


I bet you can tell when Duncan had an astronomy lab write-up.  Graph:


The wild roller coaster ride that is Tom’s sleep schedule.  Graph:

All of us:


It turns out that Charles was right. Here is an e-mail that was sent to someone in the Harvard Society of Physics Students:

———- Forwarded message ———-
From: Randall Munroe
Date: Tue, Dec 15, 2009 at 12:25 PM
Subject: Re: the harvard physicists are on to you: (was: Fwd:
[sps-open] xkcd and galactic rotation curves)
To: Jacob Rus

It’s a coincidence, but I swear I’ve seen that graph before. I
remember wishing I could see the error bars and data points.


CS50 Projects!

Hey everyone, as you may or may not have known, the CS50 fair was this past Tuesday, and three of us participated (Danny’s too good for CS50, although we did try to get him to TF the course).

Note: The cloud is being reset on January 1, 2010, so the links will no longer work  soon.

Charles’ Project:

An automated trading system analyzer written in Python3 (eventually going to be moved to its own domain).


Duncan’s Project:

A course selection tool that randomly selects appropriate Core classes.


Tom’s Project:

An interactive speech recognition program named “Hal Py-Thousand.”  Source Code:


Look at the post below for one of Danny’s many projects.


Someone in the room mentioned that we should create a GChat bot that would let us all talk together without the hassle of creating a chat room each time. Having used xmpppy before, I went and did it.

The result:

(Charles changed my GNOME theme to pink some weeks ago.)

Tom then wanted me to write a post about how I did it, so here it is. Without going into a description of the library itself, it works as follows: when it gets a message from one of us, it prepends the appropriate initial and sends the message to the rest of us.

I guess I can go a little more into the details of the library (especially because the documentation is pretty annoying). (There still isn’t really that much to say.) You run some commands in the library to create a connection and log in, then register a function with the connection object to handle incoming messages. I suppose I can add more description if anyone wants. Code.

So that I can get all the tags:

xkcd is so much better than I could have imagined

After doing a lab about galactic rotation curves, the following xkcd comic has gained more meaning for me;

The one time I tried, I got hit by a slinky going down at double speed.


If this isn’t explicit enough for you, please compare it to the following;

Galactic Rotation Curve

Shock and awe.

Update (more…)

Creative Process Part II

#include <stdio.h>
int main()
printf("Hello world.");

Remember how I said I was writing an essay last Thursday? Ha, well, just finished it last night. For those of you who learn about details of my life solely through this blog (I don’t know whether any of you exist, but if you do, please feel free to contact me IRL or through facebook or something, I promise I won’t think you’re creepy!) , here’s a quick update:

  • After my three-hour sleep thing, I wasn’t able to work on my essay anymore, so I didn’t drink that red bull.
  • In section, I got an extension until Tuesday night.
  • Astronomy lab! And CS50 final project! Ouch, double all-nighters, not doing that again.
  • On Tuesday, I got way busy accidentally because of CS50fair and other stuff and failed to do the essay.
  • So I spent ALL DAY yesterday working on that darn essay.

Now, I don’t intend for this blog to become “oh my god my life is so busy, let me tell you all the details of how busy I am”. That would be uninteresting and unoriginal. But there’s some unresolved things from my last blog post, which is why I’m posting.

So, this creative process. It is, I suspect, important in the humanities. As a young scientist I’ve spent some time questioning whether the humanities are worth anything; my answer is pending but leaning towards “hell, I’m not sure anything’s really worth anything, so why not?”.

Lately I’ve been experimenting with my own creativity, however I can manage it. To be creative, let’s try to define that: “Creativity is a mental and social process involving the discovery of new ideas or concepts, or new associations of the creative mind between existing ideas or concepts. Creativity is fueled by the process of either conscious or unconscious insight.” (Thanks Wikipedia.) I like being creative in different ways. Creative with language; creative with code; creative with images; creative with problem-solving. Maybe I’m getting better at these. If I am, it’s exciting.

Well, I don’t have much else I feel like writing about at the moment, but I found this video online and Charles thinks it’s extremely cute:

uneven wet bricks = traction fail

The creative process (and blood!)

First things first: I gave blood today (Wednesday) for the first time! Duncan was doing it and my schedule was the same as his so I figured I may as well. It was kinda cool, in an ow-my-arm-hurts-in-a-weird-sore-way-will-this-needle-come-out-soon-please way. I’ll post a picture within the next couple dozen hours. (It won’t be gross.)

Second things second: I am reflecting upon the creative process. By this, I mean: I am attempting to write an essay. This is the third essay for my English class. It is due tomorrow (to a good approximation, at least – there are some complicated details). I’ve been thinking of things to write about, and referencing the text of the novel I’d like to write my topic on, for several days, and I even emailed my TF with a bunch of the ideas I’d collected. So, armed with a whole bunch of jotted-down observations, the page numbers referencing my favorite quotes, and a very vague idea of what my thesis might sort of be, I sat down four hours ago ready to write my essay.

This was a bad idea.

I know this because I did essentially the same thing for my first essay. I never really finished it, because I wasn’t able to write anything. I didn’t have a solid idea of exactly what I was going to do when I jumped into writing it, and as a result I sat staring at the mostly-blank text document for literal hours. The smallest temptations become irresistible distractions when you’re a little sleepy (or perhaps just caffeine-jittery) and don’t know really what you’re writing about. But when you’ve set out to write your essay and then go to sleep and then turn the essay in as soon as you wake up, it seems like the only good idea is to just write – there’s no time to stop and go back and outline your thoughts in detail! So you press on, but those distractions just get bigger.