Tuesday, October 12, 2010

The Thought Processes of an All-Nighter

6:00 pm
You've spent all day in classes, meetings, and intermittently working on your Orbital Mechanics Lambert Problem Matlab Code. Sure it's far from done and it's due in about fourteen hours, but you've got all night. You're currently feeling good, filled with a nice yummy fast food dinner that you probably got at the student center, but no worries because Chick-fil-A is the holiest food out there. You've totally got this.

8:00 pm
Hah! Take that assignment! You thought you were so tough, but in the last two hours you've dominated three of the six functions you need for your massive subroutine. That's like half the problem. In two hours! By this rate, you'll be done by ten. Sure you need to debug with the provided test scenarios, but you're code is awesome. You won't have any problem.

9:00 pm
\$@#%?!? Nothing works! The debugging has revealed an infestation and where the heck are those imaginary numbers coming from? Now you have to recheck all your code again (for the umpteenth time)!!! ARGH!

10:00 pm
You hate your life. You can't figure out what's wrong. Time to scrap every code you've written and start again from scratch. Well, at least it's only ten. You still have the whole night.

12:00 am
Huh. You've never noticed that there are exactly five ceiling tiles above your cube. And that light on the left kind of flickers. Ooo, look, shiny internet. So beautiful and distracting.

12:30 am
Get a grip. You can do this. But maybe you need a quick Library run to grab a snack from the 24/7 cafe in there and some caffeine. That will only take 30 minutes, and the night is young. You still have seven and a half hours to solve this problem.

1:00 am
You're back and ready to start again. You've rewritten you're entire code, so now it's time to debug again.

2:00 am
It still doesn't work. You want to smash you're computer into a thousand pieces. You email your friend in the class begging for help. He's still awake, but planning to go to bed. He doesn't really want to answer your questions, so he just sends you all of his code. You're tempted to just completely cheat and steal his, but then you know you'll fail the test. You're a grad student, and you actually care about learning this stuff. So you pull out some blank m-files and start again from scratch, but this time using his as a baseline.

4:00 am

5:00 am
OMG! The tests cases worked! But now you actually have to do the other three codes. But that's just plotting and you still have your friend's code to work off of, so it shouldn't be that bad.

6:00 am
The plot is beautiful, but you realized that's only problem 1. You still have to do problem 2. You kind of what to cry, or die, or anything to make this pain end. Class is in two hours, and actually all you really want to do is take a shower.

7:00 am
Oh wait. Class isn't at eight. What on earth were you thinking? You just assumed an all-night would end at eight, and you could get a little nap in before your noon class. Looks like you might be going right up until noon because problem 2 is worse than problem 1.

8:00 am
Want shower. Really want shower. And people might arrive soon. And you really don't want them to think you reek. So you can take an short break to shower and eat something.

9:00 am
You feel better after a shower and breakfast, and people who can help you have actually arrived in the office. Awesome. You've got this.

11:00 am
You're done. Man, it was awful, but you did it. You wouldn't say you "dominated" the code, but at least it's done, and it sort of looks like everyone else’s answers. Now you need to eat something and caffeinate so you don't fall asleep before class, or in class.

12:00 pm
It's turned in. For better or for worse, you're done.

1:00 pm
Oh crap. He just assigned another even worse homework. But today your priority is to sleep. That's an all-nighter for next week.