Chapter 7. Search
The winter holidays are coming, and your team at ElectricHarmony decides to run a challenge for the whole month of December to drive user engagement. You run a brainstorming workshop, then vote for the best idea. This year, the winning idea is a 30-day song challenge (see Figure 7-1)!
Figure 7-1. The 30-day song challenge
The goal of the challenge is trivial—every day has a theme tag, and users share songs associated with it on social media. While the challenge is fun, your team is hoping to gather an understanding of users’ personalities, since the meanings of songs differ for everyone. It’s also interesting to note how tags such as “childhood” can reveal personal associations with music: someone might tag a Led Zeppelin song that way because it was part of their early memories, regardless of when the song was released.
To test the idea, you decide to run the challenge internally. You immediately encounter some issues related to finding tracks in your database. For example:
-
Searching for a partial track name like
heavendoesn’t find the track “Stairway to Heaven.” -
Variations in English dialect: searching for
colourdoesn’t findcolor. -
Search is case-sensitive, so users need to know exactly how the track name is stored in the database. First letter uppercase? Lowercase? All lowercase? So many possible variations!
This chapter will teach you all the ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access