The two topics at hand: in my feed page, I want to hide other people's recommendations for example, and have that saved in some way so that if i refresh the page they're still hidden
alastairp
hmm. monkey, I was thinking about generic user preferences a few weeks ago
might be time to bring something like that in
(instead of always adding another column to the user table)
monkey
second topic: on my listens page, if I "delete" a listen it will be hidden on the page, but if I refresh the page it'll be showing again.
alastairp: Definitely skirting around the same topic
mayhem
alastairp: if you'd like to expand on the scope of the idea, feel free to edit the desc.
lucifer
for 1) do we want the ability for a user to show hidden event again?
alastairp
👍
monkey
I think so lucifer
lucifer
i see. to confirm i understand the issue correctly, this is like: someone recommended a track and i don't want to see it my feed but only the recommender can delete a recommendation and that too for all so we need a hide button.
monkey
Correct
lucifer
👍
CatQuest
[11:36] <mayhem> two weeks past, two weeks into the future.
honestly I'd let people be able to set the time themselves. personally I don't really apy attention (and lots don't :D) so they might miss this, esp if they don't "follow" a lot of artists, thy might not check often, and if they *do* a lot of artists, things might be lost in the swarm
else i'd leave atleast a couple of months
lucifer
i think we may need to do some backend redesign to support such events.
monkey
Yeah, so storing that on the front-end might be the simple option here
And has the benefit of working for listens pending deletion too
riksucks
yes, but suppose I login from phone, then it won't be hidden
lucifer
the device issue still remains then :/.
monkey
True. I don't know if that's a major problem, but it's not ideal
riksucks
+1
lucifer
for feed events, i think that's a bigger issue because those events are persistent. deleted listens are going to go away in ~1hr so we could probably get away with it.
riksucks
I think we need a backend for this
CatQuest
honeslt I'd actually have no deadline on it, just show a time line, and show the upcombingmost and latestmost near your *now* and you'll scroll in either direction get further and further "back" or "future"
with some fancy jss/css gadgjet
lucifer
yeah, i am fine with adding a LB site only endpoint for this. (site only because in the longer run we may want to rearchitect this in case feed page gains more traction)
monkey
The drawback of a backend solution is that the way we store event scurrently doesn't allow to store userx X wants to hide event created by user Y
lucifer
yeah we'll need to add a table for that.
CatQuest
tch
lucifer
should be doable though and happy to help adding that.
monkey
Then again it's not the end of the world, and it does mean we have long term storage
lucifer
alastairp, mayhem: thoughts?
riksucks
also I wanted to ask something, what if, I hid a listen that no longer exists
we need to run some sort of checks time to time, to clean stale data from the hiding listens table
monkey
And so then when user load their feed page, we also pass in the page props the list of events they chose to hide? Or do we add that metadata to the feed event json?
lucifer
we could do filtering backend side. only send events that are not hidden to frontend
monkey
riksucks: You mean hiding a feed event that then gets deleted? I think that's a non issue, the event just won't be on the feed page anywhere
mayhem
lucifer: seems good to me.
monkey
lucifer: But then how do I unhide it? :p
lucifer
oh yeah :/
mayhem
lucifer: are you on support@ ? There is a very odd email that just arrived.
riksucks
true, but there would be junk in the databse right?
alastairp
riksucks: that would be easy to clean up from time to time
SothoTalKer joined the channel
monkey
Very minimal, I'd wager
riksucks
I see alastairp, so some sort of cron job?
monkey
But you could indeed clean up when an event gets deleted
alastairp
monkey: is this hiding specific events, or all types of events from a user? ("block")
lucifer
mayhem: nope. you can add me there or forward the mail?
monkey
Specific events
alastairp
mmm
mayhem
the latter is done, former is coming
lucifer
👍
riksucks
monkey: yes, when listens are deleted, we can run check
lucifer
monkey, then we can pass to frontend in props/api and let frontend handle it.
monkey
feed events or listens?
lucifer
both.
monkey
Sorry, that was for riksucks :p
lucifer
ah ok.
mayhem
lucifer: added you. have fun reading that. :)
lucifer
lol looking
mayhem
if you respond to a user, make sure to copy support@ so we know the issue is resolved.
alastairp
I wonder if a user wants to hide an event, if they're even interested in getting it back in the future
monkey
Agreed lucifer, we can either send a separate list of hidden events, or zip that metadata to the list of events
alastairp
monkey: ^ or I was just about to also say "and n other hidden events", that you can expand if you want
riksucks
monkey: afaik, the listens that appear in feed aren't stored in the db as events, the backend just finds listens that should appear in feed and passes it to the client.
monkey
alastairp: A good question. That being said, I'm in favor of giving more flexibility
riksucks
so when a listen is deleted, we can run a check to see if some user has hidden it or not, and delete those entries
monkey
Right, gotcha.
riksucks
alastairp: we were going for a reddit/hackernews style hide button
monkey
To be honest, for now I would simply not worry about hiding *listens* in the feed page. We might ultimately not show random listensin the feed page in the future
riksucks
I see
monkey
Since they are pretty transient (reload the page 10 minutes later, get another set of listens) it shouldn't be a big worry
the feed events on the other hand are there to stay on the feed page
Dijia joined the channel
riksucks
right
also lucifer monkey , sorry for digressing, but I wanted to ask something. I was looking at GSoC ideas list, and saw the project involving sending a user personal recommendation. The description said that backend would be done by someone from metabrainz to give the project short. Can it be made a long project, because I might want to do full stacks here.
monkey
I see no issue with that personally (but I also won't be mentoring anything back-end related on LB)
lucifer
sure i guess we could do that.
monkey
It's always nice to see extra motivation to do more :)
lucifer
i or mayhem can mentor the backend stuff as needed/availability.
(depending on what other projects we get)
mayhem
yes, sounds great. you've already got a feature under your belt, so that is promising.
riksucks
:D
agatzk has quit
also mayhem, I wanted to ask something. Do you remember the typesense idea in the missing mb page I once mentioned here?
monkey
OK, so to sum up I think we've agreed that we'll be storing hidden feed events and pending-deletion listens on the database rather than the front-end.
riksucks
yes
monkey
We'll probably still want to store some user preferences in the browser, but that's for another day
mayhem
riksucks: remind me.
monkey
Great 👍
mayhem isn't so hot on typesense anymore
agatzk joined the channel
mayhem
I only have love for postgres.
riksucks
mayhem: so basically there were false positives in the missing mb page. There were songs that were already part of mb but we thought that they weren't. So I had suggested that we could have a typesense searchbox where users can search up the song that already exists
mayhem
yes, we can do that. it may not be backed by typesense much longer, but we need a general point where we can look up these tracks. it is one of the many projects I'm currently examining and hope to work on in the coming week.
riksucks
I see. I had some mock ups in mind for the missing mb page, for reporting false positives. If you want, I can show you soon
mayhem
sure.
there is also a bug report from a user who has found serious problems in adding tracks to playlists, so I think it is important that we get this endpoint right, since it will serve at least 3 different features.
CatQuest
tch
lucifer
mayhem: did you see the new recs with rank 120?
Dijia
Hi there! Sorry for the interruption but just making a short self-introduction.
I'm Dijia, now a master student of UCL. My major is integrated machine learning systems.
I'm a fun of music. I like playing musical instruments like guitar and keyboards.
I'm good at python and machine learning but now I hope to do something different.
I'm now learning React by myself and hope to try some front-end tasks.
I'm interested in gsoc tasks of ListenBrainz (as some of them may use both python and react). Hope to contribute to it!
mayhem
UCL, london?
Dijia
Yes!
mayhem
hia Dijia
ok, cool.
lucifer
hi Dijia, welcome!
mayhem
which task in particular? I added a pile new ones.
monkey
Welcome Dijia !
Dijia
I'm interested on the "new releases page" one and "Integrate more music services" one.
So if we're introducing ourselves, I'm finishing high school right before GSoC start, so I'll have plenty of free time. I mostly write Python and am interested in solving the single instance problem of Picard :) I've already assigned a simple task to myself to better understand the code. Hope I'll have both fun and decent experiences, and that our cooperation will be nice. Simply -- hi :>
hi skelly37. zas and outsidecontext would be the people who you should engage with
skelly37
I've talked a bit with outsidecontext on the tickets page so I think they aknowledged my existence hah
zas
Hey skelly37
Dijia
Thank you mayhem fot rhw website! I use spotify in UK. And when I'm in China (my home), I mainly use QQ music.
zas
outsidecontext: what about organizing a small meeting to discuss this matter with skelly37 ? In which timezone are you skelly37 ?
Dijia
'the'
skelly37 has quit
skelly37 joined the channel
monkey
lucifer: Quick feedback without much context: recs pages don't look all that different for me. Top Artists is still 96% a single band, Similar artists is pretty similar result as before (also feels like a lot of the same bands)
skelly37
zas: I live in Poland, currently it's 12:43PM
atj
ideal timezone then :)
mayhem
yep, lots of us in that timezone.
or close to it.
Dijia: I think our goal would be to implement apple music next.
do you have a mac/iphone?
Dijia
Yes!
skelly37
fantastic :) Also, we're going to switch from UTC +1 to UTC +2 in a few weeks but it's still a small difference, I guess.
atj
and a strong will to live?
mayhem
lolol, atj
Dijia: then that could work, if you're so inclined. we're very much looking forward to having more music services supported.
ok, running off for some lunch. bbiab!
atj
Apple is transitioning from iTunes purchase/download model to Apple Music streaming model at present
lucifer
monkey: yeah results have been more or less same for me as well. my top artists tracks are more diverse than yours (have been so most ranks though i thikn).
atj
lots of issues being reported with iTunes APIs
monkey
Just to clarify, I'm not complaining at all, just one more user's worth of feedback on the different runs :)