ActivityWatch / aw-webui

Webapp for visualizing and browsing ActivityWatch data, built with Vue.js.
Mozilla Public License 2.0
106 stars 109 forks source link

Improving the default categories #174

Open ErikBjare opened 4 years ago

ErikBjare commented 4 years ago

We've recently gotten PRs (#167, #173) making improvements to the default categories. This is good, but writing good categorization rules can be tricky.

Here are a few common pitfalls:

I'm sure there are more, these are only the ones off the top of my head.

In this issue I will gladly accept suggestions for common apps and websites that should be added to the defaults, as well as suggested patterns for matching them in a way that minimizes the risk of misclassification.

nicolae-stroncea commented 4 years ago

Suggestions for more apps to add to defaults:

Email: outlook, geary IM: skype Movies: netflix, primevideo, disneyplus Programming: code(vscode), jupyter, readthedocs(not sure if always programming), terminal, tilix, guake

I think another potential pitfall is adding things to one category, that could belong to another category for somebody else. Ideally the default should be as general as possible.

ErikBjare commented 3 years ago

Getting more nudges that people want better defaults (#261).

However, my current thinking is to leverage the new "export/import categories" feature to allow for community-curated categorization rules to be shared on the forum (which in turn will be linked to from the UI).

This has a few benefits over simply changing the defaults (which wouldn't affect existing users), and encourages community experimentation and review over complex defaults.

iloveitaly commented 3 years ago

However, my current thinking is to leverage the new "export/import categories" feature to allow for community-curated categorization rules to be shared on the forum (which in turn will be linked to from the UI).

Oh, I love this! Maybe we could setup a separate repo to contain json category rules for various types?

That being said, I've always been a fan of smart defaults. Most folks don't want to fiddle with defaults and they want the first-run experience to generally be close-ish to what they are looking for. I think there's value in putting a little bit more thought and effort into improving the existing defaults, even if it causes some breakage for existing users (we could always freeze the existing defaults and link to them in the configuration UI if people people want to revert). Are you open to improving the existing defaults in addition to building a community-generated set of more complex defaults?

Mte90 commented 3 years ago

Probably a roadmap for this can be define the various categories (add others) to see the community experiment and in the meantime implement a JSON importer/exporter. I did 2 pr to add more software in this repo just to have a better tracking about what I am doing 😅

I agree that a way to import the best or customize it is better. With Automate for Android as example you can import preset of stuff from the community and this created a lot of engagement in the years.

soxofaan commented 2 years ago

Would it also be an option to load the default categories from a config file in the user's home folder? That's simpler than depending on a export/import feature and would circumvent the persistence problem when cookies are cleared (https://github.com/ActivityWatch/activitywatch/issues/342, https://github.com/ActivityWatch/activitywatch/issues/420, https://github.com/ActivityWatch/activitywatch/issues/348)