home page promos [technical debt]

RESOLVED FIXED

Status

www.mozilla.org
Pages & Content
RESOLVED FIXED
2 years ago
2 years ago

People

(Reporter: agibson, Assigned: agibson)

Tracking

Production

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: [kb=1894208] )

Attachments

(3 attachments, 3 obsolete attachments)

(Assignee)

Description

2 years ago
Opening this bug to discuss paying off some technical debt with regard to l10n and home page promos.

As discussed with Flod on IRC, we now have a total of 12 active l10n tags on the home page promos. As of Bug 1218583, we now also have a situation where some locales might see two Gear Store promos, and other might see two Web Maker promos.

TL:DR is - the promos are a mess of logic. Both myself and Flod agree we now need to pay off some of this technical debt. We need a period of time where we stop adding new strings, try and get as many new promos translated as we can, and then remove some of the old ones.

Thoughts, Jen or others?
I tried to go through all the tags but it's a real mess.
https://l10n.mozilla-community.org/~pascalc/langchecker/?locale=all&website=0&file=mozorg/home/index.lang

Possible updates:
* Drop 'gear_store'. Locales to deactivate: none
* Drop 'fx10_independent'. Locales to deactivate (1): fi.
* Drop also 'privacy_day'. Locales to deactivate: ast, he, mk, nb-NO, te, xh, zu.
* Drop also 'meta_update_201503'. Locales to deactivate (2): ml, son.

But I'm not sure if that helps us in any way. A more drastic alternative is to put a deadline and tell people that we're going to disable the home page if they don't catch up. But it also means not adding new strings in the meantime.

I think the problem is also in the current strategy: we should always have a set of evergreen fallbacks that don't move around, and only build on top of those without nesting too many conditionals across the page. And if that means showing 2 Webmaker tiles for a partially updated locale that is behind, so be it.
(In reply to Francesco Lodolo [:flod] from comment #1)
> I tried to go through all the tags but it's a real mess.
> https://l10n.mozilla-community.org/~pascalc/langchecker/
> ?locale=all&website=0&file=mozorg/home/index.lang
> 
> Possible updates:
> * Drop 'gear_store'. Locales to deactivate: none
> * Drop 'fx10_independent'. Locales to deactivate (1): fi.
> * Drop also 'privacy_day'. Locales to deactivate: ast, he, mk, nb-NO, te,
> xh, zu.
> * Drop also 'meta_update_201503'. Locales to deactivate (2): ml, son.
> 
> But I'm not sure if that helps us in any way. A more drastic alternative is
> to put a deadline and tell people that we're going to disable the home page
> if they don't catch up. But it also means not adding new strings in the
> meantime.
> 
> I think the problem is also in the current strategy: we should always have a
> set of evergreen fallbacks that don't move around, and only build on top of
> those without nesting too many conditionals across the page. And if that
> means showing 2 Webmaker tiles for a partially updated locale that is
> behind, so be it.

I like the idea of having a set of evergreen fall backs for locales that aren't keeping up.  We have the monthly homepage content meeting tomorrow.  I'll discuss with the team and update this bug tomorrow.  Thx.

PS  Is there an L10N dashboard for homepage promos?
(In reply to Jennifer Bertsch [:jbertsch] from comment #2)
> PS  Is there an L10N dashboard for homepage promos?

Not really. There's the page status, where you can see which tags are associated to each locale
https://l10n.mozilla-community.org/~pascalc/langchecker/?locale=all&website=0&file=mozorg/home/index.lang

And there's this one where you can see which tags are associated to each string (if any)
https://l10n.mozilla-community.org/~pascalc/langchecker/?website=0&file=mozorg/home/index.lang&action=translate
I also sent a message to the mailing list yesterday
https://groups.google.com/d/msg/mozilla.dev.l10n.web/7a751OsK6dY/GJequbasEQAJ

Hopefully we'll be able to get to a better place when we need to take decisions.
(In reply to Francesco Lodolo [:flod] from comment #4)
> I also sent a message to the mailing list yesterday
> https://groups.google.com/d/msg/mozilla.dev.l10n.web/7a751OsK6dY/GJequbasEQAJ
> 
> Hopefully we'll be able to get to a better place when we need to take
> decisions.

Thanks, Flod!

Matej and I are going to meet Nov 22 to propose evergreen homepage promos for locales that might opt to go that direction (or be identified by us to be put into the evergreen bucket)
Whiteboard: [kb=1894208]
Hi Flod-

Matej and I met and would like to propose the following homepage promo line up for "evergreen" locales that are choosing to not keep up with localizing the homepage promos as they change:
https://docs.google.com/spreadsheets/d/1otFAQnPNyzrinMgo2B0mwVtOKRORjXyYtIwL5Q8tiko/edit#gid=1110475301&vpid=A1

What do you all think of that?  A two tiered system of homepages:  homepages that update regularly and homepages that remain static?  Alex - would that help?

Thx,
Jen
Flags: needinfo?(francesco.lodolo)
Flags: needinfo?(agibson)
I realize that I might have explained things poorly.

My idea would not be to have two separate templates: it won't be fair to some locales, and availability of each locale varies with time.

My proposal would be to start from scratch with a set of "good" tiles (and this proposal would work fine for that), and make sure we don't build multiple levels of conditions over time like we've done so far.

Example: 
1. We have an iOS tile (#A)
2. After a month we replace it with an updated iOS tile (#B) for v2.0 and hide it behind a tag
3. After another month we decide to promote Hello (#C) on that same tile, and maybe move #B in another spot.

You can see how that would create an unmanageable level of complexity over time.

The idea would be to always avoid multiple levels of fallback: want to add #C? #B has to go away, and we fallback to the basic tile #A. Or we move #B in another spot, but with only another basic tile as fallback, not multiple variations.
Flags: needinfo?(francesco.lodolo)
(Assignee)

Comment 8

2 years ago
Yep, agree with Flod's summary above - we need to stop building promo-on-promo over time, as this is what is becoming unmanageable. 

For the evergreen promo's, whatever we propose in the spreadsheet for those we - need to make sure they are all translated for l10n.
Flags: needinfo?(agibson)
Hi Alex and Flod-

I'm suggesting 2 templates:  one for locales that update (to match en-US) and one for locales that don't (evergreen).  

We aren't going to stop updating the tiles for en-US, and I'd love to allow locales that choose to participate in keeping up with those updates to continue to do so.

So I'm suggesting we make a special L10N push (maybe in January) to ask locales to either:
1.  convert to the evergreen locales and stay there
2.  make sure all their promos match the current en-US and commit to continuing to update as en-US changes.

If this means we need to do a better job planning the en-US updates, I can commit to doing that.

Thoughts?

Thx,
Jen
(In reply to Jennifer Bertsch [:jbertsch] from comment #9)
> We aren't going to stop updating the tiles for en-US, and I'd love to allow
> locales that choose to participate in keeping up with those updates to
> continue to do so.

We never asked to stop updating en-US. If there are 10 tiles, en-US should just commit to not move around the basic tiles that are used as fallback.

As explained above, I really don't like the idea of having 2 templates, it sounds like grading locales.
(Assignee)

Comment 11

2 years ago
Having two templates would also mean a single promo/string change to the "en-US" template would result in all other locales falling back immediately to the evergreen template (despite having all but one promo already translated). This seems slightly worse than the current situation in some respects. Flod's recommendation would at least mean promo tiles are translated & displayed independently, which is closer to what we have now.
I am +1 with flod and alex, having separate templates would IMO increase complexity of the home page even more. We need stable content over time that we fallback to, this way en-US (and our top locales) are not slowed down, but we don't degrade the home page experience for any other locale.
I apologize for the long delay on this one.

Per my conversation with Alex and Flod on Jan 12, we will move forward with the following defined evergreen homepage for locales:
https://docs.google.com/spreadsheets/d/1otFAQnPNyzrinMgo2B0mwVtOKRORjXyYtIwL5Q8tiko/edit#gid=1110475301

Thanks everyone.
(Assignee)

Comment 14

2 years ago
(In reply to Jennifer Bertsch [:jbertsch] from comment #13)
> I apologize for the long delay on this one.
> 
> Per my conversation with Alex and Flod on Jan 12, we will move forward with
> the following defined evergreen homepage for locales:
> https://docs.google.com/spreadsheets/d/
> 1otFAQnPNyzrinMgo2B0mwVtOKRORjXyYtIwL5Q8tiko/edit#gid=1110475301
> 
> Thanks everyone.

Flod, before we proceed with the code changes to simplify the page, do we need to give some time for locales to catch up with the translations Jen links to here?
Flags: needinfo?(francesco.lodolo)
It's a bit hard to tell, I assumed we would create a new template and switch off the old one. If we modify the existing one (which is OK), I'll still need to check which strings remain to get a picture of how many locales we'll need to disable, and then send out an email.
Flags: needinfo?(francesco.lodolo)
(Assignee)

Comment 16

2 years ago
(In reply to Francesco Lodolo [:flod] from comment #15)
> It's a bit hard to tell, I assumed we would create a new template and switch
> off the old one. If we modify the existing one (which is OK), I'll still
> need to check which strings remain to get a picture of how many locales
> we'll need to disable, and then send out an email.

Ok, I'll create a PR and we can take things from there. Thanks
(Assignee)

Updated

2 years ago
Assignee: nobody → agibson
Status: NEW → ASSIGNED
(Assignee)

Comment 17

2 years ago
Jen,

One question for the evergreen promo "Teach the Web" on the spreadsheet we have:

"MDN (live now)"

Since this is an 10th anniversary tile, does it make sense for this to be evergreen? ("10 years of documenting the web" is only true for 1 year).
Flags: needinfo?(jbertsch)
(Assignee)

Comment 18

2 years ago
It's also a little awkward in that we're showing the MDN promo conditionally on top of the SUMO (evergreen) promo, yet the same MDN promo is also in the evergreen list elsewhere. It makes using an l10n conditional tag obsolete, and we would likely need to start comment out the fallback promo in order to display the current one. This is fine if we need to, but I want to be sure this is all correct first.
(In reply to Alex Gibson [:agibson] from comment #17)
> Jen,
> 
> One question for the evergreen promo "Teach the Web" on the spreadsheet we
> have:
> 
> "MDN (live now)"
> 
> Since this is an 10th anniversary tile, does it make sense for this to be
> evergreen? ("10 years of documenting the web" is only true for 1 year).

I guess it defines how long we define evergreen? :)

I'm working on the assumption that we'll redesign the homepage before the 10th anniversary year is up.
Flags: needinfo?(jbertsch)
(In reply to Alex Gibson [:agibson] from comment #18)
> It's also a little awkward in that we're showing the MDN promo conditionally
> on top of the SUMO (evergreen) promo, yet the same MDN promo is also in the
> evergreen list elsewhere. It makes using an l10n conditional tag obsolete,
> and we would likely need to start comment out the fallback promo in order to
> display the current one. This is fine if we need to, but I want to be sure
> this is all correct first.

Yes.  That is correct.
(Assignee)

Comment 21

2 years ago
Created attachment 8710389 [details]
homepage-current.png

Homepage current promos
(Assignee)

Comment 22

2 years ago
Created attachment 8710390 [details]
homepage-evergreen.png

Homepage evergreen promos
(Assignee)

Comment 23

2 years ago
Jen please let me know if the two attached screenshots look correct. Hope I got this right :)

Please note: because the MDN promo is both evergreen and conditional, it will be possible for some locales to see two MDN 10 anniversary promos (one blue, one green), depending on whether or not they also have the green Gear Store promo translated.
Flags: needinfo?(jbertsch)
(Assignee)

Comment 24

2 years ago
Created attachment 8710430 [details] [review]
GitHub pull request
(In reply to Alex Gibson [:agibson] from comment #23)
> Jen please let me know if the two attached screenshots look correct. Hope I
> got this right :)
> 
> Please note: because the MDN promo is both evergreen and conditional, it
> will be possible for some locales to see two MDN 10 anniversary promos (one
> blue, one green), depending on whether or not they also have the green Gear
> Store promo translated.

Yes.  These look correct.  Thanks, Alex!
Flags: needinfo?(jbertsch)
OK, I've discussed this with Alex on Vidyo based on the current code, and I think we need a little change.

The idea at the base of this simplification is that we need a "safe" state to fallback to: that state corresponds to a .lang file activated but without any tags. This currently maps to a page with 2 MDN tiles, one green and one blue, which doesn't seem reasonable.

One possible solution is to use the SUMO tile as fallback for Gear Store (i.e. use the SUMO tile as an evergreen):
* GREEN Gear Store (fallback to SUMO if tag is missing)
* BLUE MDN 10 years (as evergreen tile)

@Jen
Thoughts?
Flags: needinfo?(jbertsch)
Created attachment 8713166 [details]
"Base" state

This is the current base state (locale activated but without any tag)
(In reply to Francesco Lodolo [:flod] from comment #26)
> OK, I've discussed this with Alex on Vidyo based on the current code, and I
> think we need a little change.
> 
> The idea at the base of this simplification is that we need a "safe" state
> to fallback to: that state corresponds to a .lang file activated but without
> any tags. This currently maps to a page with 2 MDN tiles, one green and one
> blue, which doesn't seem reasonable.
> 
> One possible solution is to use the SUMO tile as fallback for Gear Store
> (i.e. use the SUMO tile as an evergreen):
> * GREEN Gear Store (fallback to SUMO if tag is missing)
> * BLUE MDN 10 years (as evergreen tile)
> 
> @Jen
> Thoughts?

Yes please.  Let's do that.
Flags: needinfo?(jbertsch)
(Assignee)

Updated

2 years ago
Attachment #8710389 - Attachment is obsolete: true
(Assignee)

Updated

2 years ago
Attachment #8710390 - Attachment is obsolete: true
(Assignee)

Updated

2 years ago
Attachment #8713166 - Attachment is obsolete: true
(Assignee)

Comment 29

2 years ago
Created attachment 8713555 [details]
home-page-current.png

Revised homepage current promos
(Assignee)

Comment 30

2 years ago
Created attachment 8713556 [details]
home-page-evergreen.png

Revised homepage evergreen promos
(Assignee)

Comment 31

2 years ago
Thanks Flod and Jen,

Attached the revised screenshots. I think this will work much nicer.

Comment 32

2 years ago
Commits pushed to master at https://github.com/mozilla/bedrock

https://github.com/mozilla/bedrock/commit/b83edfceb4a09a510c10a6d6c862587c6eff067b
[fix bug 1222986] Simplify conditional home page promos

https://github.com/mozilla/bedrock/commit/5dccb7a4cb5ac99ad39e586ec9c84cbef7e535ea
Merge pull request #3797 from alexgibson/simplify-homepage-promos

[fix bug 1222986] Simplify conditional home page promos

Updated

2 years ago
Status: ASSIGNED → RESOLVED
Last Resolved: 2 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.