Author
Topic: IDEA: Do this First. (Read 24464 times)

If you're anything like me, the first thing you do when you start the computer is to check your emails and feeds. An hour or two later, you might get something else done, if you remember what you intended to do in the first place.

I'm thinking of keeping all documents I'm currently working on in one folder, together with a text file listing the outstanding tasks to be done on each document and there due dates.

Now I need a little program that runs on startup, listing the next action needed on each document, and how long I have left to complete it. When I select one, the document opens.

Isn't this sort of a ToDo list? Probably there are a few programs out there that already so something very similar to this.(i'm thinking something where you can enter a note and the associate a file to it)

make that I've definitely read about something similar done by somebody - using a script(?)I think it was here - maybe in the Getting Organised Experiment - does that ring any bells for anyone?Of course there was so much stuff linked to from there...

I've absolutely no idea what to search for but hopefully that might trigger someone's brain who has a better search/memory function than mine ?

I wrote you a little something, try it out and let me know if it's close to what you want.

It's called "To Do Or Die" and it's a quickie task manager with links to your documents.

Installation:Create a new folder and unpack the zip file there.

Operation:Run the executable. Once it's up, you can drag any kind of Windows-recognized document file into the main window. Drop the file(s) there, and it'll create an entry for each. There's a maximum of 10 items (sorry). After you drag at least one file, you can:

- Double click the file's icon to launch it;- Double click the file's description to edit;- Use the up/down buttons to change priority;- Use the "Remove" button to get it gone.

To use the "due date" feature: Simply edit an entry's description and place the magic word "Due" on a line by itself (see screenshot). After the word "Due" type a space and then the actual due date + time for the entry. Use any date format you're comfortable with... 10/31/2007 works as well as Oct 31, 2007.

Including a time component (e.g. "10/31/2007 8:00 PM") automatically displays remaining hrs/min/seconds until time's up. Past-due items display their time in red.

All settings are stored in an .ini file created alongside the app. It's plain text. You can edit the .ini file directly to twiddle the data, if you like. Settings are saved automatically when you exit the program, or can be force-saved via the "Save" button.

If you want it to start automatically with Windows, create a shortcut and drag it into your Windows "Startup" folder.

Known issues:So far, the only thing I know of is a slight cosmetic problem should you be using the standard XP "rounded" theme. I have mine set to "classic" and didn't notice until I ran it on a test machine. :-) It's no biggie, and if it bothers you I'll fix it.

Hi Ralf and thanks for your nifty little application. One problem and (at least) one suggestion:1. In my trial, the countdown timer is reading one hour too many although the count up from past due is OK.

2. It would be handy if it could minimize to the Task Bar instead of only being able to minimize or close.

3. Incorporating a pop-up alarm of some kind might be a fun thing.

BTW: It seems to save on close. So what's the need/purpose of the "Save" button?BTW2: A cool icon would be fun, too. DC member "ak_" seems to have a flair for this. See his File Nanny submission.

Thanks again for you work!!

TruckerJim says "You can go down a hill too slow a thousand times. But too fast only once."

I wrote you a little something, try it out and let me know if it's close to what you want.

Wow! Thanks for your quickwork, Ralf!

Yes, it's pretty much what I wanted, except for the bug in the time calculation. It seems if you enter a date across a month boundary with the day less than today (e.g. 3/11) then it adds on a month and the same for months and years (27/1/08 gives 1 year 3 months, 2 days)

I hadn't thought of including time. Perhaps other people have ideas about time settings to either use an app for a given time or pop it up after a given time, but that seems a different snack.

If I overrun the deadline I'm going to either drop the task or reschedule, so negative time doesn't make much sense. Ideally, I'd like Due d to be interpreted as "due that day of this month, next month if d<today" and similarly for Due d/m.

If I overrun the deadline I'm going to either drop the task or reschedule, so negative time doesn't make much sense. Ideally, I'd like Due d to be interpreted as "due that day of this month, next month if d<today" and similarly for Due d/m.

1. In my trial, the countdown timer is reading one hour too many although the count up from past due is OK.

Feexed! See above.

Quote

2. It would be handy if it could minimize to the Task Bar instead of only being able to minimize or close.

I'll do that too in the next build.

Quote

3. Incorporating a pop-up alarm of some kind might be a fun thing.

I thought about that, and still might do it, but... the I got the feeling from JennyB that there's not a tremendous sense of urgency about these tasks, that this was intended as a kind of an automated agenda. If the stuff goes past due, it just gets rescheduled.

But I might do it anyway -- I'm finding I kind of like this wee thingie for my own use. :-)

Quote

BTW: It seems to save on close. So what's the need/purpose of the "Save" button?

Since this is the kind of thing that might run continuously in the background, it'd be a shame to lose your latest task twiddlings should the computer crash. I *could* alter things so that every time the user adds/edits/removes a task the stuff gets saved... what do you think?

Quote

BTW2: A cool icon would be fun, too. DC member "ak_" seems to have a flair for this. See his File Nanny submission.

I'm now getting only days and seconds in the countdown/up. No hours or minutes.

Understood on reschedule of past due. But I, too, like the count up as I'm usually late on everything. Due in no small part to having similar habits to JennyB (surfing for two hours before getting down to what I'm supposed to be doing)!

Ref: Saving - I think that auto save with every entry would be the safest and easiest thing if you can do it. I love processes that help protect me from my worst enemy ... ME!

Again with rescheduling and alarms - I take your (and JennyB's) point. It might be an over kill.

TruckerJim says "You can go down a hill too slow a thousand times. But too fast only once."

Awesome- finally something I can use to keep track of stuff I need to do (and when it has to be done by) - the Windows Sidebar "Notes" gadget won't let you go past 10 notes, and I had about 20 things to do last week. I'll just use this side-by-side with my Notes when ToDoOrDie gets full.

Double 'ray! I can confirm that this also works using day-first settings. However, a month less than the current month is not yet interpreted as next year. That will be important shortly!

Thinking a bit more about alarms - I definitely don't want one te go off when a deadline passes, but this might be useful:

For n is interpreted thus - When the file is launched, TDOD is hidden, and pops up at the end of n minutes. A running total of time spent on the task is displayed.

Two reasons: if there is something I've been avoiding I can maybe persuade myself to spent just ten minutes trying to get started. OTOH, if I've been a very good girl, I can reward myself with a strictly limited amount of Googling.

Double 'ray! I can confirm that this also works using day-first settings. However, a month less than the current month is not yet interpreted as next year. That will be important shortly!

I did this. Specifying a day and month selects the next occurence if the specified day+month is today or past.

However, the syntax is now "Due m/d" instead of Due d/m". I changed it for consistency since some parts of the app were thinking day/month and others month/day. If you'd prefer the European d/m syntax let me know and I'll swap it out. Really no trouble!

Quote

Thinking a bit more about alarms - I definitely don't want one te go off when a deadline passes, but this might be useful:

For n is interpreted thus - When the file is launched, TDOD is hidden, and pops up at the end of n minutes. A running total of time spent on the task is displayed.

I'll have to ponder the best way to do this. I like the idea, and I like the "For n" syntax, but just gotta figure a way to fit it into the GUI without it looking crowded. Maybe I'll implement a right-click context menu, where you can choose to "Open" or "Open for n minutes" or something.

You want an alarm to "bing" when the app restores itself at the timeout?

Is it conceivable you'd have more than one launched task counting down simultaneously?

UPDATE: Almost forgot! Anyone with artistical skills want to make me a cool 32x32 icon for this wee beastie? The one I'm using is so generic...

However, the syntax is now "Due m/d" instead of Due d/m". I changed it for consistency since some parts of the app were thinking day/month and others month/day. If you'd prefer the European d/m syntax let me know and I'll swap it out. Really no trouble!

European syntax please, it's what I normally use. I can see the logic of month-first for sorting,but that does not apply here.

Quote

I like the idea, and I like the "For n" syntax, but just gotta figure a way to fit it into the GUI without it looking crowded. Maybe I'll implement a right-click context menu, where you can choose to "Open" or "Open for n minutes" or something.

You want an alarm to "bing" when the app restores itself at the timeout?

Is it conceivable you'd have more than one launched task counting down simultaneously?

No need to bing (but you might put it in for Big Jim). I'll have my eyes on the screen, and I'll only be timing one task at a time. The idea is that I promise "Right, for the next n minutes I will do only this." If TDOD pops up again and I'm doing something else, then I'll know I am cheating myself.

I was thinking a default period in the ini file (0 meaning don't count time), and put a For statement in the description of any entry that needs to vary.

- Fixed bug in date + time evaluation function where using a date WITHOUT a year component but WITH a time component (e.g. "12/31 8:00 pm") freaked it the hell out.

- If American style dates annoy you, the parser should handle long date formats like "31 Dec 2007" or "December 31, 2007". It's in there, but the code is (shall we say) only lightly tested.

- New "For" feature. JennyB requested that TODOD track the time she spends working on an item, then pop up at predefined intervals to remind her with a total accumulated time.

To configure this feature, include the optional magic keyword "For nn" in the task description like so:

...where "nn" is the number of minutes you would like TODOD to wait before popping up -- 30 minutes in the example. Then, when you launch the item (by double-clicking its icon) TODOD scurries away to the tray and waits 30 minutes before popping up again. As a bonus, the cumulative total spent with a particular document is tracked and displayed as the (+2:23) in the example. Each document has its own time counters, and all counters are saved between sessions. Note that the popup timer only works with one document at a time... start a new one and the first timer is stopped and the second one starts.

When minimized to the tray, hovering the mouse over the TODOD icon displays the elapsed time, the remaining time until the annoying popup pops, and the total time spent messing with the current document for the life of TODOD's tracking it.

Upon popping up, it plays a brief sound: Notify.wav located in the TODOD folder. If you don't have Notify.wav, one will be created for you. If you wish, replace Notify.wav with whatever .wav file you prefer. Deleting it, however, is futile as Notify.wav will be recreated automatically upon TODOD startup. Muhahahaha!

Whew. Hope all that makes sense; if not please say so.

CleverCat: I dropped you a personal message about your icon. (Thanks!)

JennyB: I am so very sorry it took as long as it did for me to get moving on this again. I've not been doing much recreational coding lately, since work's been sucking the life out of me. But I found some time now, and I hope this is close to what you envisioned. Get back to me with bugs and/or feedback and I'll turn it around quicker, I promise.

Thanks,Ralf

UPDATE: Added a second edition with an alternate icon design provided by CleverCat. If JennyB prefers this one, I'll make it the default for the project.

JennyB: I am so very sorry it took as long as it did for me to get moving on this again. I've not been doing much recreational coding lately, since work's been sucking the life out of me. But I found some time now, and I hope this is close to what you envisioned. Get back to me with bugs and/or feedback and I'll turn it around quicker, I promise.

Thanks,Ralf

UPDATE: Added a second edition with an alternate icon design provided by CleverCat. If JennyB prefers this one, I'll make it the default for the project.

I do prefer the new icon (thanks, CleverCat )

The main program is giving trouble, though. No response to "Due" or "For" and it doesn't minimise to the tray.