The Dancers I DJ for don’t enjoy long songs. How do I find good Salsa songs that are under three minutes?

Filtering on song length is one of the most requested/appreciated features from the DeeJay/Music coordinator crowd. It’s also one of the first features I implemented in a round of requests I received from exchanges from this segment of the music4dance community – you can read about that in this post.

Since then, it has come up quite a few times, mostly as a “hey, this is one of the things I really love about music4dance,” and once or twice as a “it would be great if you implemented this feature,” in which case I get to gently (but gleefully inside) steer the questioner to the “Advanced Search Page.”

Advanced Song Search Page

I’m bringing this to your attention now because I originally implemented this feature on the cheap. I’m only letting one filter between a minimum and a maximum number of seconds (which is what I store internally). Since it is such a recognized feature, it occurred to me that it might be time to put a little polish on it. My original idea was to have a minutes/seconds control for the minimum and maximum, since that’s probably what the humans are thinking in – that way they don’t have to translate to seconds. It’s not like they can’t do the math, but if this feature is widely used, I should make the experience smoother.

Which leads me to some questions, especially if you are a DJ or music coordinator (formal or informal):

  • Would you prefer to filter on minutes/seconds rather than seconds?
  • Do you use sorting on length? (I didn’t even remember that for certain that I had enabled that until I checked) It seems that if you were to use that feature, it would be good to include the length in the results table, right?
  • Is there some other aspect of searching, filtering, or sorting on song length that could be improved?
  • Are there any other related features you would like to see when building a playlist for your dance?

And some questions for the rest of you:

  • Do you use this feature – possibly in a different way than I described, for different reasons?
  • Can you think of other things you’d like to be able to search, sort, or filter on, or in a different way?

And for everyone – since at least some part of the community has been interested in the filter on song length feature and didn’t find it without asking, any thoughts on how I could make it more obvious?

As always, please let me know if you have any thoughts about the subject of this post or the site by commenting below or using other feedback mechanisms listed here. And if you enjoy the site or the blog (or both), please consider contributing in whatever way makes sense for you.

New Feature: Filter by Song Length

If you’re trying to get a playlist together for a social dance, it would be nice for the songs to be a reasonable length for your audience.  I realize that DJ tools will let you manage this in multiple ways, but sometimes it’s just easier to start with songs in the length range you’d like. There are…

Advanced Search

The advanced search form can be found by clicking on the “Advanced Search” item in the “Music” menu or by clicking on the “Advanced Search” link on the song list page. Text Searching If you want to search specifically in certain fields, you can click the “more” button in the keywords section and get some…

Search like Google Part III: Advanced Search – The Best of Both Worlds?

Update (July 2024): This underlying search mechanism described in this series of posts is still in place and functions as described here, but the user interface has changed. Please see the Simple Search and Advanced Search documentation for how the current user interface works. I’ve just updated the music4dance site with the remaining features for…

Ask music4dance: When was this song added to the catalog?

Someone recently asked me to add a feature that shows when a song was added to the music4dance catalog. It turns out this feature already exists, but the fact that this person didn’t realize it means it isn’t as obvious as it should be. This is especially true, given that the questioner demonstrated she was a fairly sophisticated user of the site through other questions and comments in the same thread.

I have some ideas for how to expose this functionality, but I’d like your feedback before I dive in. I’d also like to get a sense of how interested you are in this information and how you’d like to use it.

What I have:

I’ll start by mapping out what I’m keeping in the database. In my internal format, I keep a record of every time a song is changed, including who made the change and (of course) what the changes are. It is too expensive to index all this information, so it is available on the song’s detail page, but only a few things can be quickly looked up for filtering and sorting the song list. These are as follows:

  1. The date that a song is originally added to the database
  2. The most recent date on which the song was modified (including by the system)
  3. The most recent date on which a song was edited by a user
  4. The most recent date that someone took the time to enter a written comment on the song

What you can do with it:

The easiest way to use this information (other than looking at the change log on the song’s details page), is to go to the New Music page. This will let you see the most recent songs based on when they were added, changed, or commented on. I find this useful as a quick check to see whether people (and bots) are successfully adding and making changes to songs. If the things at the top of the changed list are more than about a day old, it’s a good indication that I broke something. I also think this is good for users who are looking for new music to see what’s up – but now that I’m looking at that page with fresh eyes, I feel like it could benefit from filtering by dance style, like the Holiday Music and other similar pages.

Image of the new music page

To go to the next level, you can open the Advanced Search page and search/filter a song list any way you like, including by dance style, and then sort it by “When Added”, “When Modified”, “When Edited”, or “Comments.” Modified and Edited are subtle variations on Changed, which I’m not going to dive into here, but feel free to play with those and let me know if you think I’m just adding complexity for no reason.

In general, the last column in the desktop version shows information about the date you’re sorting on. The only indication I’m giving on smaller screens is the order in which the list is presented.

Where to go from here:

Between the original question and writing this post, I have had a number of thoughts about what I would improve. But please pause for a moment before you read on, as I’d like your ideas unpolluted by my ramblings.

  • Add some indication of the sort-ordered date on mobile.
  • Make the information that is shown about songs in the search results list configurable – possibly separately for mobile and desktop (this one would be part of a larger project).
  • Add dance filtering to the New Music page. And/Or add an “advanced search” button to those pages that pre-populates the advanced search form.
  • Distinguish between Modified and Edited on the New Music page.
  • Provide the option to view the full edit history on the song details page.
  • Add the ability to filter between two dates for any of the indexed date types (e.g., I want to see all cha-chas that were added before 2015)

Publication date of a song:

When I first read the message that prompted this post, I thought I was being asked to show the date the song was published. That’s a question that I’ve been asked quite a bit, and the answer is that it’s harder than it seems. In general, people are asking for the date the song was first released as a single or on the first album it appeared on. But since the data I have access to is often a “Best Of” or “Ballroom Mix” album, and the date I can see is the album’s, not the song’s, I haven’t figured out a way to reliably get the information we want. This may be a matter of hooking up to another music database like MusicBrainz, but that’s a pretty big lift, so it’s not part of my immediate plans.

However, I have used various sources to tag songs with the decades they’re associated with; this is more of a fuzzy style idea than anything to do with the song’s release date, but that’s often what I want: 70’s Cha Cha or 50’s Slow Foxtrot.


As always, please let me know if you have any thoughts about the subject of this post or the site by commenting below or using other feedback mechanisms listed here. And if you enjoy the site or the blog (or both), please consider contributing in whatever way makes sense for you.

Song Details

The music4dance song details page contains all of the information that we have gathered about a song, including tags and dances that you may have added. Below is a snapshot of a song details page for “How Sweet it Is” as seen by a user, “Charles”, while he is viewing it. Some of the features…

Advanced Search

The advanced search form can be found by clicking on the “Advanced Search” item in the “Music” menu or by clicking on the “Advanced Search” link on the song list page. Text Searching If you want to search specifically in certain fields, you can click the “more” button in the keywords section and get some…

Ask music4dance: How do I find a song that people can dance West Coast Swing and Foxtrot to, or Cha Cha and Rumba, or…

Some of the most vocal members of the music4dance community are folks who either DJ for their studio’s dances or help build the playlists for their community dances, or some variation of the two. The common thread is that they’re using music4dance at various points in their processes and have been kind enough to share the details with me. This has resulted in a number of features that I am sure help more members of the community than my original interlocutor. Thanks again to everyone who has taken the time to share their experiences with music4dance.

The topic at hand is a recent email expressing appreciation for the ability to use the advanced search feature to find songs that can be danced to two or more different dance styles. I realize that I last blogged about this feature in 2015, before I moved the advanced search features to their own page. I missed this post in the review I went through last year to try to update some of the most out-of-date posts and archive the old ones. So I appreciate the reminder.

A little bit of personal history:

When I was first learning to dance, my teacher tried to get me up and able to social dance quickly, including several smooth dances and several rhythm dances. That was totally and completely beyond my capacity, and I spent the better part of a year taking lessons, occasionally showing up to Friday night dances and stumbling through a song or two, but not feeling very good about it. And stepping on too many toes. I clicked in with dancing when a different teacher took me on and convinced me to enter the in-studio competition with an East Coast Swing “solo” piece (what I would now call an exhibition piece – she choreographed the dance to a specific song. We put on costumes and acted out a little scene as part of the dance – pretty close to what most of the performances on Dancing With the Stars are.

With that experience, I graduated to a comfort level with East Coast Swing that I could show up to a dance and dance that one style for the one in 10ish songs that the DJ played. But wait – there is some overlap between East Coast Swing tempo and Slow Foxtrot, at least for social dancing. And the music is of a similar style, since these dances “grew up together” in the Swing Era. And even better – the people dancing Foxtrot were following line of dance around the edge of the dance floor, so we could tear up the middle of the floor with a swing and not disturb the “official” dance. Now I could be up on the floor for one in 5ish songs, and things were starting to feel better. And the rest is history.

How can music4dance help?

But back to the topic at hand. There is a strong motivation when picking songs for a social dance where many styles are represented (which is often true in a traditional ballroom setting) to cater to music that lets newbies dance what they know.  Music4dance makes this easy. If you want to find songs that fall in the overlap between East Coast Swing and Slow Foxtrot, just go to the Advanced Search page and choose each of those dances in the Dances section and click on All (you want the intersection, not the union). Or click here. Then you might want to whittle down that list to the fast end of the Slow Foxtrot and the slow end of the East Coast range – say 128 to 132 BPM, and you get a manageable list of songs to browse through. You can listen to snippets of most songs directly in music4dance. Or, if you’re a premium subscriber, you can export the list to a Spotify playlist and listen to the full songs.

There are a lot of combinations of dances this technique works for, including the dances from the title of this post – West Coast Swing and Slow Foxtrot or Cha Cha and American Rumba are just a couple. Take it for a spin and let me know what you think. And let me know if you use this alongside other features. Or just drop me a line with how you use music4dance. I always read and respond to feedback.

As always, please let me know if you have any thoughts about the subject of this post or the site by commenting below or using other feedback mechanisms listed here. And if you enjoy the site or the blog (or both), please consider contributing in whatever way makes sense for you.

Create a Spotify Playlist

One of my initial goals with music4dance was to be able to create playlists to dance to.  I can finally say that I’ve got this working in a way that is close to my original vision at least for Spotify. The idea is, for instance, that I’d like to build a playlist of Foxtrot songs…

New Feature: Filter by Song Length

If you’re trying to get a playlist together for a social dance, it would be nice for the songs to be a reasonable length for your audience.  I realize that DJ tools will let you manage this in multiple ways, but sometimes it’s just easier to start with songs in the length range you’d like. There are…

Add to a Spotify Playlist Directly from music4dance

A number of people have told me over the years that they create custom Spotify playlists by browsing the music4dance catalog and selecting individual songs. I’ve had ambitions to do all kinds of things to create and manipulate playlists. But it occurred to me, based on a recent conversation, that just the ability to easily…