|Backstory: I created the application as just a command-line one because I'm completely scatterbrained about remembering simple tasks, like taking out the trash every Monday. I told a couple of folks what I'd made and they asked about a web based version, which I now have the bare minimum functionality for it to be really useful.|
I need some additional folks to start using it to make sure the core is there and performance/load is where it should be. It's hosted on appengine for now, so rather than risk hitting the free limits posting a link for people to sign up, if you're interested, shoot me an email at email@example.com and I'll enable the account you email me from. It currently uses the Google auth, so you'll need a gmail account to sign in. I'd just make it live, but I intend to charge for it out of the gate and haven't completed the billing portion and want to make sure it's usable by other folks before fully setting it loose.
Finivus was inspired by the number of applications that exist to help people manage lists of things they need to accomplish. Rarely is such a list used only for the things necessary to accomplish today and rarely do such lists provide a reasonable mechanism for determining which tasks need to be done today, tomorrow or on any given day. Following from that, most tasks have a lifetime or window when they should be accomplished. An application that allowed you to annotate when a task can (or should) be accomplished would make the management easier but puts the burden on the user of the application.
Finivus is an entirely different approach. When a task is added that needs to be accomplished, the period it should be accomplished in is added as well. Finivus then distributes the tasks amongst available days. The system does not allow reordering of tasks or delaying tasks. Instead, if a task is not accomplished on the day it is scheduled, it is merely added back to the pool of tasks to schedule starting on the next day. The resulting schedule is deterministic, but is not guaranteed to change. The rationale is that tasks that are due today or are overdue should take precedence over other tasks and that a task would not be added if it didn't need to be accomplished.
The system of no penalization, even distribution of tasks and disallowing the picking and choosing of which tasks to accomplish encourages the user to accomplish the tasks that are scheduled, even if they are unpleasant or the user would rather not do them. This new approach becomes much more of a task manager rather than just a todo list.