Page MenuHomePhabricator

YiR: Update personalized "articles read" slides
Closed, ResolvedPublic2 Estimated Story Points

Description

Background

In the prototype of Year in Review, there was a slide for logged-in users that showed the number of articles they read this year. We want to update the copy and logic of the slide.

Requirements

  • ✅ The personalized data for this slide should be frozen/cached upon open of the YiR. Calculate the report for this slide when the user first opens Year in Review. After that, if they view more articles / spend more time, this slide should not update (We don't want users to manipulate their YiR). If the user turns off YiR in Settings and turns it back on, this can recalculate.
    • i.e. If I open my Year in Review on December 6th, my articles data is for January 1 - December 6th, 2025. If open it again on December 18th, it does not change.
  • ✅ Only display the personalized version of this slide to logged-in users with more than 5 articles in their history, and who have spent 1+ minutes looking at articles. If a user is not eligible for the personalized version, they should see the collective version.
  • ✅ Update look & feel to match Figma
  • ✅Title should include the following variables
    • Minutes spent
    • # of articles read
    • Year
  • The first paragraph (50%) should use the formula provided by @SNowick_WMF to place what percent the user is in for readers globally: https://docs.google.com/spreadsheets/d/1fzdsQbC41Cw9bUH_n7CWx3O7WCLVs4dWaQQ_SXhROf8/edit?gid=542339239#gid=542339239. Do not show this paragraph if the user is not in the top 50% or better.
  • The first paragraph should also include:
    • Average amount of articles users

✅ The second paragraph should update based on language

  • Show the collective reading hours for English Wikipedia
  • Show the the non-EN collective text about # of languages available

Designs

Personalized versions
EN: https://www.figma.com/design/DHj33gafvUmkiUahLSJgIM/Android---%3E-Year-in-Review-v3?node-id=15-5783&t=J1OrRJqTrMJGK5fk-4
Non-EN https://www.figma.com/design/DHj33gafvUmkiUahLSJgIM/Android---%3E-Year-in-Review-v3?node-id=15-5713&t=J1OrRJqTrMJGK5fk-4

Collective versions
EN: https://www.figma.com/design/DHj33gafvUmkiUahLSJgIM/Android---%3E-Year-in-Review-v3?node-id=18-6683&t=J1OrRJqTrMJGK5fk-4
Non-EN: https://www.figma.com/design/DHj33gafvUmkiUahLSJgIM/Android---%3E-Year-in-Review-v3?node-id=18-6565&t=J1OrRJqTrMJGK5fk-4

Reference

For Average Articles Read I do not have a way to split Users by Language for Yearly Data to calculate separate EN and Non EN average pages viewed yearly, it seems better to use a universal count for iOS and Android users:
335 is the best avg we have to use.

App User Avg Articles Read: 335
Minutes per Article (Estimated): 3.0
Avg Minutes Spent Reading: 1005
Avg Hours Spent Reading: 16 hours, 45m

Data

iOS Implementation: T402702

Event Timeline

Note: we're discussing the implementation of "That puts you in the top 50% of Wikipedia readers globally. The average person reads 335 articles a year. " in Data sync on Wednesday, so I'll add more details for that sentence after we discuss

HNordeenWMF updated the task description. (Show Details)
HNordeenWMF raised the priority of this task from Low to Medium.Sep 23 2025, 4:21 PM
HNordeenWMF renamed this task from Update personalized "articles read" slides for Year in Review to YiR: Update personalized "articles read" slides.Sep 24 2025, 12:23 AM
HNordeenWMF updated the task description. (Show Details)
HNordeenWMF updated the task description. (Show Details)
ABorbaWMF subscribed.

LGTM. Tested on 2.7.50556-r-2025-11-13, on OnePlus 8 on Android 13, and Pixel 6 on Android 16. Tested on all themes.

The first paragraph (50%) should use the formula provided by @SNowick_WMF to place what percent the user is in for readers globally: https://docs.google.com/spreadsheets/d/1fzdsQbC41Cw9bUH_n7CWx3O7WCLVs4dWaQQ_SXhROf8/edit?gid=542339239#gid=542339239. Do not show this paragraph if the user is not in the top 50% or better.
The first paragraph should also include:
Average amount of articles users

With more than 335 articles in my history, I am not seeing the "you're in the top 50% of readers" sentence (Figma). The average should still be 335 (data). Is there something else I should do for testing?

image.png (2×1 px, 842 KB)

Edit: Seeing it now with 341 articles