Projects, sub projects and you.

This wasn’t intended, but given the insight yielded by the discussion on Statuses, I’m now really interested to know how you structure Projects. I think we can refine our Review process.

This is particularly aimed at anyone who has nested/folder-esque projects and sub projects  - e.g. P/GTDInbox/Ideas. How do you do you structure your project and sub-project labels? What is your process for deciding how to categorise? How do you review those projects?

I know in my case, I use P/GTDInbox/Ideas and P/GTDInbox/Bugs, but P/GTDInbox itself is quite redundant. It’s just a convenient way to organise (and hide) my labels.

It raises a really interesting question, which is, should we be doing more with P/GTDInbox? If, on the GTDInbox sidebar, I click P/GTDInbox, I actually expect search results that include that label and all its children (I.e. “label:p-gtdinbox OR label:p-gtdinbox-ideas OR label:p-gtdinbox-bugs“). I certainly think it makes more sense, but it is quite different to the Gmail approach, and therefore I wonder if there is a use case that it would be bad for – the only one I can think is where you are using the parent label for some purpose, and only want to view it on its own.

(I’d also really appreciate any examples where your parent labels – as with my P/GTDInbox – are regularly used even though they have more specific child labels?)

18 Responses to “Projects, sub projects and you.”

  1. Phil Bowman says:

    FWIW, I don’t use nested Projects. I maintain a projects list separately, and label projects like:

    P/H0101 – New Printer

    When complete, I change these to Old/H0101 – New Printer. Hence I’ve voted for the suggestion for a simple way to rename P/ to Old/.

  2. Alan S. says:

    I’m an academic. GTDinbox has been very very helpful to me because, much of the time, “emails are tasks”, and your philosophy with GTDinbox fits my work well.

    I use nested Projects a fair bit, organized either by types of activities (e.g. Grants, Courses) or by organizations I’m involved in. I also rename to Old/ when they’re done (so I like having a good way to do that), but it would in many cases be very useful to me to have the behavior you suggest, where clicking on P/Grants gets me anything labeled P/Grants or any sublabel thereof. (I do use the top-level label for anything that’s universal across all of the subprojects, but generally wouldn’t mind if it took a couple extra clicks to isolate this from getting all of the project and subprojects. Hope that helps!

  3. I work as an independent contractor, doing sales and marketing for book and software publishers. Top level projects are usually the initials of the client company.

    I use sub-projects both as permanent labels for ongoing sub-projects and as temporary labels for sub-projects with definite ends in sight. I also use C/ for context as a way of further sorting, and sometimes I have sub-contexts as well. Specifically, so I can get a higher level view when reviewing, I always label sub-projects with the top level project label. It would be a convenience if I didn’t have to do this, though by setting up filters in advance, I have made Gmail do most of that work for me.

    When I close a project, I relabel it with the word ZOld in front of the entire label. That way, the folder structure of project, sub-projects and contexts is maintained for my records. I use ZOld instead of just Old because the Z places these labels at the bottom of the list, where they are out of my way, rather than right between contexts and projects, where I would have to scroll through them when reviewing my label structure.

  4. Allen Look says:

    I haven’t gotten quite that sophisticated yet – I’m still trying to figure out a way to sort labels and overcome Gmail’s limit of only showing 20 search results on a single page – so I can get all my tasks on a single screen sorted by Today / Next Action / Action / Waiting On / Some Day, etc.

    Currently they show up 20 at a time in messed-up order…

  5. Allen Look says:

    Oh, and still not in love with the nesting of the Today / Action / Next Action / etc. under “To Do”, as it’s just one more click for me now…

  6. Mark says:

    I work at a Medical School, and I have top level “projects” that equate to fixed areas of responsibility; Billing, Clinic Operations, Faculty, Staff, Financial, etc. Under each I may have fixed labels for each: i.e. under faculty I have each faculty member as a “sub-project”, etc. I would love to be able to search top level “projects” and see all “sub-projects” and their associated tasks.

  7. Victor Lau says:

    Normally I use this pattern: P/PREFIX_PROJECT, eg. P/Freelance_Website1, after the project has been finished and closed, I’ll change the label to Old/Freelance_Website1.

  8. Aaron says:

    I’m a Ph.D. student, a lab supervisor, and an engineer. I have lots of projects and most of them use a nested structure. For instance, all my dissertation projects (thesis, experiments, university forms to complete) go under that project. Likewise, my P\Lab folder has 13 sub-projects and I have ~10 for my job. I don’t put anything in the parent level folders, everything goes into a sub-folder. I just use the parents so I don’t have 30 projects on screen at any one time. I think my review process could be considerably quicker if I reviewed the entire parent folder at one time. For example, when I get to the lab in the morning and can do a quick review of all relevant projects at once rather than each individually.

  9. ste says:

    I work as a management consultant, and I use nested projects a lot. Up to now, I had to label emails pertaining to sub-projects with the name of the parent project too, in order to be able to find all the email/references of the parent project; apart from the additional little work required, the main issue is that when in hurry I’m subject to omitting the parent label.
    So I’d like GTDInbox to:
    - automatically associate the email to the parent project too, when I label it with a sub-project; anyway, for a matter of screen space, I’d like to see only the sub-prj label.
    - when I select I project, show what is referred to both the parent project and its sub-projects.
    But I also think that this should be an option inside GTDInbox preferences, I suppose some would GTDInbox to operate differently.

    • MikeHall says:

      Please see my longer top-level post about dual project names for tasks and how I dislike doing them…. However, I like this approach. I could label a task as Project OR subProject, and the system would automatically labels the subProject task with Project too. That would give full control on sorting. I could sort by subProject only, or sort by Project to get all subProject too.

      In my usage, I would never assign anything to Project, instead assigning those general tasks/references to Project/General (or something). That gives the option of sorting on Project/General (and avoiding all the subProjects), Project/subProject or sorting on Project to get it all.

  10. DaveG says:

    I am a software systems/ developer / consultant.

    I have extensively used MonkeyGTD ( http://monkeygtd.tiddlyspot.com/#MonkeyGTD) previously which does not use hierarchical labels and it works very well.
    It implements inheritance so sub projects know what they belong to and in the long run I find this approach simpler and easier to adjust.

    So my vote is against P/xxx altogether…

    However, I imagine this cannot be implemented with Gmail labels because a label is not also an email (whereas in TiddlyWiki a tag is a tiddler. Perhaps this is a request to gmail ;-)

    I mainly seem to be moving gradually because more & more my tasks are set from emails so by using GTDInbox I can avoid lots of copy paste steps.

  11. Arnd says:

    I am a sales and support engineer and have been using GTDInbox for a long time.

    I generally don’t use sub-projects. But I use a folder structure to group related projects.
    (BTW: I use special characters as prefixes so that the GTD labels are sorted at the beginning of the label list:: “!/” for statuses, “+/” for projects, “@/” for contexts, “x/” for old, “_/” timing labels, and “#/” for refs (which I don’t use very much))

    For example, sales projects are grouped in the “Opps” folder:

    +/Opps/090712_BlaCorp
    +/Opps/090925_ACME_Wiget_Deal

    Support cases are organized in the folder “Sup” and then usually in a sub folder for per company:

    +/Sup/XY/090910_GUI_Issue
    +/Sup/XY/090915_New_Release

    When a project is done it gets prepended with an “x/”, e.g. “x/+/Misc/090911_New-Laptop”. Note I conserve the “+/” so that the label can be identified as a project later on.

    Each project name is prepended with an inception date-stamp, so that older projects appear on the top of the list – so I am reminded to get the oldest ones done.

    So IMO extensive sub-project support is not needed. What I would like to see in GTDInbox thogh, is the ability to search for actions in a project group. E.g. I can list all actions for my sales opps.

  12. Allen Look says:

    I’d love to have the ability to see ALL my tasks in the GMail search results view – currently in A20 I think the only way to get that overview is in the popup, which I rarely use. I don’t get the need for it so if there’s an enlightening tidbit on that, just let me know. Currently I’m trying to use my own filter to just see all tasks that aren’t deleted or marked finished. I’d love to be able to sort them by label, with Today on the top, then Next Action, then Action, then Waiting On, etc…

  13. MikeHall says:

    I use nested projects a lot and I do it in different ways. I’ll give the reasons/merits of each. This would be a good read for anyone who uses them.

    1. Nested subProjects in another Project

    P/Loans
    P/Loans/BofA
    P/Loans/WellFargo
    P/Loans/CreditUnion

    I have several nested projects like this. In this example, Loans is used for information/tasks necessary for all my home loans. The subfolders are for tasks/correspondence related to the specific tasks for that bank. In this case, I never need to see all the tasks of the subfolders at the same time because I work on one subProject at a time. This usage is similar to…

    2. Nested subProjects in another Folder

    P/Contracts/Company1
    P/Contracts/Company2
    P/Contracts/Company3 …

    In this example, there is no main project, only subProjects, because there are no tasks or reference items relating to the general category of Contracts. So why do it? In the Projects drop down in emails and in the sidebar, the subProjects are nested in the parent folder and listed as a group. Its a way to organize and group projects, and also hide a long list of subProjects that don’t need top level accessibility.

    3. Prefixed projects

    P/Wedding Flowers
    P/Wedding Location
    P/Wedding Invitations …

    I used this format for my wedding because there were a lot of actions during a short period of my life. I wanted them all to be top-level, but still be organized in some way. When that busy period ended, they all went to Old: (to Z: in my case). I could have easily nested them all in a subFolder by turning “P/Wedding ” to “P/Wedding/”.

    4. Dual tags

    P/NewCondo and P/CondoMoveIn
    P/NewCondo and P/CondoRemodel

    This is similar to #1. You can have tasks in the mainProject or the subProjects, and they are organized in the Projects list. The advantage of this method is that you can sort via the sidebar to get all subProjects in one display, or sort by a single subProject. This is by far my LEAST favorite method or sorting projects because of the extra work involved in assigning double labels. The only reason I’ve done this is when my projects are poorly defined and I realize that tasks relate to multiple projects. I’ve never used this method on purpose.

    So, knowing I have used all four types, how do I want subProjects to be handled in GTDInbox? Personally, I never want to see all my subProject actions at the same time. If I did, I would make them one project. There’s reason to see all Next Actions tasks, or all Phone tasks, or all (sub)Project tasks, but not a reason to see a grouping of subProject tasks. If I’m working on Client2 or WeddingFlowers or LoanBofA then I don’t care about the other clients, wedding tasks, or alternate bank requirements.

    I VOTE TO LEAVE IT AS IT IS. I didn’t know what my recommendation would be until I started reviewing all the ways I use Projects.

    However, I would not object to a change in which Projects included subProjects in a display. I would tweak my existing projects, but it would still work. Here’s what would have to change:

    1. P/Loans would become P/Loans/GeneralTasks. I probably would never sort by the mainProject folder of P/Loans, but any user of GTDInbox would have that option.

    2. Nesting via a folder (instead of a project) and #3 Prefixed Projects names would be unaffected by such a change.

    4. Dual Project names would be unnecessary with the change. This is a good thing.

    Final note: What we really need is the ability the use wild cards in our searches. We need to search on P/Client* as well as P/Client2. That would solve the whole issue.

    Thanks for reading to the bottom. Let me know if this was helpful.

  14. Alan Hart says:

    Andy,
    MikeHall hit it on the head when he suggested that label selection based on wild cards would help this. Personally I would love to see a construct that allowed stacked search parameters including or, and, and not. (a RegEx parser would be nice but I realize it would not get a lot of use).
    I’ve attempted to greatly reduce the number of subProjects by using Projects with Contexts and what Mike calls Double Projects. This reduces how deeply I need to nest and reduces the total number of needed labels. But without multi level sorting and stacked filtering it is much harder to get a convenient overview.
    If there was a text box to allow a few letters to rapidly narrow the selection of subProjects I would not be as loath to have more labels. Although I would still rather factor my labels if I had more convenient filtering tools.
    Sincerely Alan.

  15. Kito says:

    I don’t use nested projects — I flatten the namespace like so: training.topic.development, or sys.admin.configure.router. That way, each project has a unique label I can use across applications (RTM, EverNote, file system).

    I do, however, use nested labels for “Misc” like Clients/IBM.

  16. Jarrod says:

    I would love to see the ability to view all nested projects. I’m an example of someone who has multiple projects with multiple sub-projects which may even have sub-projects themselves. When I first started using GTDInbox I was disappointed that the scripts didn’t already search using “label:project OR label:project/subproject…” Perhaps a toggle setting is in order to enable/disable this feature?

  17. AndyM says:

    (From John Nelson):

    I use sub-labels often. On a cosmetic level, they help to keep my 120+ project labels in order and more accessible when using GTDInbox, though unless the upper level labels are short, using the search function in Gmail gets clumsy (using the Labels dropdown box search function).

    I sometimes assign both the upper-level and sub-level labels to an item, but that would be unnecessary if filters would automatically include sub-levels. In the PalmOS software ShadowPlan (CodeJedi.com), one can mark a filter as “greedy” in which case “the filter matches all children when a parent matches”.

    I suppose GTDInbox could automatically add the higher level labels after a sub-label is chosen, but that seems clumsy to me. Perhaps as a configurable option that might work and probably would be easy to implement.

    I have some canned Gmail filters that I invoke, but I must add that it is hard to get them right: I usually need to construct the search in an editor as multiple lines, then join the lines into one line to paste it into the search box. When the project labels get lengthy, then the queries get harder to read as well, so that is a negative to using nested sub-projects.

Leave a Reply