-
Notifications
You must be signed in to change notification settings - Fork 681
Conversation
TL;DR I like this direction I want to A/B test to make sure we don't lose edits to clutter. I don't know if it's a good idea to be adding buttons to the interface. Another display option here would be to separate them within the menu using a dotted line. But I know that you know that subscriptions increase return visits so I'm not sure how to weigh more subscriptions vs clutter. Maybe we could get @hoosteeno to weigh in? If we're going to increase the prominence of these options now's a good time to play around with them. There are so many good opportunities for A/B testing here:
|
Minor nit, I think "children" is a bit of a misleading term for describing subpages as it implies that users know our data tree model. Could we call it "section"? Or maybe "subpages"? |
Great comments. I'll re-use the term "sub-articles" that we use in the advanced menu. (i.e., "New sub-article") I'll start by split-testing between:
Let's test that for a week or more, then look at testing verbage and iconography. @stephaniehobson - do we already have an element ( |
261bbfc
to
6792b70
Compare
4d0102c
to
0f46222
Compare
Okay, this is ready for final review & spot-checking. Who wants it? @stephaniehobson for front-end & spot-check? @robhudson, @jwhitlock, or @jezdez for back-end code review? |
51adf27
to
3e4ac84
Compare
Also rebased this on latest master. |
If you put two lists next to each other in a navigation drop down the border should appear automatically, sorry, should have said. |
includes the link to subscribe to sub-articles but it has no sub-articles Some tags around the language will save us some RTL headaches.
After subscribing to a tree, when visiting a child article there is no indication for the user that they are already subscribed to that article. Is it even possible to subscribe to a tree and than unsubscribe from a child? If the user is subscribed to both the tree and the child will they get duplicate email notifications? Is this a toggle - if I subscribe to the tree and then subscribe to the article have I actually unsubscribed? I think we can answer some of these questions by including some text in the menu if they are subscribed to the tree already. Something like "You are subscribed to this article's parent and all of its children", only more clear and friendly than what I scribble in a github comment box 8 minutes before I have to leave to catch a flight. Wasn't able to test the emails actually sending, happy to do it on Friday if it still needs doing but I'll need more detailed steps. Anyway, going to go get on a plane now. |
verify expected emails in tests
{{ _('You are subscribed to edits on: {title} and all its sub-articles.')|f(title=title) }} | ||
{% else %} | ||
{{ _('You are subscribed to edits on: {title}.')|f(title=title) }} | ||
{% endif %} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since this is an email, do you want to use jinja2 whitespace eating tags? Or do you want those strings indented?
1d7c154
to
fabc188
Compare
So, the first implementation I have for showing the parent tree subscription(s) to the user is simply putting an "Unsubscribe" link for each parent tree the user is watching in the menu. It's not pretty, and it could get fugly if users watch multiple trees above a doc. (Though I'm not sure why they would?) |
data) | ||
self.assertEquals(2, len(mail.outbox)) | ||
message = mail.outbox[0] | ||
assert testuser2.email in message.to |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
any reason to not use self.assertIn
here? I'm all for using native assert statements in tests, but that'd be a third option of conventions in our tests. I'd rather move us to pure Django tests that offer stuff like self.assertIn
:-/
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In today's backend meeting we agreed to start removing nose assertion helpers to cut down on the different number of conventions in our tests. Going to leave this as-is unless/until we start removing native asserts.
Assigning to @stephaniehobson to review (and hopefully not puke from) my proposed just-stick-it-in-the-menu UX approach. |
Needs a rebase :/ |
Small problem with the HTML escaping: Suggestions (not blocking):
R+ after rebase, changes are optional. |
Oh, except fixing the problem with the HTML escaping. That's not optional. |
Conflicts: kuma/wiki/events.py kuma/wiki/views/document.py
Merge was easier than rebase. Looking into the rest ... |
move parent tree watch links below page watch links
c835976
to
50ad728
Compare
|
Assigning to @stephaniehobson to double-check my updates. Then this is good to merge. |
Quotes around the article name instead of italics would also be an improvement, but not one to block on ;) R+ |
After the first week of ~50/50 split testing ... The separate watch menu doesn't seem to have much effect on users clicking the "Edit" button. Conversion rate with the separate watch menu is 0.04% vs. 0.03% with the watch items included in the "Advanced" menu. (Note: I haven't done a full statistical analysis on the level of Optimizely testing.) In addition, the extra menu doesn't seem to have much effect on users going to the "Translate" screen either. Conversion rate with the separate watch menu is 0.03% vs. 0.02% with the watch items included in the "Advanced" menu. (Again, I haven't done a full statistical analysis on the level of Optimizely testing.) There even less data for the new "Watch" goal, but there are 2x as many conversions with the separate watch menu so far. With all that said, I'm leaning towards keeping the separate watch menu and removing the items from the advanced menu. But, let's give it another week to collect some more data. |
Spot-check instructions:
./manage.py worker
console output.BONUS spot-check waffle flag:
8. Add a waffle flag called
watch_menu
and activate it for a user9. Visit a doc with a sub-article as the user
On non-English pages, there are 3 items in the menu: