Add a "Project" tracker

Activity Watch is great at tracking Efficiency (time spent working / total time).

But it’s not as good for tracking Effectiveness (output / time spent working)

(but for the purposes of this post, time spent working on most important work).

I might use “google docs” or “google sheets” but for very different purposes, and so I can’t tell for what exactly I have been using it for.

Which means I can’t analyse in the future what I’ve actually spent my time on.

For example, as you’re reading this, you probably have that one thing you should do that you aren’t doing.

Or some projects that are more important than others.

So I would love a way to track what you’ve worked on directly.

The simplest way I can think of to do this, is while on your desktop, you’d open AW, then on the “activity” tab you would change “current project” to what you’re working on right now.

It’s not perfect since it’s manual and you might switch between projects quickly (which is not ideal either way), but this way the current categorization would be separate from what you spend the time on.

This would allow for either filtering or a different way to visualise what your time is spent on.

I am not sure of any other way to identify what project is being worked on in the same app/tool/software (i.e google docs)

Workaround

The only workaround I have for someone looking to do this is to have a standardized way to name files, windows etc.

for browsers you can install an extension called “URL in Title” which lets you customize how your browser windows are named (and therefore tracked)

you can then name your projects as “[ID] <normal window/file name>|”

for example if you’re writing a book, you can make it “[BK]” then use that to categorize within AW for everything regarding the book

I’ve been working on approach to this using TaskWarrior.

It mainly sends Task/Project data to task warrior after a task is stopped using TaskWarrior hooks. The user experience is not very good because it depends a lot on the user being focused on the task, and depends that the user starts/stops the task when needs to be tracked.

Eitherway, seems more simple that depending on folder structure. You could check on TaskWarrior and if you are interest i can share you my hook, it is not public yet because i want to optimize some stuff first. Alos, it would be nice to intersect the project with the other events, i.e., design a proper view for this.

Does it merge with the other activity watch events?

As in if i categorize the project would it show up correctly on the sunburst visualization?

Not yet. Each bucket holds indepent data, and the current visualizations know nothing about this bucket. I still have to learn how to implement a new visualization for this bucket to make it visible in the activity dashboard and use the curren data. So far, you can only view it in the timeline and with a raw query.