Doing 1.2 - Essential Documentation



You should start by installing and playing with the program, but please read this file before you trust any real data to Doing.

I have kept it as short as possible in the hope that people will read it. It only contains information that is not obvious, and you will save yourself much time and confusion by reading on.


Data Model

In Doing you are always doing something, even if its just a certain something called 'Nothing'. That means that I dont need to store end times or durations, but just the times of the transitions and the names of the activities following them. (I use the names rather than some database ID so that the records in the history continue to mean something even after activities get deleted from the list of choices.)

If you rename an activity I rename all of its transitions, but if you delete it I do nothing. In this case the pattern and formal names are no longer available. The activity list and history are in the databases 'Do4-Acts' and 'Do4-Trans' respectively.

The advantage of this format is that it has little redundance (duplicated data) and is therefore very robust (no inconsistent states for the data). Furthermore, I am storing your data in the raw form in which you entered it, rather than some processed version whose flexibility would be limited by my imagination. All processing of the data gets done at the export stage.

Using the Clock

This is a bit complicated at first but becomes very ergonomic once you've got the hang of it.

  1. Very alert people can just click on the activities when they start them.
  2. Ordinary mortals will often have to wind the clock back before clicking the new activity, because they probably started it some time ago. Theres nothing to prevent you from winding forward and making entries for the future too, but this doesn't seem to happen as often.
  3. Doing works to the nearest minute, and won't store stints (periods of a single activity) shorter than this. That means that if when clicking in the list, you miss and select a different activity, just hit the right one quickly. Only in the unlikely event that the current minute changed in between the two clicks would you get a one-minute stint of the wrong activity, but you could correct this in the 'see' tab anyway.
  4. As you wind the clock, you should see the list selection and stint-note changing to show what you were doing at the time you wind to.
  5. Suppose you've been doing Project1 for a few hours, but now decide to reclassify this time as Project2. You should wind the clock back to the exact minute when Project1 started (the earliest minute at which Project1 is selected in the list) and then hit Project2. This works for the same reason as what I said in point 3.
  6. Suppose you clicked Project1 half an hour ago with good intentions, but now your conscience tells you that you havn't really started working yet. Click Project1 again to move its start time to now, and then get working.
  7. Similarlarly (but less usefully) if you currently have 'Nothing' until 9:30 and Project1 thereafter, winding to 9:00 and clicking Project1 will move Project1's start time back to 9:00.

Purge

Doing likes to keep two whole months of data plus this month so far. You are supposed to have exported to MSOffice or whatever by then. If it finds itself with data older than this it asks to purge on startup.

Minor Updates

If you agreed to receive email from me, I will inform you of minor updates as they appear. These are always free and contain bug fixes, cosmetic improvements and minor features that really should have been there all along. They dont include major new functionalities.

You should install the minor updates as I tell you about them, even if you can't see anything wrong with your current version. That was a warning.

If you chose not to receive email from me, you can send me a mail to give me permission after all. Otherwise you can occasionally check the current minor version number at the web site.

Other uses

Because of the flexible data model and reporting capabilities, you can use Doing to record other things too. Here are a couple of examples:

Requests

I am pondering the relative importance of the following features/extensions for the next update. You might want to lean on me to do some things more urgently than others.

Here are the contact addresses:

Pre-sales enquiries:info@stone-age-software.com
Technical support:help@stone-age-software.com
Suggestions for features or changes:gimme@stone-age-software.com
Download/Install/Payment problems:emergency@stone-age-software.com
Bugs in software:idiot@stone-age-software.com
Webmaster:webmaster@stone-age-software.com


Enjoy,
Adrian