Upload
matthew-ogle
View
5.253
Download
3
Tags:
Embed Size (px)
DESCRIPTION
The Carsonified gang suggested a slightly different spin on a "Lessons from Last.fm" talk, focused around the desktop. Here are the slides that came out of it, along with an unveiling of the Last.fm Boffin tech demo.Presented at FOWA Dublin, 6 March 2009
How to build desktop apps that help your web app succeed
Matthew Ogle ([email protected]) FOWA Dublin, 6 March 2009
Wait, desktop?
Wait, desktop?
Web 2.0 has (arguably) eroded the importance of desktop apps
Wait, desktop?
Web 2.0 has (arguably) eroded the importance of desktop apps
How many of you use Gmail as a primary email client?
Desktop, really?
Desktop, really?
It’s a good, familiar pitch. Web apps…
Desktop, really?
It’s a good, familiar pitch. Web apps…
are cross-platform
Desktop, really?
It’s a good, familiar pitch. Web apps…
are cross-platform
no install process
Desktop, really?
It’s a good, familiar pitch. Web apps…
are cross-platform
no install process
available anywhere
Desktop, really?
It’s a good, familiar pitch. Web apps…
are cross-platform
no install process
available anywhere
taste like cloud
Yes, desktop.
Yes, desktop.
It’s 2009, no desktop is an island
Yes, desktop.
It’s 2009, no desktop is an island
At Last.fm, our desktop strategy was key to our crazy growth
Yes, desktop.
It’s 2009, no desktop is an island
At Last.fm, our desktop strategy was key to our crazy growth
Along the way, discovered some useful models for desktop-web interaction
Yes, desktop.
It’s 2009, no desktop is an island
At Last.fm, our desktop strategy was key to our crazy growth
Along the way, discovered some useful models for desktop-web interaction
Hints that desktop might be even more important in future
In the beginning…
In the beginning…
Last.fm began in 2002 as two separate projects
In the beginning…
Last.fm began in 2002 as two separate projects
: personal online radio that learns what you like and gets better over time
In the beginning…
Last.fm began in 2002 as two separate projects
: personal online radio that learns what you like and gets better over time
Fig. 1-a
In the beginning…
Last.fm began in 2002 as two separate projects
: personal online radio that learns what you like and gets better over time
Fig. 1-a
In the beginning…
Last.fm began in 2002 as two separate projects
: personal online radio that learns what you like and gets better over time
𝄞 ♬
♫Fig. 1-a
In the beginning…
Last.fm began in 2002 as two separate projects
: personal online radio that learns what you like and gets better over time
𝄞 ♬
♫Fig. 1-a
In the beginning…
Last.fm began in 2002 as two separate projects
: personal online radio that learns what you like and gets better over time
𝄞 ♬
♫Fig. 1-a
In the beginning…
In the beginning…
: desktop media player plugins that track (“scrobble”) what you listen to, build up detailed personal music profile
In the beginning…
: desktop media player plugins that track (“scrobble”) what you listen to, build up detailed personal music profile
Fig. 1-b
In the beginning…
: desktop media player plugins that track (“scrobble”) what you listen to, build up detailed personal music profile
Fig. 1-b
In the beginning…
: desktop media player plugins that track (“scrobble”) what you listen to, build up detailed personal music profile
Fig. 1-b
In the beginning…
: desktop media player plugins that track (“scrobble”) what you listen to, build up detailed personal music profile
om nom nom
♫
Fig. 1-b
Last.fm in 2003
Audioscrobbler in 2003
Last.fm
Last.fmCombining the two = ideal feedback loop for crowdsourced music recommendation
Last.fmCombining the two = ideal feedback loop for crowdsourced music recommendation
Last.fm and Audioscrobbler gradually merged over 2004–2006
Last.fmCombining the two = ideal feedback loop for crowdsourced music recommendation
Last.fm and Audioscrobbler gradually merged over 2004–2006
Online radio and music recommendation have become primary user-facing services of Last.fm
Last.fmCombining the two = ideal feedback loop for crowdsourced music recommendation
Last.fm and Audioscrobbler gradually merged over 2004–2006
Online radio and music recommendation have become primary user-facing services of Last.fm
But the fuel comes from the desktop – via scrobbling
Last.fm
Last.fm
What’s in a scrobble?
Last.fm
What’s in a scrobble?
Made from very basic metadata: user nametrack nameartist nametimestamp
Last.fm
Last.fm
The API for sending this data to our servers has been public since our inception
Last.fm
The API for sending this data to our servers has been public since our inception
Last.fm only added an official scrobbling app in mid-2006
Last.fm
The API for sending this data to our servers has been public since our inception
Last.fm only added an official scrobbling app in mid-2006
More than 100 media players, devices, and platforms can scrobble, and we currently handle up to 800 / second at peak
World o’ scrobbles
World o’ scrobbles
World o’ scrobbles
World o’ scrobbles
World o’ scrobbles
World o’ scrobbles
World o’ scrobbles
World o’ scrobbles
Emacs
World o’ scrobbles
World o’ scrobbles
“My name’s Matt and I’ve just listened to ‘Edmonton’ by the Rural Alberta Advantage”…times 30 billion
World o’ scrobbles
“My name’s Matt and I’ve just listened to ‘Edmonton’ by the Rural Alberta Advantage”…times 30 billion
(That’s a lot of music taste data)
World o’ scrobbles
“My name’s Matt and I’ve just listened to ‘Edmonton’ by the Rural Alberta Advantage”…times 30 billion
(That’s a lot of music taste data)
But why all this scrobbling, especially with desktop barriers-to-entry? And how did it drive growth?
Scrobbling and growth
Scrobbling and growth
Scrobbling helps the scrobbler first: their profile pages show off their awesome music taste in real-time
Scrobbling and growth
Scrobbling helps the scrobbler first: their profile pages show off their awesome music taste in real-time
Scrobbling helps the network next: every time we don’t recognize an artist or track, we add it to our database
Desktop growth fuel(among other things, this creates a page for it)
Desktop growth fuel(among other things, this creates a page for it)
Desktop growth fuel
Desktop growth fuel
Ambient page creation via desktop app
Desktop growth fuel
Ambient page creation via desktop app
Tons of incoming links to personal music profiles + long tail of pages built by scrobbles = great free Google juice
Desktop growth fuel
Ambient page creation via desktop app
Tons of incoming links to personal music profiles + long tail of pages built by scrobbles = great free Google juice
12 million artist pages43 million track pages25+ million unique active users per month
Desktop growth fuel
Desktop growth fuel
Kept desktop app unobtrusive and simple during successive website updates
Desktop growth fuel
Kept desktop app unobtrusive and simple during successive website updates
Only a few major additions since 2006
Desktop growth fuel
Kept desktop app unobtrusive and simple during successive website updates
Only a few major additions since 2006
iTunes bootstrapping
Desktop growth fuel
Kept desktop app unobtrusive and simple during successive website updates
Only a few major additions since 2006
iTunes bootstrapping
Audio fingerprinting
Enough about music
Enough about music
We’re pretty lucky to be running a music service
Enough about music
We’re pretty lucky to be running a music service
Are the concepts behind scrobbling useful for anything else?
Scrobbles = attention data
Scrobbles = attention dataAttention data is a digital record that describes the time spent interacting with someone or something.- Jim Meyer, http://www.usingattention.com/2006/08/19/what-is-attention-data/
Scrobbles = attention dataAttention data is a digital record that describes the time spent interacting with someone or something.- Jim Meyer, http://www.usingattention.com/2006/08/19/what-is-attention-data/
Scrobbling doesn’t ask a user to change or develop new behaviours; it asks permission to record existing ones
Attention data
Attention dataTons of these interactions are happening every minute on the desktop
Attention dataTons of these interactions are happening every minute on the desktop
downloading / browsing photos from a camera
Attention dataTons of these interactions are happening every minute on the desktop
downloading / browsing photos from a camera
chatting to friends on IM
Attention dataTons of these interactions are happening every minute on the desktop
downloading / browsing photos from a camera
chatting to friends on IM
annotating a research paper
Attention dataTons of these interactions are happening every minute on the desktop
downloading / browsing photos from a camera
chatting to friends on IM
annotating a research paper
watching videos
Attention dataTons of these interactions are happening every minute on the desktop
downloading / browsing photos from a camera
chatting to friends on IM
annotating a research paper
watching videos
(your desktop interaction here)
Working with attention
Working with attentionYour service should seek to amplify + add value to attention data
Working with attentionYour service should seek to amplify + add value to attention data
In doing so, you ideally give it...
Working with attentionYour service should seek to amplify + add value to attention data
In doing so, you ideally give it...
more personal value (this comes first, don’t neglect it)
Working with attentionYour service should seek to amplify + add value to attention data
In doing so, you ideally give it...
more personal value (this comes first, don’t neglect it)
network value(this is where your service can really shine)
More desktop principles
More desktop principlesExpose a good API from the start (good != elaborate)
More desktop principlesExpose a good API from the start (good != elaborate)
Don’t force users to change habits; use desktop to give them an on-ramp
More desktop principlesExpose a good API from the start (good != elaborate)
Don’t force users to change habits; use desktop to give them an on-ramp
Works for more than just music or attention data (Tripit/Dopplr itinerary parsing, photo uploaders)
More desktop principlesExpose a good API from the start (good != elaborate)
Don’t force users to change habits; use desktop to give them an on-ramp
Works for more than just music or attention data (Tripit/Dopplr itinerary parsing, photo uploaders)
Desktop + privacy balance = hard but essential (being open source and offering data export helps)
So what about...
The Future?
The Future?Bernal Sphere, 1970s (Apologies to Matt Jones, Dopplr)
The Future?Bernal Sphere, 1970s (Apologies to Matt Jones, Dopplr)
The thinking here seems to be: “People like planned garden communities, and space is the future,
so let’s just put one in space! Yeah! That’s much better!”
Utopian desktop futures
Utopian desktop futuresAIR
Utopian desktop futuresAIR
Prism
Utopian desktop futuresAIR
Prism
Google Gears
Utopian desktop futuresAIR
Prism
Google Gears
Songbird
Utopian desktop futuresAIR
Prism
Google Gears
Songbird
These let us web developers build desktop apps, potentially for the first time, ZOMG
Utopian desktop futures
Utopian desktop futuresAll these projects are interesting and exciting and you should look them up
Utopian desktop futuresAll these projects are interesting and exciting and you should look them up
…cause I’m not going to talk about them.
Utopian desktop futuresAll these projects are interesting and exciting and you should look them up
…cause I’m not going to talk about them.
(I’m not yet convinced they significantly change the web OR the desktop. They just move it around a bit.)
An alternate visionfrom the Last.fm labs
Turn it inside out
Turn it inside outInstead of sending local content TO the web (the on-ramp) or putting the web inside a desktop experience (Songbird, AIR)...
Turn it inside outInstead of sending local content TO the web (the on-ramp) or putting the web inside a desktop experience (Songbird, AIR)...
...why can’t the web make local content better? And leave it there?
Turn it inside outInstead of sending local content TO the web (the on-ramp) or putting the web inside a desktop experience (Songbird, AIR)...
...why can’t the web make local content better? And leave it there?
…using proven desktop conventions and programming languages?
Introducing Boffin
Introducing Boffin
Last.fm’s crowdsourced music intelligence meets your local music collection
Introducing Boffin
Last.fm’s crowdsourced music intelligence meets your local music collection
[Demo]
Introducing Boffin
Last.fm’s crowdsourced music intelligence meets your local music collection
[Demo]
Download Mac, Windows, or source:http://is.gd/lDLG
Parting tips
Parting tipsMake it selfish
Parting tipsMake it selfish
Make it open
Parting tipsMake it selfish
Make it open
Amplify user attention
Parting tipsMake it selfish
Make it open
Amplify user attention
Create on-ramps to your web experience
Parting tipsMake it selfish
Make it open
Amplify user attention
Create on-ramps to your web experience
Be wary of uptopian futures that involve platform lock-in
Parting tipsMake it selfish
Make it open
Amplify user attention
Create on-ramps to your web experience
Be wary of uptopian futures that involve platform lock-in
Befriend local desktop developers, trade notes, learn from each other
Parting tipsMake it selfish
Make it open
Amplify user attention
Create on-ramps to your web experience
Be wary of uptopian futures that involve platform lock-in
Befriend local desktop developers, trade notes, learn from each other
Use your web smarts to make the desktop exciting again
Any questions?
See you online: www.last.fm/user/flaneurwww.twitter.com/flaneurirc.audioscrobbler.com