View Single Post
Quote:
Originally Posted by al_f View Post
I really try to think of contexts in terms of "what do I absolutely need to have to accomplish this task?". If you think of them in this way (and you're rigorous about your processing) there is really very little if anything that needs multiple contexts.
I agree with this. So far, I create a context when an "I cannot do task such-and-such without so-and-so" situation comes up, and not any other time.

But, consider this scenario:

For some tasks (eg. "revise a document"), I just need my mac. Network doesn't matter, location doesn't matter, my lap will do fine as a working surface.

For some tasks, I need a desk (home or office will do), so I can spread out papers and so forth -- I do not always have my mac when I am at a desk, and not all desk tasks require my mac.

For some tasks, I need both my mac and a desk. (Doing my taxes this year fit into this category.)

For some tasks, I need the stacks of technical documentation that are in my office; my office happens to have a desk. I do not always have my mac when I'm at my office, and do not always need it for some of these tasks. (Studying a standards document and an architecture document and how they interrelate is an example of "need my office, don't need my mac". If I know my day will be filled with stuff like that, I sometimes leave my mac at home.)

For some tasks, I need my mac and those stacks of technical documentation. (Implementing code based on an architecture document and standards document is an example of "need my office, need my mac".)

For some tasks, I need to work with one of my co-workers. I do not always have my mac when I'm with that co-worker, and do not always need it for some of these tasks. I also do not always need the documentation from my office for these tasks, so some for example we could do if we happened to be having lunch somewhere.

For some tasks, I need my mac, the documentation from my office, and my co-worker in order to make any progress.

(Informally going over an architecture plan is an example of "need my co-worker but nothing else". Formally going over a specific implementation plan is an example of "need my co-worker and my office but not a mac". Implementing a feature together for which each of us has all the necessary information in our heads is an example of "need my co-worker and a mac but not my office" (so we could do that in a meeting room or something). Implementing a feature for which we both have to work together and we both need access to technical documentation is an example of "need my co-worker, need my office, need my mac".)

I am struggling with how to represent this sort of situation. My ultimate goal is to be able to ask the question "given the resources I have right now, what are the tasks it's possible for me to make progress on?".

When I'm in my office, and have my mac, and don't have my co-worker, I want to see all the tasks that just require my mac, and all the tasks that just require my office, and all the tasks that require both my mac and my office, but none of the tasks that require my co-worker. If he comes in in the afternoon, I want to be able to indicate that he's now available, and suddenly see those tasks show up as well.

Do I really need to make seven different contexts (2 cubed, for three present/absent conditions, minus the "none present" combination) and always remember to select combinations of them (perspectives?) to achieve this?

I notice that I'm asking for the opposite of what most folks here are asking for. I want a task to be shown only if all the contexts that apply are currently selected ("show me things I can do when I have my computer, my manuals, and my co-worker"); others seem to want it to be shown if any of the contexts that apply are selected ("show me things related to the phone", "show me things involving Sue").

Any ideas?