30.12.9999


For some time now I have been using taskwarrior for time management. It is a CLI program for managing tasks. It allows setting a due date for a task. This due date function understands some linguistic shortcuts, so I can set a due date one week from now by typing due:1week. It also understands other shortcuts like end of week (eow) or end of year (eoy). And as the developers of taskwarrior seem to be aware of that sometimes there is a task that one would like to add, and where not setting a due date (which is, of course, possible with taskwarrior) would be unsatisfying, but where it is clear that setting a due date would be unsatisfying either, because we don’t want any due date for this to pass. So taskwarrior understands the word someday, and translates it to December 30, 9999. What struck me just now when I stumbled over it again in the manual (man task) was, that the developers did put a date that is very far from now, and they couldn’t have gotten much further from now than this while staying in a four digit year. So they put 9999, which is the very last four digit year. And they put December, which is the last month of that year. But then, breaking this logic of the point in time with the most possible distance from now, they put the 30th day of December, and not the 31st. I wonder why. Even for a task that is due someday, there will be one day left in the four digit timespace where this task would be either overdue - or done.