How Not to Do Your Final Project

Sharon Lin
Aug 9, 2017 · 3 min read

So I have had a pretty rough week. Honestly, in between getting horrifically sick to deadlines absolutely everywhere, it’s been a hell hole of pain. Obviously, I’ve been through worse, but I think it was the sheer pressure that got to me this time.

I am a little surprised, considering how I normally do not succumb to sickness or pressure too easily. It takes far more than a simple cough to force me to miss school, but I suppose I was feeling a bit more vulnerable that usual this week.

In my MKS21X (aka APCS) class, my group was thus left alone to work on their project. We hadn’t agreed on a theme until the last day, so I assumed that they would have something by the time I came back. As a matter of fact, they did, but my teacher assigned a number of requirements to our project, including (but not limited to):

  • Subclasses
  • Abstract classes & methods
  • One recursive function
  • One interface
  • One loop

So, not hard, but definitely not easily incorporated into hangman or snake. We initially had the idea of using JFrame to make snake or checkers, or to make a terminal Hangman, both of which could be accomplished in an hour or two (we’d built the exact same games last year in Python and Netlogo so borrowing the logic was the obvious move). I think the idea of doing an infinite runner came up, along with several other iPhone app adaptations that would have only taken a few hours at most to create.

The problem, however, was how to include all of the requirements. There was a possibility of just winging it and making up useless functions that did nothing for the sake of having them, but alas, we had to use all of the requirements in our problem as well. So what was the solution?

I wish I actually had a clever answer to that. My group actually spent the time creating various games, to the point where — with 10 hours to the deadline — we had nothing worth showing.

I had just finished a 10-hour-long marathon of physics labs (writing seven 8–10 page long labs in LaTeX is about the most painful thing in the world in terms of lab-writing) so I decided to go commando and try making something up. I remember a beautiful poem generator on the Adroit Journal’s website, so I strung together some random poem lines and split them up.

I had pulled one and a half all-nighters in order to finish my work (studying was secondary at this point), so this was on top of the supreme exhaustion that I had just overcome.

So this atrocious thing came into existence.

And in terms of our project, we haven’t actually received the grade, but this is about the epitome of poor planning. Not only are our classes and interfaces useless, but the line-picking function is literally 30 lines of garbage thrown in for the sheer purpose of fulfilling a requirement in as little time as possible.

Note: This post was originally published on Feb. 10, 2015. I’ve been migrating over a few of my old blog posts.

Sharon Lin

Written by

Computer Science @MIT | Software security engineer

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade