GTD - How to search for projects without Next Actions?
gregmay82 says:
I am just getting started with RTM and trying to implement "Getting Things Done." I assign a unique tag to next actions and have smart lists for each context that returns only next actions for that context.
I would like to run a daily search that returns a list of projects that have no "next action" identified (so I can identify some). Otherwise, of course, those projects will stall. I have too many projects to look through each one "manually" each day, and don't want to wait until the weekly review because I don't want projects to stall that long.
If there is a way to do this with my set-up, great. If I need to change my set-up to do it, that's great, too -- unless it requires me to create a list for each project.
So, here's a little about my set-up..
I do not use lists for projects because I have a lot of projects and do not want to clog up the interface with all those list tabs.
From what I've seen in the forums, many RTM-GTDers feel likewise, and thus create a task for each project name and give each "task" that is actually a project a unique tag, like "proj." This is what I am doing.
I also create a unique tag for each project, which I assign to the project and to each task in a project.
FOR EXAMPLE, the project "replace gate" gets tagged with "proj" and "replace-gate", and all the tasks associated with the project get tagged with "replace-gate". This allows me to click on "replace-gate" in the tag cloud and get all tasks for that project in front of me. And, as I already noted, I tag Next Actions with a unique tag ("gtd-next-action")
Now, suppose I check off all the existing Next Actions in the "Replace Gate" project, leaving several tasks in the project that still need to be completed, but none of them tagged as a next action. How could I run a search that would return that project because it lacks any tasks that are "next actions"?
Ideas?
I would like to run a daily search that returns a list of projects that have no "next action" identified (so I can identify some). Otherwise, of course, those projects will stall. I have too many projects to look through each one "manually" each day, and don't want to wait until the weekly review because I don't want projects to stall that long.
If there is a way to do this with my set-up, great. If I need to change my set-up to do it, that's great, too -- unless it requires me to create a list for each project.
So, here's a little about my set-up..
I do not use lists for projects because I have a lot of projects and do not want to clog up the interface with all those list tabs.
From what I've seen in the forums, many RTM-GTDers feel likewise, and thus create a task for each project name and give each "task" that is actually a project a unique tag, like "proj." This is what I am doing.
I also create a unique tag for each project, which I assign to the project and to each task in a project.
FOR EXAMPLE, the project "replace gate" gets tagged with "proj" and "replace-gate", and all the tasks associated with the project get tagged with "replace-gate". This allows me to click on "replace-gate" in the tag cloud and get all tasks for that project in front of me. And, as I already noted, I tag Next Actions with a unique tag ("gtd-next-action")
Now, suppose I check off all the existing Next Actions in the "Replace Gate" project, leaving several tasks in the project that still need to be completed, but none of them tagged as a next action. How could I run a search that would return that project because it lacks any tasks that are "next actions"?
Ideas?
leah.shalom says:
You may want to try searching tagcontains:gtd-next-action
andrewski (Remember The Milk) says:
I can't think of a way that you could return the project's task by searching for tags corresponding to the individual tasks, but you could probably do as well to search for any tasks that are assigned to projects but not marked as next actions.
Perhaps you could rename each project tag as "proj-" or such, then you could search for all projects' tasks with tagContains:proj. This would allow you to search for any tasks that haven't yet been marked as next actions.
There may be a way to do something more like what you are looking for; I just can't think of it at the moment. Let's keep trying!
Perhaps you could rename each project tag as "proj-" or such, then you could search for all projects' tasks with tagContains:proj. This would allow you to search for any tasks that haven't yet been marked as next actions.
There may be a way to do something more like what you are looking for; I just can't think of it at the moment. Let's keep trying!
gregmay82 says:
Thanks for these suggestions. leah.shalom's idea would, of course simply turn up tasks tagged as next actions. I could compare the projects that show up to the whole list of projects, and know that the missing ones lacked NAs. Not ideal, but workable.
andrewski, I'm not sure I understand your suggestion . . . are you suggesting I search on a project-by-project basis, rather than a global search?
andrewski, I'm not sure I understand your suggestion . . . are you suggesting I search on a project-by-project basis, rather than a global search?
andrewski (Remember The Milk) says:
No, you would get a global search, as tagContains:proj would return all tasks that were tagged with any project's name (assuming you changed your project tags to start with "proj-").
gregmay82 says:
andrewski, thanks for the clarification.
If I read you right, you are suggesting I search for all tasks that are assigned to projects, then browse the list for list for next actions, so I know the project with which those NAs are tagged indeed have NAs. But with 15-30 projects at any one time, this is going to return an awful lot of tasks that will not make it easy to identify the project tags that LACKnext actions. (I am not a GTDer that just writes the NA for a project and stops -- I'm the kind of GTDer that brainstorms a whole lot of actions for each project, then, as each NA gets checked off, identifies the next NAs from the tasks already listed under the project. So the search will return multiple tasks for virtually every project.)
On a project-by-project basis, I can prevent a project from lacking an NA rather easily, I suppose. After I check off an NA, I should simply bring up all the tasks tagged with that project and see if there are any remaining NAs (I can have more than one NA in a project if they are not dependent on any other actions).
I can do the same thing at any time, just running through the projects tag by tag.
What I'm looking for is a global solution, though, that will save time and encourage me to check more frequently for projects that need NAs assigned. A short form of weekly review, as it were.
We're not there yet, but I say we follow the call of your initial response: "Let's keep trying!"
If I read you right, you are suggesting I search for all tasks that are assigned to projects, then browse the list for list for next actions, so I know the project with which those NAs are tagged indeed have NAs. But with 15-30 projects at any one time, this is going to return an awful lot of tasks that will not make it easy to identify the project tags that LACKnext actions. (I am not a GTDer that just writes the NA for a project and stops -- I'm the kind of GTDer that brainstorms a whole lot of actions for each project, then, as each NA gets checked off, identifies the next NAs from the tasks already listed under the project. So the search will return multiple tasks for virtually every project.)
On a project-by-project basis, I can prevent a project from lacking an NA rather easily, I suppose. After I check off an NA, I should simply bring up all the tasks tagged with that project and see if there are any remaining NAs (I can have more than one NA in a project if they are not dependent on any other actions).
I can do the same thing at any time, just running through the projects tag by tag.
What I'm looking for is a global solution, though, that will save time and encourage me to check more frequently for projects that need NAs assigned. A short form of weekly review, as it were.
We're not there yet, but I say we follow the call of your initial response: "Let's keep trying!"
(closed account) says:
Use "+" for projects. That might be the trick.
My projects are on a projectlist. The projectplan is attached in a note.
The name of this list is: + I give each project a unique tag, starting with: +
I.e. the project "marathon" has the tag: "+marathon".
All next actions for this project "marathon" also have the tag "+marathon" and of course more tags to add other context.
I do my reviews in the RTM iPhone App Edition. Using that App, finding projects without next actions is easy. Navigate to the Tags screen (by tapping its icon in the bottom bar, or its item underneath More). All tags starting with "+" are grouped together and somewhere on top of the screen. The projects without next actions are the +tags with only one (1) task.
I.e. one of these tags is "+marathon". If it has only one (1) task associated with it - then I know they are no next actions planned.
In the RTM web app it is not that easy - but it can be done: go to the Settings > Tags. All tags starting with "+" are grouped together. Hoover the pointer over a "+tag" and look in the details of the tag. If there is only one (1) task associated with it, you know there are no next actions.
My projects are on a projectlist. The projectplan is attached in a note.
The name of this list is: + I give each project a unique tag, starting with: +
I.e. the project "marathon" has the tag: "+marathon".
All next actions for this project "marathon" also have the tag "+marathon" and of course more tags to add other context.
I do my reviews in the RTM iPhone App Edition. Using that App, finding projects without next actions is easy. Navigate to the Tags screen (by tapping its icon in the bottom bar, or its item underneath More). All tags starting with "+" are grouped together and somewhere on top of the screen. The projects without next actions are the +tags with only one (1) task.
I.e. one of these tags is "+marathon". If it has only one (1) task associated with it - then I know they are no next actions planned.
In the RTM web app it is not that easy - but it can be done: go to the Settings > Tags. All tags starting with "+" are grouped together. Hoover the pointer over a "+tag" and look in the details of the tag. If there is only one (1) task associated with it, you know there are no next actions.
(closed account) says:
The thing is, you cant search for tags in RTM. So, what you ask cant be done (for now!).
However, this Greasemonkey script lets you amongst other things "drill down". So search for next actions, and it wont let you drill down to the projects that need next actions. Kinda weird, but should work. Addtionally, if you click on a project and it doesnt let you drill down on next actions, that project doesnt have any (this could also be a good method, you would need to click every project, but not check every task!)
http://userscripts.org/scripts/show/26057
It shows up a bit garbled in non-pro accounts, you are pro, but if you want to use it in another account or reccomend it, make sure to make a small edition (it's explained in the archived comments in the page I linked!)
Hope I helped, took me a WHILE to think up that one ;).
However, this Greasemonkey script lets you amongst other things "drill down". So search for next actions, and it wont let you drill down to the projects that need next actions. Kinda weird, but should work. Addtionally, if you click on a project and it doesnt let you drill down on next actions, that project doesnt have any (this could also be a good method, you would need to click every project, but not check every task!)
http://userscripts.org/scripts/show/26057
It shows up a bit garbled in non-pro accounts, you are pro, but if you want to use it in another account or reccomend it, make sure to make a small edition (it's explained in the archived comments in the page I linked!)
Hope I helped, took me a WHILE to think up that one ;).
devon20net says:
Wouldn't this search work:
tag:replace-gate NOT tag:gtd-next-action
tag:replace-gate NOT tag:gtd-next-action
(closed account) says:
no, devon, he wants to find the LISTS that dont have next actions, not the tasks. Your search lets him see the tasks that arent next actions, but not if he has next actions or not in that list.
I have to agree that's what I understood at first too though. Great minds think alike!
I have to agree that's what I understood at first too though. Great minds think alike!
devon20net says:
I reread your post and see I misunderstood - on two counts.
First you wanted a global search, not by individual projects. As others said, to do that you would have to preface each project with a "project code". Mine is ".p_" so my individual project would be ".p_replace-gate" and the search I suggested should be
tagContains:.p_ NOT tag:gtd-next-action
However, I thought you had future tasks already identified but not yet tagged as next-actions. I see now that is not the case and my search wouldn't work for you.
It's a scenario I hadn't considered, so I'm reading the other responses with interest.
First you wanted a global search, not by individual projects. As others said, to do that you would have to preface each project with a "project code". Mine is ".p_" so my individual project would be ".p_replace-gate" and the search I suggested should be
tagContains:.p_ NOT tag:gtd-next-action
However, I thought you had future tasks already identified but not yet tagged as next-actions. I see now that is not the case and my search wouldn't work for you.
It's a scenario I hadn't considered, so I'm reading the other responses with interest.
gregmay82 says:
WOW! devon20net, vjcamarena and ovanrijswijk, thanks for your suggestions. I see from the most recent exchange between vjcamarena and devon20net that I did not do a good job of explaining what I want to accomplish. I'll try not to confuse anyone any further!
Everyone seems to have some parts right and other parts wrong. vjcamarena is right, in the sense that he realizes I want the search to return LISTS (i.e. PROJECTS, whether that is an actual RTM List or is instead designated with a priority, tag, or character string) that have no next action designated. devon20net got that I was looking for a global search, but he's wrong when he writes this:
However, I thought you had future tasks already identified but not yet tagged as next-actions. I see now that is not the case and my search wouldn't work for you.
I DO have future tasks identified but not yet tagged as next actions. Otherwise, ovanrijswijk's suggestion would be a good workaround. But it won;t work precisely because i DO have those extyra tasks not yet designated a next action.
It's easier to understand what I want if you understand WHY I want it. Since I want my daily work to be driven off "next actions," I intend to use a smart list that returns all next actions (and ONLY next actions) across all projects. If that's going to work, then I can't have a project sit without a designated next action fro long, or it will be neglected. Designating only during the weekly review leaves too long an interval between designations. I want to do this on a daily basis, which is why I am looking for a smart list query that will return only the projects that lack next actions -- otherwise, I have to look through 30-40 projects every day to find them.
For the project "replace gate," e.g., I might have several tasks listed, with only one designated a next action, like this:
REPLACE GATE
Measure for gate (next action)
Calculate lumber required
Buy lumber
Assemble gate
Mount gate
Here's where the problem comes in. If I check off the next action in the list (measure for gate), there are no more next actions associated with that project (even though there are several tasks listed) , so the smart list I work off -- which displays ONLY tasks designated as next actions -- displays no tasks related to that project, and nothing gets done on that project again until I designate another task as a next action so that it shows up in my smart list. If I wait until my weekly review to go through and identify next actions, then the project will languish until my weekly review.
The way I would LIKE to get around this problem is to have a smart list that would list all projects for which none of its associated tasks has been designated a next action. In other words, the query should carry out the following conceptual functions:
Look at all projects
Look at all the tasks assigned to that project
IF none of the tasks in any given project is designated a next action,
THEN return that project as a result in the smart list.
In the example above, once I checked off "Measure for gate," my query would look at the REPLACE GATE project, look at all of the associated tasks, note that none of them was designated a next action, and thus place REPLACE GATE in the search results.
I would then see that the project REPLACE GATE needs a next action assigned, then use a common tag to pull up all of its tasks and select one as the next action.
I am open to just about any means of implementing this. Whether next actions are designated by a tag, a priority, or a special string in the name of the task doesn't matter (I have my preferences, but for now it doesn't matter).
Now, as I was typing this out, it occurred to me there is a very low-tech answer to this problem! Every time I check off an item in a project, I IMMEDIATELY pull up the tasks for that project and designate a new next action. Which is what I will do for the time being.
But the beauty of the query I would like to run is that it will make up for those times where I forget to do so.
Again, thanks for your suggestions, devon20net, vjcamarena and ovanrijswijk.
I installed the rememberthenmilkenhanced script vjcamarena suggested, but I don't get the "drill down" concept. A little help, VJ? (I couldn't find any good explanations of the features of this script.) yet. I've installed the script, but it doesn't appear to me that the others will accomplish what I want (and perhaps it cannot be done).
ovanrijswijk's idea is OH SO CLOSE to being a great workaround, but it appears to assume that I do not have additional tasks in the project that are not yet designated next actions.
I' m going to try assigning a priority to next actions and see if that helps.
Everyone seems to have some parts right and other parts wrong. vjcamarena is right, in the sense that he realizes I want the search to return LISTS (i.e. PROJECTS, whether that is an actual RTM List or is instead designated with a priority, tag, or character string) that have no next action designated. devon20net got that I was looking for a global search, but he's wrong when he writes this:
However, I thought you had future tasks already identified but not yet tagged as next-actions. I see now that is not the case and my search wouldn't work for you.
I DO have future tasks identified but not yet tagged as next actions. Otherwise, ovanrijswijk's suggestion would be a good workaround. But it won;t work precisely because i DO have those extyra tasks not yet designated a next action.
It's easier to understand what I want if you understand WHY I want it. Since I want my daily work to be driven off "next actions," I intend to use a smart list that returns all next actions (and ONLY next actions) across all projects. If that's going to work, then I can't have a project sit without a designated next action fro long, or it will be neglected. Designating only during the weekly review leaves too long an interval between designations. I want to do this on a daily basis, which is why I am looking for a smart list query that will return only the projects that lack next actions -- otherwise, I have to look through 30-40 projects every day to find them.
For the project "replace gate," e.g., I might have several tasks listed, with only one designated a next action, like this:
REPLACE GATE
Measure for gate (next action)
Calculate lumber required
Buy lumber
Assemble gate
Mount gate
Here's where the problem comes in. If I check off the next action in the list (measure for gate), there are no more next actions associated with that project (even though there are several tasks listed) , so the smart list I work off -- which displays ONLY tasks designated as next actions -- displays no tasks related to that project, and nothing gets done on that project again until I designate another task as a next action so that it shows up in my smart list. If I wait until my weekly review to go through and identify next actions, then the project will languish until my weekly review.
The way I would LIKE to get around this problem is to have a smart list that would list all projects for which none of its associated tasks has been designated a next action. In other words, the query should carry out the following conceptual functions:
Look at all projects
Look at all the tasks assigned to that project
IF none of the tasks in any given project is designated a next action,
THEN return that project as a result in the smart list.
In the example above, once I checked off "Measure for gate," my query would look at the REPLACE GATE project, look at all of the associated tasks, note that none of them was designated a next action, and thus place REPLACE GATE in the search results.
I would then see that the project REPLACE GATE needs a next action assigned, then use a common tag to pull up all of its tasks and select one as the next action.
I am open to just about any means of implementing this. Whether next actions are designated by a tag, a priority, or a special string in the name of the task doesn't matter (I have my preferences, but for now it doesn't matter).
Now, as I was typing this out, it occurred to me there is a very low-tech answer to this problem! Every time I check off an item in a project, I IMMEDIATELY pull up the tasks for that project and designate a new next action. Which is what I will do for the time being.
But the beauty of the query I would like to run is that it will make up for those times where I forget to do so.
Again, thanks for your suggestions, devon20net, vjcamarena and ovanrijswijk.
I installed the rememberthenmilkenhanced script vjcamarena suggested, but I don't get the "drill down" concept. A little help, VJ? (I couldn't find any good explanations of the features of this script.) yet. I've installed the script, but it doesn't appear to me that the others will accomplish what I want (and perhaps it cannot be done).
ovanrijswijk's idea is OH SO CLOSE to being a great workaround, but it appears to assume that I do not have additional tasks in the project that are not yet designated next actions.
I' m going to try assigning a priority to next actions and see if that helps.
(closed account) says:
Yeah, this explanation was much easier to understand. Your low-tech idea might be the best, actually, but I'll try to clear what the script does and what my original idea was.
Do a smart search (say, for example, tag:job). Imagine that you see all that has to do with your job, and it's a LOT of stuff. You look at a task and decide you need to focus on the "sales" project, inside "job". Normally, you would have to re-write the search. With the extension, you can look to the right, where you see the names of tags with pluses and minuses. Click on the plus beside "sales" and it adds it to the search, refining it instantly. (the minus finds the ones that DONT have sales, and clicking on actually sales replaces the search for "job" with the search for "sales").
My idea is, since it doesnt let you refine a search with a tag that doesnt appear (if none of the tasks that appear when you search for "job" has "sales" tagged, it wont let you refine it, it would be pointless), you could do the following:
-Search for "next-action"
-Look at the possible refinements
-If some tag is missing, that project doesnt have a next-action.
Alternatively;
-Search for a particular project
-If next-action isnt a possible refinement, it has no next actins. No need to look at the actual tasks. (should be at least quicker...)
It seems unwieldy at frst, but should be quick and efficient. Give it a try.
Victor
Do a smart search (say, for example, tag:job). Imagine that you see all that has to do with your job, and it's a LOT of stuff. You look at a task and decide you need to focus on the "sales" project, inside "job". Normally, you would have to re-write the search. With the extension, you can look to the right, where you see the names of tags with pluses and minuses. Click on the plus beside "sales" and it adds it to the search, refining it instantly. (the minus finds the ones that DONT have sales, and clicking on actually sales replaces the search for "job" with the search for "sales").
My idea is, since it doesnt let you refine a search with a tag that doesnt appear (if none of the tasks that appear when you search for "job" has "sales" tagged, it wont let you refine it, it would be pointless), you could do the following:
-Search for "next-action"
-Look at the possible refinements
-If some tag is missing, that project doesnt have a next-action.
Alternatively;
-Search for a particular project
-If next-action isnt a possible refinement, it has no next actins. No need to look at the actual tasks. (should be at least quicker...)
It seems unwieldy at frst, but should be quick and efficient. Give it a try.
Victor
gregmay82 says:
Victor (vjmacarena) and everyone else, I can't tell you how much i appreciate your help. Thanks so much for that explanation of how the user script works. I'll play around with it and let you know how it goes.
devon20net says:
I'm not quite getting how Victor's script works. I guess I'll have to actually install it to see how it works.
Greg - what I do won't get you your list with only projects that have no nextactions, but it will give you an easy to read list that makes it simple to identify those projects.
Here's what I do:
- all my project tags begin with ".p-". The tag for the gate project is ".p-gate"
- besides the tag, I assign a unique descriptor for each project. For your gate project it would be "GATE". The description of every task in that project will begin with "GATE: ". What that does is forces all the tasks of that project to be grouped together because the list is alphabetically sorted. This requires that no tasks have priorities or due dates assigned as that will muck up the groupings. If you are driving these project choices strictly by next actions you shouldn't need them. (If you also have project that are driven by deadlines, you could start their tags with ".pd-" and handle them with a different smart list.)
- I also create a "task" for each project that is just a description of the project. I often attach project notes to it. I make sure that this task will sort to the top of the project's tasks by prefacing the decription with a special character that will sort before alpha characters. For example, ">" will sort before "a" so my project description would be: "GATE: >>>description". This helps to make the project groups more obvious and has some other benefits as well.
Now I can do this search: "tagContains:.p-" and I will get a neatly sorted list with all of the tasks (and description) of each my projects grouped together. It's easy to identify projects that need N/A assigned. It also shows you any projects that you forgot to assign any tasks to, as well as completed projects.
Look at this screenshot.
That's how projects work in my little corner of RTM.
Dawn
Greg - what I do won't get you your list with only projects that have no nextactions, but it will give you an easy to read list that makes it simple to identify those projects.
Here's what I do:
- all my project tags begin with ".p-". The tag for the gate project is ".p-gate"
- besides the tag, I assign a unique descriptor for each project. For your gate project it would be "GATE". The description of every task in that project will begin with "GATE: ". What that does is forces all the tasks of that project to be grouped together because the list is alphabetically sorted. This requires that no tasks have priorities or due dates assigned as that will muck up the groupings. If you are driving these project choices strictly by next actions you shouldn't need them. (If you also have project that are driven by deadlines, you could start their tags with ".pd-" and handle them with a different smart list.)
- I also create a "task" for each project that is just a description of the project. I often attach project notes to it. I make sure that this task will sort to the top of the project's tasks by prefacing the decription with a special character that will sort before alpha characters. For example, ">" will sort before "a" so my project description would be: "GATE: >>>description". This helps to make the project groups more obvious and has some other benefits as well.
Now I can do this search: "tagContains:.p-" and I will get a neatly sorted list with all of the tasks (and description) of each my projects grouped together. It's easy to identify projects that need N/A assigned. It also shows you any projects that you forgot to assign any tasks to, as well as completed projects.
Look at this screenshot.
That's how projects work in my little corner of RTM.
Dawn
(closed account) says:
That is a clever arrangement.
steeef says:
I've yet to find an automatic way to do this as well. I came from MonkeyGTD (a version of a Tiddly Wiki) that had this feature built in, and I relied on it to keep projects moving. It was a nice way to reduce the amount of projects I needed to review weekly.
devon's method seems to do a nice job, but the redundancy (having the project name in the tag and the description) bugs me.
devon's method seems to do a nice job, but the redundancy (having the project name in the tag and the description) bugs me.
steeef says:
Also, a few GTD-related RTM setup tutorials mention creating smart lists for each project, using a prefix to group them together (e.g., "proj-"). I've given up on this, as it leads to way too many lists, and they're not automatically hidden if they don't contain any tasks. I would rather look at a smart list of projects, and then click on the tag to list all tasks in this particular project. It just means I'll need to go through each tag when I review.