Scheduling is not only an important concept when it comes to computer science but also an important and probably an overlooked concept to live a better life.
It might be easy to think about scheduling at the earliest but as we dive a little deep into this vast ocean of life with tiny reefs present with attractive pulls, we get to see that it’s probably not that simple to choose a particular strategy to schedule. The reason it’s so is because of the numerous metrics that’s involved in scheduling. Some tasks might have sharp deadlines, some may not. Some might demand to be prioritized in terms of importance but need not be really urgent. Some might want you to not have a deadline at all but only complete at the earliest possible. With all these different metrics, it’s really hard to follow a single best strategy of scheduling.
Different authors have presented different solutions to all these questions posed, but it’s finally up to us to choose which idea/ideas to standby and follow. David Allen in “Getting Things Done” stands by the statement of doing tasks under two minutes as soon as it comes to mind whereas his rival bestseller author Brian Tracy advises to start the day by doing the most difficult things first and then move to the easier ones in “Eat That Frog!”.
Neil Fiore in “The Now Habit” suggests one to schedule social engagements first and then fill the gaps with personal tasks whereas the father of American psychology, William Jones, strongly stands by his statement “there’s nothing so fatiguing as the eternal hanging on of an uncompleted task”. So as we read more, we come to know that each author and great mind has his/her way of living and it’s finally up to us to customize our lifestyle by choosing what best applies to us.
Coming back to the the topic, when it comes to scheduling tasks, we need to associate them with what our goal is and then try to analyze the situation.
If we wish to minimize the maximal lateness (ie, task with longest time) then we can follow the “Earliest Due Date” principle, which is fairly intuitive and asks one to complete the task with earliest due dates first. This is not only intuitive but also optimal. But what if your goal is not to minimize the maximal lateness?