The past few weeks, I pursued a project based around providing hatch information to fly fishers. I chose hatch data because there is not an easy way to figure out bug hatches while actively fly fishing. I saw a hole in the information offered around this subject and chose to experiment with the possibility of filling it. My pursuit was not unlike sound designers, Alexander Llung and Eric Wahforssin, who — in 2007 — noticed there was plethora of video and images sites, but felt there was nowhere for fellow music lovers and creators to share music online. Their solution was to launch SoundCloud, a social site with the sole purpose of sharing music.
SoundCloud officially launched in October of 2008. As shown in the screenshot below, the site had three main value propositions: receive music, send music, and distribute music.
To compare and contrast the data SoundCloud started with and how it has changed and grown to present day, I relied on API documentation. The Wayback Machine provided documentation from 2009 and SoundCloud’s current site links to their current API. From the beginning, SoundCloud captured user data, track data, and allowed users to create playlists which resulted in playlist data.
The user data started out with 15 columns. Some of them were typical — such as first name, last name, location, and avatar image; some were indicative of the year — a MySpace page url; and others were specific to the site — including number of tracks, and the user’s friendly URL for their SoundCloud page.
Today, the number of user columns has grown to 21 and includes data such as followers count, following count, number of public track favorites and number of playlists. The followers column added an additional social media element to the site and rewarded active users by allowing them to gain followers and to easily track other users by following them. I think the “Connect with People” section shown below in the October 2011 homepage screenshot demonstrates how the social aspect became more of a focus since the initial launch in 2009.
Another key piece of data was track data which consisted of 24 columns on launch and included records such as the user ID of the uploader, title, description, sharing permissions, comments, number of comments, date and time created, length of track, genre, a boolean to indicate if the track is downloadable, number of downloads, number of times played, and artwork image.
SoundCloud’s track data now consists of 46 columns. The addition of the track type column allows the uploader to tag a track as original, remix, live, in progress, or one of nine other options. The ability to filter and narrow data on these terms is very useful. Especially in the instance where you are looking for something very specific, such as a sound effect.
SoundCloud launched with a playlist functionality which allowed owners of tracks to create track groupings with titles, descriptions, genre tags, and to even provide a unique friendly url for the playlist. Playlists started with 14 data attributes and has grown to 27 today. Perhaps the most useful of the added columns is playlist type. This allows the playlist owner to label the group of songs categorically. The options for this field are as follows: ep single, album, compilation, project files, archive, showcase, demo, sample pack, other. This helps the data become information because it conveys how the owner sees the tracks as related.
The image below is a screenshot of a SoundCloud’s user’s page from 2010.
Using Chrome Developer Tools, I took a peek under the hood to understand how the data was structured.
The user’s name was encased in h1 tags, which I think makes sense. This is the user page so the user’s name should be called out as the title and an important piece of information. The user’s location was wrapped in a span tag that was nested in the h1 tag and the buttons below were all anchor tags wrapped in a div with a class of “actions”.
Understandably, each track was a list item in an unordered list. The track title was an h3 tag, however the subtitle was a span tag with a class of “subtitle” that was nested within the h3 tag. I think a better structure for this piece of data may have been to use an h4 tag on the same level as the h3. The rest of the track data was made up of div tags with classes such as “metadata”, “controls”, and “bottom”. The description sentence at the bottom of each track lacked a paragraph tag. This code was captured in February of 2010, so HTML5 was still in the early stages of a working draft. This means developers had limited tags to choose from, however, it seems to me more effort could have been made to make the markup more semantic.
A similar structure is followed throughout the old site. Every page name is tagged with h1 markup, pages with lists — such as tracks, users, or groups — used ul and li tags to create the lists, track names and usernames used the h3 tag, and there was repeated use of span tags within header tags with the class of “subtitle” to display subtitles.
Below it what SoundCloud looks like today when a user logs in.
Upon logging in, I am greeted with a promoted playlist at the forefront and a list of suggested users to follow in a sidebar. I was curious to see how the markup had changed since the original site. Unordered lists are still used to markup lists, but newer HTML5 tags such as article and header are now incorporated.
In both the old and current SoundCloud sites, I think the structure and hierarchy of the site helps users make sense of SoundCloud. I observed the Gestalt law of proximity in play throughout. The relationship of buttons to the user’s name make it clear what actions can be taken on the user level; including follow, message, send them a track, or share their page. The relationship of links and buttons to each track makes it clear what actions can be taken on the track level; including, play, share, download, comment, and save to favorites.
Because I was unable to login to an account using the Wayback Machine, I couldn’t assess how a logged in user would flow through the old site. However, there was an “explore” section in the footer of every page that allowed users to flow through the data from three top level buckets: tracks, people and groups. Without a login, users could click on one of these categories to explore the data.
No matter which bucket you started in, you were eventually funneled to a track page.
It was easy to see how the three top level buckets were related to one another in the data. Their relationships made the data meaningful and allowed users to find what they were looking for in a way that made sense to them. When a new song was uploaded, it was tagged with a title, the uploader’s username, and the group or genre it belonged to. The three attributes helped create knowledge around the track and — through a web of links — allowed users to find and take action on them. If they found a track they liked, they could use the associated data such as groups or track owner to find more music that was their style.
On the current site, for new users, there is an onboarding flow. After initial login they are presented with a list of genres. Selecting one or more populates a list of recommended tracks.
At the bottom of the list is a button that says Explore SoundCloud that a you can click if the list didn’t display something you are interested in. This brings you to a page with two filters and a list below. The first filter only has two selections, Top 50 and New and Hot. The second filter has many options including All Music Genres and All Audio Genres. I think this is an excellent use of information architecture. SoundCloud presents you something very simple, but allows you to drill down and more specific if you can’t find what you are looking for initially. There is a tabbed navigation at the top as well, so you can choose how to explore the music.
The Discover tab is empty for new users, but there is a message that asks you to play and like tracks so SoundCloud can learn what kind of music you like. I’ve always been a fan of Pandora and believe having a site learn your music rather than pick a genre is usually the best way to go. Genres are very fluid and no one seems to agree which songs and artists are the best representation of a particular genre.
Think the best feature of SoundCloud today and one of it’s major differentiators is the ability to comment on a track exactly in the part of the song that the comment refers to. The value proposition to this functionality and data collection is great because a user can pinpoint a place in the song that moves them most, or give feedback to the artist at the exact moment the track plays the section the feedback is based on.
It is interesting to note, SoundCloud’s display patterns have not deviated much from the initial launch. The navigation is at the top, the main content body is aligned left and takes up most of the page, and there is a sidebar to the right for additional information.
The homepage has changed the most since launch and currently uses a grid of cards to display promoted tracks.
Recently, SoundCloud has been in the news for poor performance and there has even been talk of bankruptcy. The company and its investors are watching to see how well the new ad-free subscription service will perform.
Despite its recent troubles, I believe SoundCloud has room for opportunity. With its 125 million songs — more than iTunes and Spotify combined —I think one of the major challenges with the site, still, is finding music for users that they like, especially from little known artists; a group SoundCloud is big on supporting.
Even though genres are widely used to categorize music, they aren’t a very effective way of describing the music you like. SoundCloud tries to mitigate this by learning which songs you listen to, but there still seems to be a terrible wild card thrown in every couple of songs or so. SoundCloud could capture more metadata around their users likes and dislikes and reward them with better selected songs.
For example, I like Bluegrass music, but that often means someone picking away on a banjo at an insane pace — which I can’t stand. If I was able to downvote a song like that and indicate why I don’t like it, SoundCloud would have finer data to do better next time. Similar data collection would happen for a song I liked. Instead of just liking it, I would also be prompted to describe what I liked about it.
Another opportunity may be for SoundCloud to leverage the user’s location data. Often music tastes are indicative of the listeners region of the world. Leverage location data could help SoundCloud serve up tracks that are popular to that region.
SoundCloud has had an interesting ride thus far and it will be fun to see where they go in the future. Their near-endless music library and millions of users is a lot of data to leverage into information.
"id": 3207, "permalink": "jwagener", "username": "Johannes Wagener", "uri": "http://api.soundcloud.com/users/3207",…developers.soundcloud.com
To access protected resources you can authenticate with OAuth, a standard to give third party applications the…web.archive.org
Update 24/04/2013: today, the office of Vice President of the European Commission Neelie Kroes announced that Eric…www.whiteboardmag.com