Slide 1

Slide 1 text

Playlist Detective An alternative search for Spotify https://www.playlistdetective.com/

Slide 2

Slide 2 text

Hello I’m Alex Software engineer @bobylito Loves music https://www.playlistdetective.com/

Slide 3

Slide 3 text

Discovering music with playlists Spotify search is great! If you are not looking for playlists https://www.playlistdetective.com/

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

Implementation https://www.playlistdetective.com/

Slide 6

Slide 6 text

Indexing https://www.playlistdetective.com/

Slide 7

Slide 7 text

Spotify Web API 101 Looking for playlists on Spotify? You first need the user ID of a playlist curator. https://www.playlistdetective.com/ /v1/users/{user_id}/playlists /v1/playlists/{playlist_id}/tracks /v1/playlists/{playlist_id}

Slide 8

Slide 8 text

First iteration https://www.playlistdetective.com/ Fetch data Push to Algolia 1 file per curator

Slide 9

Slide 9 text

Scale breaks everything It was fine with 150 curators It broke down with 1800+ curators https://www.playlistdetective.com/

Slide 10

Slide 10 text

Current indexing script https://www.playlistdetective.com/ Push to Algolia Fetch data MongoDB

Slide 11

Slide 11 text

Searching https://www.playlistdetective.com/

Slide 12

Slide 12 text

Building the UI is easy https://www.playlistdetective.com/

Slide 13

Slide 13 text

Search for facet values Search in the search - Songs and artists are facets - Lots of values - Search in them https://www.playlistdetective.com/

Slide 14

Slide 14 text

What now? https://www.playlistdetective.com/

Slide 15

Slide 15 text

Key learnings - Search can be tailored to the user - It’s fine to start with something that do not scale - Be ready to improve what you’ve built https://www.playlistdetective.com/

Slide 16

Slide 16 text

Next - Play with custom rankings - Try to leverage more the dataset https://www.playlistdetective.com/

Slide 17

Slide 17 text

Thanks https://www.playlistdetective.com/ https://github.com/bobylito/playlistFinder/ @bobylito