@everynoise.bsky.social
everynoise.com and associated curiosity; see also @glennmcdonald.bsky.social
NRbG uses the reverse of "related artists in", essentially, and the two are not necessarily symmetrical. But if you also hook up Curio, you can use "myartists" as an NRbG genre to search all your liked artists. I do that plus a bunch of particular genres...
27.07.2025 22:51 β π 1 π 0 π¬ 0 π 0?28pRQNZyF8cHagMgrpLBOR.other playlists.tracks /my artist=(.artists:@1.id.artists) ||apoints=(.my artist.counts.points...._,(1),total),alignment=[=apoints*count]#alignment
Sometimes I come across a very long playlist and I want a quick sense of how my own listening intersects with it. There are lots of ways to quantify this, but here's one of them in Curio query form (you can copy and paste the query from the alt-text):
24.07.2025 19:34 β π 2 π 0 π¬ 0 π 0If you're curious about how different streaming-royalty allocation schemes would affect you and your artists, or could be tempted into curiosity if you thought there was a way to see this, there's a way to see this:
furia.com/log/517
But if you'd rather have an unweighted shuffle by artist, just group before shuffling:
tracks/artist....shuffle.1:@<=100
You can reshuffle the created playlist from its Curio page, too.
This query randomizes all your tracks, but then groups the random list by artist and takes only the first track per artist, up to 100 total. This is effectively a weighted shuffle by artist.
People complain about Spotify's shuffle mode, and I never listen on shuffle so I don't care, but if you do, you can make your own in Curio:
tracks....shuffle/artist;.1:@<=100
Run that on the query page, and then save the results as a playlist.
Do not let the world's deluge of grievous wrongs numb you to your own tiny useless delightful errors.
02.07.2025 16:18 β π 4 π 0 π¬ 0 π 0Screenshot of my playlist list showing: DW 2025-06-27 Synthwave 30 DW 2025-06-27 Alt 30 DW 2025-06-27 Pop 30 DW 2025-06-27 J-Pop 30 DW 2025-06-27 Metal 30
Screenshot of my Curio query page, showing this query: playlists:~<[DW 2025-06-27].other playlists.tracks.(.artists:@1).other artists /label=(.artist catalogs.catalog.label)#count returning results like 283 label countβ of 1 Independent 3 of [...3] 2 Art Gates Records 2 of [...2] 3 Artistfy Music 2 of [...2] 4 FRIENDSHIP. 2 of [...2] 5 QOOLONG 2 of [...2] 6 recordJet 2 of [...2] 7 1964251 Records DK2 1 of [Anteeter] 8 2019 We are Suburban 1 of [Rebecca Lou] 9 2023 maddy irene Β©οΈ 1 of [maddy irene] 10 2023 Wormholedeath Records 1 of [Conspiracy of Blackness] 11 2074559 Records DK2 1 of [Re:O] 12 2080792 Records DK 1 of [DIGITAL LOVE] 13 210485 Manhatten Discs 1 of [DIGITAL LOVE] 14 2285049 Records DK 1 of [Crimson Crisis] 15 3105988 Records DK 1 of [Caldera] 16 3151900 Records DK2 1 of [The Hunt] 17 3304016 Records DK 1 of [DJ MIX-ICON] 18 3677236 Records DK2 1 of [Queen of Dreams] 19 3947540 Records DK2 1 of [DIGITAL LOVE] 20 5880853 Records DK2 1 of [Diamond Riot] 21 655386 Records DK 1 of [Gone Are the Days]
If you want to scrutinize algorithmic playlists Spotify makes for you, you can copy their tracks into normal playlists and then use Curio to run queries on those. E.g.:
playlists:~<[DW 2025-06-27].other playlists
.tracks.(.artists:@1).other artists
/label=(.artist catalogs.catalog.label)#count
E.g. here "Umbral Exorcism" is properly grayed out on _Moonbow Rebellion_, since it was previously released, but not grayed out on the single where it was new.
28.06.2025 18:24 β π 1 π 0 π¬ 0 π 0|artistkey=>(.artists:@1.id), songkey=>(....artistkey,name,concatenate), albumkey=>(....artistkey,(.album.name),concatenate) ?(6tHWkiFaXkuGFGrA5BGjkw.other playlists/), (2KcDTzr3qk1nL5KClxHAUt,6ScO8HqP6XiBgALl0Jnj46,4NDg5ffB2LRsI64Ojj979x.other albums ??old=( .(.artists:@1).artist catalogs.catalog ??song dates=(/id=(.tracks.songkey)|date=(.of.release_date#:@1)) ||<tracks,firstdate=(.songkey.song dates.date) /release_date,track=tracks:release_date>(.track.firstdate).track/id ) ||<tracks,old=(.old) /) ||<of,<tracks,artistkey=(.artistkey),songkey=(.songkey),albumkey=(.albumkey) ??songindex=(/id=(.of.tracks.songkey):count>1||match=~track) ??albumindex=(/id=(.of.tracks.albumkey):count>1||match=~album) ??artistindex=(/id=(.of.tracks.artistkey):count>1||match=~artist) |<of,<tracks, matchsong=(.songkey.songindex), matchalbum=(.albumkey.albumindex), matchartist=(.artistkey.artistindex) ||<of,<tracks, id,name,match=(.matchsong;matchalbum;matchartist.match);
Oh, wait, in order to support multiple releases by each artist we need to get first dates by songkey, but mark oldness by track id:
28.06.2025 18:21 β π 0 π 0 π¬ 1 π 0Here, for example, is ?? in a Curio query that gets a playlist and some albums, annotates the track, album and artist overlaps between them (in that order of priority), and flags the tracks in each album that were previously released (by that artist) before their album appearances.
28.06.2025 15:35 β π 2 π 0 π¬ 1 π 0Need some slightly less-final word than "mourn" here. But you're welcome for everything so far.
27.06.2025 16:34 β π 1 π 0 π¬ 1 π 0DACTAL changes that might affect you if you're doing Curio queries:
filter negation was :! now :-
reverse index-number filtering was :@- now :@@
repeat was ?? now !
This affects several of the Listening History queries in Curio, but none of the ones that get cached, so it would likely only matter to you if you have your own saved queries derived from Listening History views, or similarly adventurous.
18.06.2025 21:03 β π 1 π 0 π¬ 0 π 0Previously in DACTAL this would have been:
tracks/artist...count,_count
which was an unlovely quirk left over from Thread, where aggregators all started with underscores, and appeared as magic pseudo-properties instead of a separate (and thus more easily extensible) operation type.
Today's tiny DACTAL tweak that probably affects nobody: in an aggregation, semicolons explicitly identify aggregators. So this query is a count of counts; the first "count" is a property (of groups), the second "count" is the aggregator.
tracks/artist...count;count
Made some improvements to playlist comparisons. (Also, did you know Curio does playlist comparisons?)
14.06.2025 02:34 β π 6 π 1 π¬ 0 π 0My guess would be that they were tracks that were released but then retracted or rescheduled. But no way to tell after the fact.
Happy to help figure out if queries could help you.
It has 7 null tracks at the beginning. Did one of my tools put them there?!
02.05.2025 18:58 β π 0 π 0 π¬ 1 π 0Also this feature is only available in the mobile app.
23.04.2025 13:27 β π 6 π 0 π¬ 0 π 0Here's what you get when your software is built by people who don't live in it. This is Spotify's useful display of what you've recently played, by playlist. But if you tap a song here, it doesn't resume that playlist, it starts playing through THIS view, which is your play-history in reverse.
23.04.2025 13:26 β π 17 π 0 π¬ 3 π 0Also, and please modulate your reactions to this, I have improved the display of status messages a little.
22.04.2025 18:38 β π 3 π 0 π¬ 0 π 0Screenshot of Curio's Listmarks page, showing the new β° button for opening a recent playlist's recently-played-tracks list.
The Spotify iOS app has adopted the annoying habit of starting my playlists over again, so in defense recent Listmarks in Curio can now be expanded to show your recent play history within them, so you can jump back to where you really were.
22.04.2025 18:36 β π 6 π 0 π¬ 1 π 0Happy NMF.
Some notes about a geeky Curio feature.
www.furia.com/log/507
NMFinder 2025-04-18
open.spotify.com/playlist/1j4...
the new Flight of Icarus song is out (and some others)
open.spotify.com/playlist/2hz...
"Best practices" are incurious. Practice is most interesting when you don't predetermine what it is allowed to reveal.
You can now annotate playlists in Curio. And do what else with those annotations? Nothing, yet.
Small screenshot showing the "export this data" arrow next to each dataset on the Curio/DACTAL query page.
Hooked up the DACTAL export function. Particularly useful in Curio for copying Listmarks' recent_history to other browsers.
14.04.2025 18:28 β π 2 π 0 π¬ 0 π 0Curio song list adapted for mobile display.
Also song lists.
13.04.2025 02:38 β π 2 π 0 π¬ 0 π 0The bottom of a Curio playlist page, with some custom track-flagging functions shown under the row of action buttons.
I wanted some Curio track-flagging features that were too specific to justify adding as general features, but that in itself justified adding a custom-flagging feature.
12.04.2025 01:48 β π 2 π 0 π¬ 0 π 0Earlier version had big triangles and wide-screen word-wrapping. This one has nice images and better small-screen alignment.
Nicer.
11.04.2025 14:26 β π 5 π 0 π¬ 1 π 0