Now in the Playground: Scrobbling Timelines

Monday, 15 February 2010
by Klaas Bosteels
filed under Announcements
Comments: 54

Being a sysadmin at Last.fm can be a rather tough and at times unrewarding job. It involves maintaining hundreds of servers that get hammered by millions of users every single day, and to complicate things even further they’re spread across three different datacentres. Since Laurie is currently our longest-serving sysadmin, he’s already shed substantial amounts of blood, sweat and tears keeping Last.fm running smoothly. So of course I made him wet his pants the other day by firing up a Hadoop job while he was sitting next to the nodes in the datacentre. Having started to feel a bit of remorse, I thought it’d be only right to finally give him back some love.

Luckily, making Laurie happy isn’t that hard — all it really takes is showing him some graphs. It’s not an accident that Google returns him as top result for the “if it moves, graph it” saying. He even showcased his obsession with graphs over the Xmas holidays, using his Cacti skills to graph parking availability at large UK shopping centres.

Graphs are clearly Laurie’s raison d‘être, so it didn’t take me long to figure out that a great way of thanking him would be to write some code that does something we’ve been working towards for some time at Last.fm: generating personalized, real-time scrobbling history graphs. And while I was at it, I turned the code into a Playground demo that we’ve made available not only to subscribers, but to anyone who has ever scrobbled a track.

Here’s the first graph Laurie saw when checking out the Scrobbling Timeline demo:

Apparently, he recently reached his 20,000th scrobble milestone by listening to a Geek Rock track. By clicking on the cumulative check box, he was able to transform this graph into the following one:

Looks like he’s been scrobbling pretty steadily, with a minor drop in spring/summer for the last 3 years. (At this point he said “wow, that’s cool!”, which made me feel all warm and fuzzy inside.)

I didn’t really keep track of what else Laurie did with the demo, but presumably he discovered that he could restrict the graphs to a specific artist and that it was also possible to compare his scrobbling timelines with those of his friends. In any case, he seemed to like it. Hopefully you’ll like it too, and please let us know why if you don’t!

Comments

  1. Matt Brown
    15 February, 11:35

    HOT

    Matt Brown – 15 February, 11:35
  2. Michał
    15 February, 11:46

    Wow, that’s cool! It actually sorts your friends by the number of plays of the selected artist too, that’s worth a page + blog post in itself.

    The ‘every10k’ milestones seem to cut off at 100,000 though, is that intentional?

    Michał – 15 February, 11:46
  3. Klaas Bosteels
    15 February, 12:12

    @Michal: Yes, 100,000 is currently the highest milestone, but we could easily add some more…

    Klaas Bosteels – 15 February, 12:12
  4. dhugas
    15 February, 12:29

    Wooo-hooo! That’s amazing! I’m going to waste so much time on that…

    dhugas – 15 February, 12:29
  5. Erik J
    15 February, 12:33

    Brilliant, I love it.

    Erik J – 15 February, 12:33
  6. Hans
    15 February, 12:50

    This is really great! Mind you, I’ve been doing this myself for about a year already, plotting my daily plays and those of a couple selected friends to create graphs and statistics. This, of course, is much, much better. Thanks! :D

    Hans – 15 February, 12:50
  7. RedIon1992
    15 February, 12:52

    “It’s not an accident that Google returns him as top result for the “if it moves, graph it” saying.”

    Not any more.

    This page is now the top result.

    RedIon1992 – 15 February, 12:52
  8. honey666kitten
    15 February, 13:09

    the weird thing is… that it only looks good if you switch to english (besides the fact, that it’s really wiiiiiiiide). in german e.g. the new layout is looking really bad. :/

    honey666kitten – 15 February, 13:09
  9. Tecfan
    15 February, 13:23

    if it’s so easy, please raise the milestone limit :)

    looks great! over-reminds me of YouTube Insight stats though.

    there is however a problem.. certain characters doesn’t seem to work: http://playground.last.fm/demo/timeline?user=Tecfan&artist=KoЯn&cumulative=on

    Tecfan – 15 February, 13:23
  10. honey666kitten
    15 February, 13:24

    oh… forget it. it looks okay now. ^^

    honey666kitten – 15 February, 13:24
  11. Tecfan
    15 February, 13:26

    and btw, why is the list of friends to compare with so limited?

    Tecfan – 15 February, 13:26
  12. Tecfan
    15 February, 13:29

    ah now I see; the list of friends changes based on what artist graph you have generated.. but imo the friend list should update when you select “overall” in the dropdown to include all friends even before you generate a new chart – it will be more efficient for the server too I guess

    Tecfan – 15 February, 13:29
  13. PirateXxEsque
    15 February, 13:32

    Oh my.

    I love you. A lot. :D

    PirateXxEsque – 15 February, 13:32
  14. Paul
    15 February, 13:41

    Klass:

    The graphs are really awesome. Great to see my scrobbling history for the last 5 year!

    Paul – 15 February, 13:41
  15. Lars
    15 February, 13:44

    Cool!!

    Lars – 15 February, 13:44
  16. dsrjarman
    15 February, 14:03

    Great work.

    Loads of potential additions too:

    - Allow timelines of artists and tracks (could then be used to sell premium advertising at busy/quiet times)

    - Dragging of the lower area in its entirety (rather than just one end at a time)

    - Exporting the graph as a document/pdf

    - Ways to get more on the screen, or at least a better close up of the graph to reduce crowding

    - More comparisons: individual artists against a user’s overall figures, etc.

    - Identifying the busiest weeks/months of the year for a user (and all users)

    - Selecting which user to analyse (whether a friend or not)

    This could easily become a selling point for the site – attracting users and showing artists more information about their listeners’ habits.

    dsrjarman – 15 February, 14:03
  17. David Strauß
    15 February, 15:37

    i simly love it! great work

    David Strauß – 15 February, 15:37
  18. Babs
    15 February, 15:44

    I enjoyed that!

    Babs – 15 February, 15:44
  19. divejusty
    15 February, 16:18

    It’s really awesome! it will be one of my favourite time-wasting webapps!

    divejusty – 15 February, 16:18
  20. aphlipp
    15 February, 19:09

    How did you generate graphs that look exactly like the ones over at Google Finance? Did Google release an API or some other tools that make something like this possible? Or did you just exactly mimic their style?

    aphlipp – 15 February, 19:09
  21. Frank
    15 February, 19:09

    Great! I can remember when I played most tracks in one day: http://twitter.com/sjinknarf/status/9151781161

    Frank – 15 February, 19:09
  22. HodgeStar
    15 February, 21:23

    that’s cool.

    just one thing i noticed so far: looking at your first screenshot above, i can’t really figure out how the small graph in the slider relates to the big one. it doesn’t look right to me.

    HodgeStar – 15 February, 21:23
  23. Klaas Bosteels
    15 February, 22:27

    @HodgeStar: Once you realize the small graph is smoothed and on a log-scale, it should start to make sense…

    Klaas Bosteels – 15 February, 22:27
  24. HodgeStar
    15 February, 23:07

    @Klaas Bosteels:

    http://playground.last.fm/demo/timeline/share?user=HodgeStar&artist=Sly%20%26%20Robbie

    ?!? Oo

    HodgeStar – 15 February, 23:07
  25. eric casteleijn
    17 February, 00:05

    Awesome! My graph is not really all that interesting because of the scale though. I’m a long time users, and it looks like all my tracks before a certain cutoff date got counted on a single day. Since that count was around 20K, I basically see a flat line ;)

    eric casteleijn – 17 February, 00:05
  26. Klaas Bosteels
    17 February, 10:40

    @Eric: That date is when we added timestamps to scrobbles, so we really can’t go back further unfortunately.

    Klaas Bosteels – 17 February, 10:40
  27. m0nkiii
    17 February, 13:46

    This was kinda fun. For ~½ year ago I introduced Laurie (lozzd) to my site. On the site I have these kind of graphs and a lot of other statistics. He especially liked the graphs but it was probably unlikely that Last.fm would add them to their site soon. It took ~½ year :)

    User charts
    Artist charts
    Chart placement over time
    My group on Last.fm: http://www.lastfm.se/group/Extra+Stats+ftw!

    m0nkiii – 17 February, 13:46
  28. oledoe
    17 February, 16:18

    This gave me the idea of combining the data on scrobbles in the past with other information that happened at the same time.

    See here for an idea to combine music, photo and geo information: Dopplr-Flickr-Last.fm mockup

    oledoe – 17 February, 16:18
  29. martind
    17 February, 16:25

    oledoe — see also LastHistory by Frederik Seiffert: http://www.frederikseiffert.de/lasthistory/

    It’s a standalone app, OSX only, that offers a great timeline visualisation including iPhoto overlay.

    martind – 17 February, 16:25
  30. oledoe
    17 February, 16:42

    martind – that looks really nice. Just that I don’t use OSX.

    :(

    oledoe – 17 February, 16:42
  31. closedmouth
    18 February, 13:52

    you google bombed yourself

    closedmouth – 18 February, 13:52
  32. brtkrbzhnv
    19 February, 13:26

    Like Tecfan hinted at, it only seems to work for artist with no characters outside Windows-1252 or ISO-8859-1 or whatever.
    E.g. http://playground.last.fm/demo/timeline?user=brtkrbzhnv&artist=clammbon works, but http://playground.last.fm/demo/timeline?user=brtkrbzhnv&artist=クラムボン doesn’t (it’s the same artist).

    brtkrbzhnv – 19 February, 13:26
  33. anon
    19 February, 14:18

    wot more can i say except that im on lauries side……. me being the anonymous mouse on here……. i can say what i wish and none of you can get at me… or can you?? so..make him wet himself did ya???? lol i say.. find the breakfats song by newsboys and the new stryper album and micheal w smiths new halellujah… OR ELSE……. we knowwhere u are…….. rofl

    anon – 19 February, 14:18
  34. Elias
    20 February, 22:15

    WOW!!! You guys are incredible :-)

    Elias – 20 February, 22:15
  35. HodgeStar
    21 February, 11:06

    i still use lastgraph3.aeracode.org.

    It would be awesome if you could put these graphs under or above the albums scroll panel on the artist pages in my library. preferable without the flashy stuff.

    HodgeStar – 21 February, 11:06
  36. Investor
    23 February, 21:38

    This looks like Google finance!!!

    Investor – 23 February, 21:38
  37. Tom Wright
    23 February, 23:24

    That’s really neat. Me likey.

    Tom Wright – 23 February, 23:24
  38. Wither-
    24 February, 11:45

    Sweet. This is great!

    Wither- – 24 February, 11:45
  39. Olivier Gillet
    24 February, 17:04

    brtkrbzhnv, Tecfan

    The problem with artist names using non-ascii characters has been fixed.

    Olivier Gillet – 24 February, 17:04
  40. Nick
    28 February, 10:54

    Nice work :))

    Nick – 28 February, 10:54
  41. Nick
    28 February, 10:55

    Sorry my duble comment but bayrak is a spammer :). Take care of it !;)

    Nick – 28 February, 10:55
  42. Jane
    5 March, 15:52

    This is really great! I really love you! )

    Jane – 5 March, 15:52
  43. bayrak resimleri
    6 March, 18:13

    congratulations!
    very nice site
    Thanks.. =)

    bayrak resimleri – 6 March, 18:13
  44. Gefragt
    6 March, 21:55

    Great work. Very nice!
    I thought about graphs about playing songs etc. some months ago … but this is better than I wanted – just great.

    Gefragt – 6 March, 21:55
  45. highcom
    7 March, 10:32

    Really good graph. Because of your article I´ve informed myself more about scrobbling.

    highcom – 7 March, 10:32
  46. nice3266
    7 March, 22:08

    nice work…

    nice3266 – 7 March, 22:08
  47. Thomas
    8 March, 14:05

    It would be nice if your support was showing simliar action.
    It’s one of the worst supports for paying customers I have ever met on the web…

    Months without reaction to messages speaks for itself – a real pity.

    Thomas – 8 March, 14:05
  48. matthew fedak
    13 March, 20:55

    What is this rubbish Klaas? When are you going to fix the last.fm website because currently instead of playing libertines (uk libertines, pete, carl … crack u know the ones?) there is some horrible heavy rock instead!

    This has been going on for months now, loads of bands on there have the correct bio and images but then play the wrong music? Please don’t waste time on silly graphs when you have real work to do. I suggest you read a book on dealing with procrastination.

    matthew fedak – 13 March, 20:55
  49. chris
    15 March, 20:01

    haha that’s funny, I’m the same way with graphs. My friends make fun of me for it….

    chris – 15 March, 20:01
  50. Rhonex
    17 March, 14:18

    Yeah right… Being a sysadmin is a truly thankless. But that’s relative too.

    Rhonex – 17 March, 14:18
  51. roncarrmusic
    17 March, 20:55

    Great Job. Thanks a lot

    roncarrmusic – 17 March, 20:55
  52. xengrid
    18 March, 09:38

    Great, I like this a lot. Hope it will be fully implemented to last.fm-profiles at some point.

    xengrid – 18 March, 09:38
  53. Robate
    19 March, 06:42

    Best Institute Getting quality teaching with an online degree means that you need to research each institute carefully. Talk to other students, if possible. Look at several schools offering both traditional programs and online degree programs. It doesn?t hurt to check out class size either. Try to find class sizes that are small and thus offer you the possibility of individual attention. Check into how the institute can help you……………
    <a href=“www.sangambayard-c-m.com”>www.sangambayard-c-m.com</a>

    Robate – 19 March, 06:42
  54. neworder
    27 March, 15:49

    very god job,will support last.fm for ever

    neworder – 27 March, 15:49

Comments are closed for this entry.