Under mountains of homework (and how to keep up)

The definition of homework changes as we grow up, but it never becomes easier or smaller with time. On the contrary, if one plotted an amount-of-homework vs. year-of-school graph, it is sure to resemble that of an ever-increasing function. And the slope is also ever increasing, because the degree to which homework becomes larger per year itself increases over the years, so that the increase in homework from Class 1 to Class 2 is smaller than the increase in homework from Class 11 to Class 12.

In Class 12, we get mountains of homework. Doing so much homework requires persistence and perseverance, but keeping up with homework is an entirely different matter.

The only way to keep up with homework is to set apart a fixed amount of time for homework every single day.

In Computer Science, there’s are various operating system scheduling algorithms. One of them is called FIFO, which stands for first in, first out. In this kind of scheduling, the thing that comes in first is the one that goes out first. In other words, it’s like a first-come, first-served thing. In the context of homework, this means that the homework you got first gets completed first, regardless of when it has to be submitted. Now this kind of homework scheduling can help in certain situations, but it will often lead to incomplete assignments in some subjects, and assignments completed a long time before they are to be submitted in others. This isn’t the kind of thing you should be looking for.

There’s another scheduling algorithm called LIFO, whose full form is last in, first out. In terms of homework, the homework that comes in latest is the one done first. I’ll explain what I mean by this with an example. Say you’d got some homework over this week, and you’ve left it to be done in the weekend. So you’ll do the homework you got today first, then the one got yesterday and so on, till you reach the starting of the week. Following this kind of algorithm is not possible unless you do your homework in batches. This way of doing homework is NOT recommended at all, because often the homework is given in that order in which the teacher has taught topics in class, and sometimes, smart teachers give homework in that logical sequence that builds the students’ concepts up even when the student is starting from scratch. Getting rid of that kind of advantage is plain stupid.

And then there’s something called SJF, which means shortest job first. In this algorithm, when you have a pile of homework to do, you start with the shortest one and end with the longest. This algorithm can be used when all the homework has to be submitted after a relatively longer time, and getting a few check marks early on really helps with self-esteem.

Then there’s one of the best algorithms for homework, called priority scheduling. This is the usual style of doing homework, in which you choose the next job based on priority. In the case of homework, this priority is simply inversely proportional to the deadline (so the farther away the deadline, the less priority a piece of homework holds). This can have one problem though, and that’s called starvation. In simple words, it means that some homework can be left undone for an indefinite amount of time. The simplest solution to this is to increase priority as a function of waiting time, so the longer the homework is held, the more priority it gains.

Now all these methods are really innovative and cool, but none of them are as creative as the round robin. In this, you do a small part of each homework in succession in the first cycle, and then do the subsequent part of each homework in the second cycle, and so on till all the homework is done. This method cannot be followed for homework that requires constant attention, and therefore, is not really applicable to homework even though it is the most creative way of solving the problem. This can also lead to all homework being 90% done, but no homework in a position to be submitted.

I propose something that takes the best of these methods, and combines them into the ultimate homework-doing strategy. My algorithm is outlined below:

  1. Sort the homework you get daily into one of these the following categories: this week, next week, after next week. Put a solid bullet under homework you have to submit in less than 2 days, and a hollow bullet under that which you have to submit in more than 2 days and less than 5 days. Unmarked homework will be of the kind that has to be submitted after 6 or 7 days.

  2. For homework that was given before that day, but not done yet, decrease (1/λ) * (no. of days the homework has been left pending) from the deadline for each day the homework is not done, in addition to the decrease of one day because the deadline is already closer by those many days now. You have to set a value for λ so that homework that is more long-term is not prioritised too aggressively. You can set λ according to the estimated required time for the homework to be done. This will increase the priority of a homework not done for a long time exponentially. So, for example, I have to submit a piece of homework that I got today 7 days later. If I haven’t done that homework for three days (and λ=3), the new deadline of that homework will be 7–3–0.5–1–1.5 = 1 day. Do the homework in the order given in the following points (except for homework done using ‘round robin’ scheduling).

  3. For homework to be submitted in less than 2 days, follow priority scheduling with the priority being the deadline. In other words, do the homework in the order in which they have to be submitted, so what has to be submitted the earliest should be done first.

  4. For homework to be submitted in more than 2 days and less than 5 days, follow shortest job first. This will allow you to finish a greater amount of homework per day.

  5. For homework to be submitted in 6 or 7 days, follow last in, first out or random order, depending on how much time you are willing to save. You can follow the latter if you feel particularly lazy about ordering homework in the chronological order of receipt.

  6. For homework to be submitted next week, follow first in, first out or random order, depending on how lazy you feel on that particular day.

  7. For homework to be submitted after next week, you have to follow round robin on that particular homework if it is long, and random order if the homework is short. In round robin, you have to set a particular amount of time everyday to do a small part of that homework, and have to finish that homework over a period of time. What to do is pretty clear for short homework.

  8. THIS IS THE MOST IMPORTANT STEP. You don’t need to follow all the above rules. You need to do short homework a little time before the homework has to be submitted (or randomly if you have lots of dispensable free time), and long homework in small blocks over a period of time. Homework that comes in between can be done in larger blocks or on one fine day when you have a long and contiguous span of time on hand.

Well, that’s the system I try following when trying to do homework (I only follow point 8 above, if you must know).

What I’m more interested is in the way you do your homework. Please tell me by commenting on the page you go to when you click “COMMENTS” on the next line.

COMMENTS

 
4
Kudos
 
4
Kudos

Now read this

If you receive this email, then you can subscribe to my posts in another place

Like I said, Svbtle isn’t free any more, as a result of which no additional people can subscribe to this Svbtle blog. I cannot reach people with nine subscribers, although I must admit I’ve never had nine subscribers before. If you are a... Continue →