#metabrainz

/

      • holycow23[m]
        why?
      • 2025-06-24 17518, 2025

      • lucifer[m]
        s/will/might/
      • 2025-06-24 17509, 2025

      • lucifer[m]
        because we won't store all possible genres for each hour but only top N so the aggregation won't exactly match what you have got in 6 hour brackets directly for users with more than N genres in each hour.
      • 2025-06-24 17524, 2025

      • lucifer[m]
        monkey, ansh thoughts on what to do?
      • 2025-06-24 17545, 2025

      • monkey[m] catche sup
      • 2025-06-24 17547, 2025

      • monkey[m]
        I'm not clear on the differences that arise between bucketing on the server and on the front-end
      • 2025-06-24 17526, 2025

      • lucifer[m]
        there are two options for bucketing. 1. Bucket in Spark in 6 hours time frames and keep top N genres for each time frame. this option has the issue that the hours will not take into account the user's time zone.
      • 2025-06-24 17530, 2025

      • monkey[m]
        Ah, I see, top genre from a 6-hour window might not be the same as the aggregate of the top genre for each hour, given a window of 6 hours
      • 2025-06-24 17540, 2025

      • lucifer[m]
        and the other option yes
      • 2025-06-24 17515, 2025

      • monkey[m]
        And is bucketing absolutely necessary, considering we are thinking about sending more granular data to the front-end?
      • 2025-06-24 17539, 2025

      • lucifer[m]
        i think yes, if you store all genres for all hours. the data might be a bit too much.
      • 2025-06-24 17502, 2025

      • monkey[m]
        No, I'm thinking top... 3? 5? for each hour
      • 2025-06-24 17502, 2025

      • lucifer[m]
        i would say if you want to show 5, store 10 i guess for aggregation.
      • 2025-06-24 17520, 2025

      • lucifer[m]
        we are showing top 5-10 for each time frame no?
      • 2025-06-24 17540, 2025

      • monkey[m] opens the project proposal
      • 2025-06-24 17556, 2025

      • lucifer[m]
        going by this image.
      • 2025-06-24 17556, 2025

      • lucifer[m] uploaded an image: (362KiB) < https://matrix.chatbrainz.org/_matrix/media/v3/download/chatbrainz.org/UvODtvxTVLlhCldCuQXPkQRk/image.png >
      • 2025-06-24 17534, 2025

      • lucifer[m]
        top 5 for each time frame IIUC
      • 2025-06-24 17504, 2025

      • holycow23[m]
        this was just a mockup tbh didn't think of top n before creating it
      • 2025-06-24 17529, 2025

      • holycow23[m]
        * this was just a mockup to be honest, didn't think of top n before creating it
      • 2025-06-24 17539, 2025

      • lucifer[m]
        i see, what's the current plan?
      • 2025-06-24 17510, 2025

      • holycow23[m]
        I feel top 10 is a good idea no?
      • 2025-06-24 17519, 2025

      • holycow23[m]
        but there is one more issue
      • 2025-06-24 17531, 2025

      • holycow23[m]
        most songs have multiple genres of like very similar category
      • 2025-06-24 17535, 2025

      • lucifer[m]
        if you are showing it on a pie chart, i think 40 items will be cluttered.
      • 2025-06-24 17552, 2025

      • holycow23[m]
        lucifer[m]: no we could render top 10 each hour
      • 2025-06-24 17500, 2025

      • holycow23[m]
        and then ultimately do top 5
      • 2025-06-24 17516, 2025

      • monkey[m]
        holycow23[m]: That still sounds like it won't fit
      • 2025-06-24 17521, 2025

      • lucifer[m]
        yeah sure that we can do, but first let's confirm what we want to do.
      • 2025-06-24 17528, 2025

      • lucifer[m]
        as in what to show to the user.
      • 2025-06-24 17538, 2025

      • holycow23[m]
        lucifer[m]: I mean this is top 5 for each sector and it looks nice no?
      • 2025-06-24 17552, 2025

      • monkey[m]
        Yes
      • 2025-06-24 17555, 2025

      • lucifer[m]
        sure.
      • 2025-06-24 17540, 2025

      • lucifer[m]
        so yes if you want to show top 5 per time frame, i think we should store top 10 per hour.
      • 2025-06-24 17522, 2025

      • lucifer[m]
        i think that should be doable.
      • 2025-06-24 17531, 2025

      • lucifer[m]
        if not we can revisit.
      • 2025-06-24 17556, 2025

      • lucifer[m]
        as for similar genres, yes that's an issue.
      • 2025-06-24 17557, 2025

      • holycow23[m]
        Okay
      • 2025-06-24 17507, 2025

      • holycow23[m]
        so, just a limit 10 filter that needs to be added
      • 2025-06-24 17523, 2025

      • holycow23[m]
        lucifer[m]: yes
      • 2025-06-24 17526, 2025

      • lucifer[m]
        limit 10 and change aggregation to per hour.
      • 2025-06-24 17506, 2025

      • lucifer[m]
        i don't have any suggestions on how to solve the genres right now.
      • 2025-06-24 17514, 2025

      • holycow23[m]
        and what change needs to be done to fetch timezone?
      • 2025-06-24 17514, 2025

      • lucifer[m]
        but maybe monkey or reosarevok has suggestions.
      • 2025-06-24 17527, 2025

      • lucifer[m]
        you don't fetch the timezone at all in spark.
      • 2025-06-24 17553, 2025

      • lucifer[m]
        you'll obtain that in the frontend react component using date time APIs.
      • 2025-06-24 17509, 2025

      • lucifer[m]
        all the hours returned by spark and the backend will in UTC.
      • 2025-06-24 17517, 2025

      • lucifer[m]
        * backend will be in UTC.
      • 2025-06-24 17534, 2025

      • reosarevok[m]
        Top 1 or max 3 per hour could make sense, for 3 if you split each pie segment into 3 based on the amounts of listens maybe?
      • 2025-06-24 17538, 2025

      • reosarevok[m]
        If you do it per hour
      • 2025-06-24 17549, 2025

      • monkey[m]
        I think the naive approach (count top genre regardless of them being similar) might just be good enough.
      • 2025-06-24 17549, 2025

      • monkey[m]
        Another option would be to add hierarchical data like we had on the treemap component for year in music
      • 2025-06-24 17551, 2025

      • monkey[m] uploaded an image: (73KiB) < https://matrix.chatbrainz.org/_matrix/media/v3/download/chatbrainz.org/nwyjwylscZaFyFuyXnJPxtCi/image.png >
      • 2025-06-24 17513, 2025

      • reosarevok[m]
        "count top, then improve later if you have a lot of time" seems sensible to me
      • 2025-06-24 17518, 2025

      • lucifer[m]
        reosarevok: also asking about how to handle genres that are too similar.
      • 2025-06-24 17522, 2025

      • monkey[m]
        I think that would need a different type of graph, like https://nivo.rocks/sunburst/
      • 2025-06-24 17500, 2025

      • lucifer[m]
        yeah that could work.
      • 2025-06-24 17536, 2025

      • lucifer[m]
        just wondering top 5 by time frame and then further split by hirerarchy is too much info or not?
      • 2025-06-24 17538, 2025

      • monkey[m]
        But that seems to move away from the original time-of-day based graph, so not exactly a solution for this
      • 2025-06-24 17556, 2025

      • monkey[m]
        I would suggest keeping it simpler at first
      • 2025-06-24 17507, 2025

      • lucifer[m]
        yup sounds fine to me.
      • 2025-06-24 17532, 2025

      • lucifer[m]
        holycow23: just update the aggregation and add the limit for now.
      • 2025-06-24 17543, 2025

      • holycow23[m]
        lucifer: one doubt with the solution of hourly
      • 2025-06-24 17500, 2025

      • holycow23[m]
        i am a little confused with how is it being solved
      • 2025-06-24 17505, 2025

      • lucifer[m]
        when you return hourly data, you can shift each hour by the browser's time zone.
      • 2025-06-24 17513, 2025

      • holycow23[m]
        we aggregate hourly then?
      • 2025-06-24 17520, 2025

      • lucifer[m]
        yes
      • 2025-06-24 17528, 2025

      • holycow23[m]
        but what if its +5:30 like ours in india?
      • 2025-06-24 17550, 2025

      • monkey[m]
        Shift by -5.30 ?
      • 2025-06-24 17553, 2025

      • lucifer[m]
        right so in that case you have to follow a rule to round up or down.
      • 2025-06-24 17507, 2025

      • holycow23[m]
        hmm
      • 2025-06-24 17532, 2025

      • lucifer[m]
        so 06:00 shifted by UTC+ 05:30 would be 11:30
      • 2025-06-24 17546, 2025

      • lucifer[m]
        you can round up 11:30 to 12. or round it down to 11:00.
      • 2025-06-24 17504, 2025

      • holycow23[m]
        this is being done in daily activity right?
      • 2025-06-24 17510, 2025

      • holycow23[m]
        what is implement over there for 30?
      • 2025-06-24 17518, 2025

      • lucifer[m]
        i'll need to check.
      • 2025-06-24 17551, 2025

      • monkey[m]
        const tzOffset = -Math.floor(new Date().getTimezoneOffset() / 60);
      • 2025-06-24 17554, 2025

      • lucifer[m]
        round down
      • 2025-06-24 17555, 2025

      • monkey[m]
        Rounded down
      • 2025-06-24 17557, 2025

      • monkey[m]
        Lol
      • 2025-06-24 17558, 2025

      • lucifer[m]
        yup
      • 2025-06-24 17535, 2025

      • holycow23[m]
        cool
      • 2025-06-24 17503, 2025

      • __BrainzGit
        [musicbrainz-server] 14reosarevok merged pull request #3578 (03master…update-flags-2025): MBS-10275 / MBS-14067 / MBS-14068 / MBS-14069 / MBS-14070 / MBS-14071: Update a bunch of flags https://github.com/metabrainz/musicbrainz-server/…
      • 2025-06-24 17507, 2025

      • BrainzBot
        MBS-10275: Update the flag of Martinique https://tickets.metabrainz.org/browse/MBS-10275
      • 2025-06-24 17507, 2025

      • BrainzBot
        MBS-14071: Update the flag of Tokelau https://tickets.metabrainz.org/browse/MBS-14071
      • 2025-06-24 17507, 2025

      • BrainzBot
        MBS-14070: Update the flag of Honduras https://tickets.metabrainz.org/browse/MBS-14070
      • 2025-06-24 17507, 2025

      • BrainzBot
        MBS-14069: Update the flag of Iraq https://tickets.metabrainz.org/browse/MBS-14069
      • 2025-06-24 17507, 2025

      • BrainzBot
        MBS-14068: Update the flag of Syria https://tickets.metabrainz.org/browse/MBS-14068
      • 2025-06-24 17507, 2025

      • BrainzBot
        MBS-14067: Update the flag of Tuvalu https://tickets.metabrainz.org/browse/MBS-14067
      • 2025-06-24 17527, 2025

      • reosarevok[m]
        Sorry!
      • 2025-06-24 17547, 2025

      • __BrainzGit
        [musicbrainz-server] 14reosarevok merged pull request #3580 (03master…MBS-3193): MBS-3193: Simplify after-apostrophe guess case https://github.com/metabrainz/musicbrainz-server/…
      • 2025-06-24 17548, 2025

      • BrainzBot
        MBS-3193: Don't lowercase multi-letter contractions after space + apostrophe with guess case https://tickets.metabrainz.org/browse/MBS-3193
      • 2025-06-24 17537, 2025

      • q3lont has quit
      • 2025-06-24 17521, 2025

      • holycow23[m]
        lucifer: I had generated for the 6 hour aggregates so not the aggregate isn't working since new hourly mapping so how do I remove the table?
      • 2025-06-24 17555, 2025

      • holycow23[m]
        * lucifer: I had generated for the 6 hour aggregates so not the new query isn't working due to the new hourly mapping so how do I remove the old table?
      • 2025-06-24 17518, 2025

      • bitmap[m]
        reosarevok: I figured out why the test in https://github.com/metabrainz/musicbrainz-server/… is failing and it ain't pretty, lmk when you're back
      • 2025-06-24 17558, 2025

      • monkey[m]
        ansh: It looks like we do indeed have popularity stats for recordings: https://listenbrainz.readthedocs.io/en/latest/use…
      • 2025-06-24 17517, 2025

      • monkey[m] sent a code block: https://matrix.chatbrainz.org/_matrix/media/v3/download/chatbrainz.org/zIgiEaBKdBCjDMNbGazRjlCz
      • 2025-06-24 17530, 2025

      • monkey[m]
        However we don't seem to have the same "top listeners" stats endpoint (/listeners) as we have for artists and release groups
      • 2025-06-24 17533, 2025

      • ansh[m]
        Ohh, we can atleast add this data for now
      • 2025-06-24 17541, 2025

      • reosarevok[m]
        <bitmap[m]> "reosarevok: I figured out why..." <- Oh no. I'm not around-around tonight, but what is the issue?
      • 2025-06-24 17502, 2025

      • reosarevok[m]
        Did I break something big? 🫣
      • 2025-06-24 17554, 2025

      • __BrainzGit
        [listenbrainz-android] 1407jasjeet merged pull request #570 (03main…playlist_cover_art): FIX: Fetching cover Art in User Playlist screen https://github.com/metabrainz/listenbrainz-androi…
      • 2025-06-24 17545, 2025

      • holycow23[m]
        lucifer: I have made the changes for hourly aggregate, what are the next steps?
      • 2025-06-24 17554, 2025

      • bitmap[m]
        <reosarevok[m]> "Oh no. I'm not around-around..." <- nothing urgent, but probably requires a schema change 😓
      • 2025-06-24 17519, 2025

      • bitmap[m]
        left a comment on the PR
      • 2025-06-24 17535, 2025

      • wargreen joined the channel
      • 2025-06-24 17509, 2025

      • Kladky has quit