shaunagm / actionrising

0 stars 0 forks source link

UX work on actions page #175

Open presleyp opened 7 years ago

presleyp commented 7 years ago

Here's what I'm imagining:

Actions come in three types:

Regular Event Phone Script

I'm thinking about calling Regular "Call to Action" but would love more ideas. My thought is that in blurbs about the site - like the landing page and the snippet when you share an action - we could say it's a place to share calls to action and events, and people would more quickly get the idea.

Changes to action attributes:

Regular actions and phone scripts should have a Deadline and a District (maybe a different word like Constituency, because it should be able to be set to a country or a state or a congressional district or a state district or a city). Events should have a Date and a Location.

We probably don't need Priority (maybe on scripts within a phone script but not on actions).

I'd like to rename Duration to Time Commitment.

Filters:

I'm thinking drop-down filters with multiple select possible for Type, Topic, and Time Commitment. Then on-off filters for "Created by people I follow" (default off), "In my districts" (default on), and "Not expired" (default on). These all have sensible defaults so I think they should be contained in a drop-down called something like More. This can't really be done without first changing the way location works, so I would need to do that first. The thing is that I don't want to differentiate between levels of government, only between "I'm a constituent" and "Show me everything". We could add a separate Scope or Level filter later if people want it. So this would probably have to follow a ticket about location, if people like this idea.

Sorts:

In order to separate what's most useful to see in the table from what's most useful to sort by, I want to have a dropdown list of ways to sort rather than sorters on each column header. I would have:

Sort by Newest Due Soon Most Tracked Lowest Time Commitment

I'm hoping to draw people's attention to the usefulness of these sorting options by taking away the noise of the less useful ones. Definitely could use wording suggestions.

Saved filters

With the above in place, we'd have five dropdowns: Type, Topic, Time Commitment, More, Sort By. We could add a link saying "Save these settings as a new tab" or something like that, and we'd no longer need the filter wizard. You could just fiddle, and when you like it, save it for later. I'd definitely like to make it possible for notifications to come from a saved filter, too, but that can be separate.

Columns in Table

With the sort dropdown, we can show whatever columns we want, not necessarily the ones we want to sort by. And the search should work on Title and Creator.

Title Creator Tags (Type, Topic) Time Commitment People Acting Date/Deadline

presleyp commented 7 years ago

@shaunagm let me know what you think. Here's the plan that I'm forming:

Navbar - done Redistribute dashboard content - close to done Work on location plugin (prereq for this issue) Change action attributes and filters (this issue) Design work

shaunagm commented 7 years ago

I'm thinking about calling Regular "Call to Action" but would love more ideas. My thought is that in blurbs about the site - like the landing page and the snippet when you share an action - we could say it's a place to share calls to action and events, and people would more quickly get the idea.

I like the idea of switching 'Regular' to 'Call to Action' -- it's a relatively minimal change, anyway, since they're referred to just as 'action' for the most part. Do you want to move the conversation about how to display the different action options over here? We started talking about it in the PR for the phonescript action, but it's probably a more general design question.

Regular actions and phone scripts should have a Deadline and a District (maybe a different word like Constituency, because it should be able to be set to a country or a state or a congressional district or a state district or a city). Events should have a Date and a Location.

How are you viewing this, from a database perspective? Would we store regular actions and events in separate models? (Note that how phonescripts work is that there's extra data stored in extra databases, but they're all associated with a single action.) If they're separate models, then there's no real downside to using different terminology, but if we're using the same models, then I'd say we should keep 'deadline' and 'date' as the same field, and just change how they're referred to in the UI depending on action type.

We probably don't need Priority (maybe on scripts within a phone script but not on actions).

I'm coming around to your view of this. :)

I'd like to rename Duration to Time Commitment.

That's a much better name.

The thing is that I don't want to differentiate between levels of government, only between "I'm a constituent" and "Show me everything". We could add a separate Scope or Level filter later if people want it. So this would probably have to follow a ticket about location, if people like this idea.

By "show me everything", do you mean "actions that are location-limited and I am in the right location, plus actions that can be done from anywhere", or do you mean literally everything? Because literally everything also includes, for instance, Montana-specific stuff that's useless to a Florida user. I'd like to make it possible for people to see 'literally everything', because I get a bit twitchy about hiding features from users, but I recognize that 95% of the time people are going to want the more practical version, so we could stick that into some kind of advanced search view, eventually.

Sort by Newest Due Soon Most Tracked Lowest Time Commitment

I'm hoping to draw people's attention to the usefulness of these sorting options by taking away the noise of the less useful ones. Definitely could use wording suggestions.

See above re: me getting twitchy about hiding things from users. ;) This sounds good to me, and I think you've correctly identified what people will want to sort by. I might choose 'Most popular' instead of 'Most tracked', but other than that your names look good.

We could add a link saying "Save these settings as a new tab" or something like that, and we'd no longer need the filter wizard.

Yeah, once we've got this implemented, the filter wizard will be pretty redundant.

And the search should work on Title and Creator.

Is this not true currently? If so, that's a bug.

presleyp commented 7 years ago

Great question about database implementation. Not knowing much about Django models, it seems like a case for inheritance from a base Action model. Would that make sense? Would it be too hard to switch to now?

I'd like to make it possible for people to see 'literally everything', because I get a bit twitchy about hiding features from users, but I recognize that 95% of the time people are going to want the more practical version, so we could stick that into some kind of advanced search view, eventually.

Totally agree! I think the default setting should be "show me everything limited to a location that I'm in, and everything not limited to a location" and in the More dropdown you have the option to uncheck that.

Search works on Title but not Creator (which isn't currently shown).

shaunagm commented 7 years ago

Let's avoid using inheritance if we can. I don't think we gain a lot from inheritance over making an extra model to stick the extra data in (like I did with the phonescript plugin). It's not clear we'd even need that for an event action, if we're just changing how dates and locations are handled.

shaunagm commented 7 years ago

I just noticed that there's no default order for the actions in ActionListView and PublicActionListView. Do you agree that it ought to be ordered by recency of creation by default and, if so, can you make sure that's part of the update?

presleyp commented 7 years ago

Perfect, I was just wondering if the code was like that on purpose. Will do.

On Mon, May 1, 2017, 6:40 PM Shauna Gordon-McKeon notifications@github.com wrote:

I just noticed that there's no default order for the actions in ActionListView and PublicActionListView. Do you agree that it ought to be ordered by recency of creation by default and, if so, can you make sure that's part of the update?

— You are receiving this because you were assigned. Reply to this email directly, view it on GitHub https://github.com/shaunagm/actionrising/issues/175#issuecomment-298451707, or mute the thread https://github.com/notifications/unsubscribe-auth/ABOy9BKnPsY1MfqUbEYV5ZxnFEQEK8yTks5r1l8_gaJpZM4NFNCH .