Advertisement

ActivityStrea.ms: Is It Getting Streamy In Here?

Funemployed
Mar. 13, 2010
Advertisement

More Related Content

Advertisement
Advertisement

ActivityStrea.ms: Is It Getting Streamy In Here?

  1. A ivityStreams Chris Messina • South by Southwest • Austin, TX • March 13, 2010 From Facebook's newsfeed to Twitter's relentless real-time updates, the metaphor of the "stream" has taken social networking beyond blog posts and on to rich social activities. Learn about ActivityStrea.ms - the open format adopted by Facebook, MySpace, and Windows Live - and how it's fundamentally changing the social web.
  2. @chris.messina buzz.google.com/chrismessina @chrismessina #gettingstreamy Hello. Here are some useful coordinates before we begin: chris.messina on Buzz; chrismessina on Twitter. The hashtag is #gettingstreamy
  3. Other coordinates — where you might know me from... i’ve been involved in several communities and efforts online... microformats, barcamp, coworking... helped to create hashtags in 2007.
  4. Other coordinates — where you might know me from... i’ve been involved in several communities and efforts online... microformats, barcamp, coworking... helped to create hashtags in 2007.
  5. but I NOW work for Google, the Don’t Be Evil ...[click]
  6. ...Empire
  7. No really, it’s not that bad. And in fact, there’s a great deal of good that Google is doing. [click]
  8. efforts like the Data Liberation Front are leading the way in making sure that, as Google grows, you always have a choice in how to get your data out!
  9. “GENERATIVE STRUCTURES” University of Winnipeg Enough about Google. I bring these things up because they provide some context for the ActivityStreams effort. Generally I’m interested in generative systems... rhizomatic information structures...
  10. ...like the ones that Jonathan Zittrain wrote about in his book “The End of the Internet (and how to stop it)”. And the design of web is one that fundamentally supports generativety — but we must work to ensure that that remains true.
  11. And so ActivityStreams is the latest effort that I’ve worked on that will hopefully build upon what’s come before — and lead to a new wave of generative applications...!
  12. THIS IS YOUR ACTIVITY STREAM AND IT’S ENDING ONE SECOND AT A TIME... ...but, let’s talk about activitystreams. What do I mean by ActivityStreams?
  13. surely you’re familiar with the facebook newsfeed. well, that’s just the tip of the iceberg. it represents the data that is currently available to digital systems, not the data that hasn’t yet been digitized.
  14. huh? well, let’s go back to 1999 for a glimse at an early activitystream — before they even knew this would someday be possible.
  15. that augmented reality view is of ed norton’s purchase stream — an activity stream in its own right. and you know what the data format is?
  16. that augmented reality view is of ed norton’s purchase stream — an activity stream in its own right. and you know what the data format is?
  17. that’s right — paper.
  18. so here’s how he bought this stuff. you all know what this is. yes, a synthetic form of identity that happens to be connected to a financial instrument’s backend.
  19. so here’s how he bought this stuff. you all know what this is. yes, a synthetic form of identity that happens to be connected to a financial instrument’s backend.
  20. you go to whole foods, do some shopping.
  21. whip out the card... boom, another set of activities lodged in your payment lifestream.
  22. whip out the card... boom, another set of activities lodged in your payment lifestream.
  23. the problem is this.... when you go to retrieve that data in order to do something useful with it (like visualizing your purchases as an ARG overlay on your living room)... [click]
  24. you can’t. or at least it’s not all that easy. maybe you’ll get a bunch of PDFs.
  25. which makes it very hard FOR US to do anything interesting with all data. as it happens, this is exactly where we are today with social networks.
  26. which is why this kind of newsfeed seems to be the current “state of the art”
  27. A BRIEF HISTORY OF FEEDS But, in order to understand where we’re going with the work that we’re doing now, you need to understand where feeds came from, and why they are the way they are.
  28. 1999 RSS 0.9 was introduced in 1999 by Netscape as a content-gathering mechanism for My Netscape Network (MNN) back when portals were all the rage (pre-social networks). By providing a simple snapshot-in-a-document, web site producers acquired audience through the presence of their content on My Netscape.
  29. so, you’d have someone like the NYTimes wanting to grow their online audience...
  30. ...and they’d use RSS to get their content into the Netscape portal.
  31. Copyright 2000 ZWave, LLC ...and they’d use RSS to get their content into the Netscape portal.
  32. RSS <?xml version="1.0" encoding="utf-8"?> <rss version="2.0"> <channel> <item> <title>When Will Location-Based Coupons Take Off?</title> <link>http://bits.blogs.nytimes.com/2010/03/12/when-will- location-based-mobile-coupons-take-off/</link> <pubDate>Fri, 12 Mar 2010 21:38:26 +0000</pubDate> <creator>By CLAIRE CAIN MILLER</creator> <description> People want to receive location-based cellphone coupons, but most have not, according to a Web analytics firm. </description> </item> </channel> </rss> RSS looks like this.
  33. RSS title + link + description the only mandatory fields in RSS are title, link, and description — which makes it an extremely flexible format. The only problem is that aggregators have to do a lot of guesswork about what’s in it. this was complicated by the various flavors of RSS (0.9, 0.91, 0.92, 0.93, 2.0 et al)
  34. 2005 this in 2005, a group of people got together to create a “better specified” syndication format called Atom.
  35. ATOM <?xml version="1.0" encoding="utf-8"?> <feed xmlns="http://www.w3.org/2005/Atom"> <entry> <title>When Will Location-Based Coupons Take Off?</title> <link rel=”alternate”>http://bits.blogs.nytimes.com/2010/03/12/when-will- location-based-mobile-coupons-take-off/</link> <id>urn:uuid:60a76c80-d399-11d9-b91C-0003939e0af6</id> <updated>Fri, 12 Mar 2010 21:38:26 +0000</updated> <author> <name>By CLAIRE CAIN MILLER</name> </author> <summary> People want to receive location-based cellphone coupons, but most have not, according to a Web analytics firm. </summary> </entry> </feed> here’s what ATOM looks like.
  36. ATOM title + link + summary + author + id + updated so, in five years, the required elements of RSS essentially doubled, and we now had a unique way to identity a feed entry, the author, and when it was last changed.
  37. even still, this format was really still designed for the case of syndicating ARTICLES into PORTALS.
  38. Copyright 2000 ZWave, LLC even still, this format was really still designed for the case of syndicating ARTICLES into PORTALS.
  39. 2010
  40. so, you take an article like this, turn it into RSS or ATOM...
  41. so, you take an article like this, turn it into RSS or ATOM...
  42. and the most interesting thing the browser can do for you is turn this rich and well designed page into something like this... [click]
  43. and the most interesting thing the browser can do for you is turn this rich and well designed page into something like this... [click]
  44. and now you know why the newsfeed looks like it does. spot the similarity?
  45. and now you know why the newsfeed looks like it does. spot the similarity?
  46. and yet we know that people are performing more and more activities online. and yet, regardless of its type, sites only publish this information as RSS or Atom
  47. so no matter what, to sites like Friendfeed, Facebook, or Google Buzz, all these activities all look the same.
  48. icons by Fast Icon so how do you differentiate all these different feeds when you only have one basic format?
  49. it’s like we’re back in the bank statement PDF hell! isn’t it time we had a format as rich as people’s social activities are diverse?
  50. THE FRIENDFEED PROBLEM this is what I’ve called “The Friendfeed Problem” — but quickly this is becoming EVERYONE’s problem. how many of you have heard of or know about friendfeed?
  51. well, FriendFeed let you add something like 58 services to your profile, basically using RSS. pretty sweet, right?
  52. well, it was, until they got acquired and stopped maintaining the service.
  53. how do I know they stopped maintaining the service? Well, check it out. these are the services that no longer exist, and yet are still “supported” by Friendfeed” Here are the apps that aren’t listed, but should be. Their categories are here. But they’re not.
  54. how do I know they stopped maintaining the service? Well, check it out. these are the services that no longer exist, and yet are still “supported” by Friendfeed” Here are the apps that aren’t listed, but should be. Their categories are here. But they’re not.
  55. Foursquare? Gowalla? Google Buzz? Cliqset? Status.net? Etc. how do I know they stopped maintaining the service? Well, check it out. these are the services that no longer exist, and yet are still “supported” by Friendfeed” Here are the apps that aren’t listed, but should be. Their categories are here. But they’re not.
  56. Logo collage by Stabilo Boss This kind of approach just doesn’t scale over time because we know that most startups fail. that’s just the nature of the game. so pretend that you’re friendfeed in 2007 and you add support for each of these startups.
  57. Logo collage by Meg Pickard here’s what would have been left as May 2009. all that work for nothing. why waste your time?
  58. THE SOLUTION? A UNIVERSAL FORMAT the solution? a universal format for [social] activities
  59. Hence activitystreams. But before I get into that, let’s take a few steps back.
  60. HEAVY THOUGHTS let’s talk about some big ideas.
  61. first we’re going to turn to the soviets for something called activity theory.
  62. ACTIVITY THEORY
  63. Tools Subject Object Outcome Vygotsky Activity Theory was developed as a way of understanding and shaping a workforce, which was of course a very soviet thing to do. As such, Vygotsky’s activity theory was heavily centered on tool mediation and the relationship of a single actor to an object or objective. The theory goes much deeper, but from a lay perspective, this is where it all began.
  64. Mediating Artefacts Subject Goal Outcome Rules Roles Community Yrjö Engeström, 1987 Fast-forward several decades, and the Scandanavians expanded Activity Theory by putting the actor in the context of a community where there were social norms and roles at work. This basic framework could help to explain social development, organization, culture, and social systems at various scales and degrees of inspection.
  65. Mediating Artefacts Sense Subject Goal Outcome Meaning Rules Roles Community Engeström, 1987 Curiously, by studying this model — and examing how goal achievement functions socially — we begin to understand how meaning is made and cultural understanding grows. So, if your goal is to actually produce meaning, knowledge, and understanding — you can work within these constructs to motivate action.
  66. Mediating Artefacts Subject Goal Outcome Rules Roles Community Engeström, 1987 ...especially if you think about how roles, rules, and mediating artefacts (tools) all relate to one another.
  67. so, for example, if you’re designing a new app for the first time, think about how you can manipulate the roles, rules, and tools that give you people to increase their interest, desire, or motivation to make meaning using the system you build.
  68. so, for example, if you’re designing a new app for the first time, think about how you can manipulate the roles, rules, and tools that give you people to increase their interest, desire, or motivation to make meaning using the system you build.
  69. SOCIAL OBJECTS indeed, building on that subject, let’s touch upon another big idea: social objects.
  70. PEOPLE DON’T JUST CONNECT TO EACH OTHER. THEY CONNECT THROUGH A SHARED OBJECT. JYRI ENGESTRÖM Following in his father’s footsteps, Jyri Engstrom proposed the notion of a “social object” as a primary vehicle for social interaction.
  71. A nice example of this idea is Katamari Damacy, a game where you control a character that goes around collecting stuff by adhering it to its body. this is not unlike the way that activities define who you are today. indeed, as the game progresses, all these things that you collect come to define you and your experience.
  72. rating, add to playlist, favorite, share, copy the URL, flag, play, comment, reply by video adding value to objects that are uploaded by users. that turns them into social objects.
  73. add notes, tags, comments, favorite, add to galleries, add contact, interact with other members... but here’s a twist to Flickr’s approach...
  74. Mediating Artefacts Subject Goal Outcome Rules Roles Community Yrjö Engeström, 1987 you take activity theory...
  75. Mediating Artefacts Subject Goal Outcome Rules Roles Community Engeström, 1987 and focus on the mediating artefacts, rules, roles, and community — and you can understand why Flickr works the way it does.
  76. Mediating Artefacts Subject Goal Outcome Rules Roles Community Engeström, 1987 one thing that they’ve done rather well, is make it possible for the subject to manipulate the rules of the Flickr environment.
  77. and on Flickr, I can set the rules of engagement, making it possible for me to personalize my experience, and focus on interactions that are more meaningful to me. This becomes really important when designing social systems in order to avoid “surprises” as we begin to collate these social objects into...
  78. LIFESTREAMS lifestreams. What is a lifestream you might ask?
  79. Well, it’s not actually a newsfeed. It’s something a bit more ephemeral... [click]
  80. MIRROR WORLDS (1991) and comes to us from David Gelernter, a Professor of Computer Science at Yale In 1991, he wrote Mirror Worlds, which foresaw the world wide web... A decade later...[click]
  81. THE SECOND COMING — A MANIFESTO (2000) Streams of Time In June 2000, he published The Second Coming — a Manifesto, depicting 58 theses, and describing “Lifestreams” for the first time in a section called “Streams Of Time”.
  82. THE SECOND COMING — A MANIFESTO (2000) 38 A "lifestream" organizes information not as a file cabinet does but roughly as a mind does. http://j.mp/gelernter He said that “A "lifestream" organizes information not as a file cabinet does but roughly as a mind does.”
  83. THE SECOND COMING — A MANIFESTO (2000) 39 A lifestream is a sequence of all kinds of documents — all the electronic documents, digital photos, applications, Web bookmarks, rolodex cards, email messages and every other digital information chunk in your life — arranged from oldest to youngest, constantly growing as new documents arrive, easy to browse and search, with a past, present and future, appearing on your screen as a receding parade of index cards. Documents have no names and there are no directories; you retrieve elements by content: "Fifth Avenue" yields a sub-stream of every http://j.mp/gelernter document that mentions Fifth Avenue. A lifestream is a sequence of all kinds of documents ... constantly growing as new documents arrive, easy to browse and search, with a past, present and future. Documents have no names and there are no directories; you retrieve elements by content: "Fifth Avenue" yields a sub- stream of every document that mentions Fifth Avenue. <-- sounds like hashtags eh?
  84. THE SECOND COMING — A MANIFESTO (2000) 40 A stream flows because time flows, and the stream is a concrete representation of time. The "now" line divides past from future. If you have a meeting at 10AM tomorow, you put a reminder document in the future of your stream, at 10AM tomorrow. It flows steadily towards now. When now equals 10AM tomorrow, the reminder leaps over the now line and flows into the past. When you look at the future of your stream you see your plans and appointments, flowing steadily out of the future into the present, then the past. http://j.mp/gelernter A stream flows because time flows, and the stream is a concrete representation of time. The "now" line divides past from future. ... When you look at the future of your stream you see your plans and appointments, flowing steadily out of the future into the present, then the past.
  85. DONNIE DARKO? Found at BeyondHollywood.com this remind anyone else of donnie darko? y’know, with the weird thread that directed donnie around?
  86. THE SECOND COMING — A MANIFESTO (2000) 40 A stream flows because time flows, and the stream is a concrete representation of time. The "now" line divides past from future. If you have a meeting at 10AM tomorow, you put a reminder document in the future of your stream, at 10AM tomorrow. It flows steadily towards now. When now equals 10AM tomorrow, the reminder leaps over the now line and flows into the past. When you look at the future of your stream you see your plans and appointments, flowing steadily out of the future into the present, then the past. http://j.mp/gelernter A stream flows because time flows, and the stream is a concrete representation of time. The "now" line divides past from future. ... When you look at the future of your stream you see your plans and appointments, flowing steadily out of the future into the present, then the past.
  87. So these lifestreams start to accrue and build up value over time.
  88. SNACK-SIZED SOCIALITY
  89. MICROCONTENT GOODNESS Jyri Engeström, 2009 People are increasingly ‘snacking’ on content... from tweets, to checkins, to statuscasting...
  90. so historically, we go from longform content... where authors made money based on the LENGTH of their manuscripts...
  91. $ so historically, we go from longform content... where authors made money based on the LENGTH of their manuscripts...
  92. March 12, 2010, 4:38 PM When Will Location-Based Mobile Coupons Take Off? By CLAIRE CAIN MILLER to articles bundled in DAILY newspapers... where you’d get two dozen or so articles to meet your daily needs for news and content...
  93. When Will Location-Based Mobile Coupons Take Off? http://nyti.ms/aYXUWY March 12, 2010, 4:38 PM clairecm claire cain miller to today, where all we seem to have time for is the title of these articles, such is our limited attention and the ABUNDANCE of data being produced.
  94. Jyri Engeström, 2009 as we have more and more information on the go, the form by which we experience it invariably much change... but what is lost in the process? what do we gain? but there is still data here... and from this data, we can derive meaning... and perhaps improve our experiences and interaction with how we can consume snack sized content through these lifestreams.
  95. as we have more and more information on the go, the form by which we experience it invariably much change... but what is lost in the process? what do we gain? but there is still data here... and from this data, we can derive meaning... and perhaps improve our experiences and interaction with how we can consume snack sized content through these lifestreams.
  96. how does this change our relationship to information — and our understanding of each other — when this information becomes as abundant as Starbucks in NYC?
  97. SXSW.CLIQSET.COM for example, just because we have all this information, is it in a form that we can use, and that helps us understand?
  98. I can see a world where eventually my children will look back at my Foursquare data and say: ‘This is Kevin’s history — this is where he was on his birthday 10 years ago, and this was his favourite place to eat.’ Building that profile throughout your life and saving those locations — I think that’s huge. ” Kevin Rose, March 11, 2010 in fact, just last week Kevin Rose was quoted saying: “I can see a world where eventually my children will look back at my Foursquare data and say: ‘This is Kevin’s history — this is where he was on his birthday 10 years ago, and this was his favourite place to eat.’ Building that profile throughout your life and saving those locations — I think that’s huge.”
  99. SO WHAT? these activity networks — fueld by activity data — can help increase understanding, and improve decision making.
  100. CRUMLISH & MALONE When status updates first emerged in the context of instant messenger programs, they were inherently fleeting, temporally tied to the immediate moment and then discarded. It really doesn’t make that much sense to keep an infinite log of Available, Busy, Idle, Offline, and so on for the life of the user or the application. But as other status-capturing interfaces have evolved, the idea of at least maintaining a stream of recent history and then possibly mixing status reports with other snapshots of inline activity has taken hold as a way of displaying presence. When status updates first emerged in the context of instant messenger programs, they were inherently fleeting, temporally tied to the immediate moment and then discarded. It really doesn’t make that much sense to keep an infinite log of Available, Busy, Idle, Offline, and so on for the life of the user or the application. But as other status-capturing interfaces have evolved, the idea of at least maintaining a stream of recent history and then possibly mixing status reports with other snapshots of inline activity has taken hold as a way of displaying presence.
  101. SELF-IMPROVEMENT
  102. FELTRON ANNUAL REPORT
  103. FELTRON ANNUAL REPORT
  104. FELTRON ANNUAL REPORT
  105. FELTRON ANNUAL REPORT
  106. LAST HISTORY
  107. TUFTE + OBAMA this is great to see obama tap someone like tufte to come in and help explain the stimulus, but what if all stimulus money recipients had to provide semantic activitystreams of where they spent their money?
  108. y’know, so we can finally leave the era of the PDF-era activity stream behind!
  109. y’know, so we can finally leave the era of the PDF-era activity stream behind!
  110. THE SOLUTION TO DATA OVERLOAD IS MORE DATA
  111. THE SOLUTION TO DATA OVERLOAD IS MORE METADATA
  112. Hence activitystreams.
  113. actor verb object target the basic model of ActivityStreams follows the “actor verb object”, “target”archetype.
  114. WHAT’S THE CODE LOOK LIKE?
  115. ATOM <?xml version="1.0" encoding="utf-8"?> <feed xmlns="http://www.w3.org/2005/Atom"> <entry> <title>...</title> <link rel=”alternate”>...</link> <id>...</id> <updated>...</updated> <author> <name>...</name> </author> <summary> ... </summary> </entry> </feed> well, let’s take your typical Atom feed...
  116. ATOM title + link + summary + author + id + updated remember that the foundation of Atom is title, link, summary, author, id, and the updated time.
  117. ATOM+ACTIVITYSTREAMS title + link + summary + author + id + updated + verb + object-type + target now add verb, object-type, and target
  118. ATOM+ACTIVITYSTREAMS <?xml version="1.0" encoding="utf-8"?> <feed xmlns="http://www.w3.org/2005/Atom" xmlns:activity="http://activitystrea.ms/spec/1.0/"> <entry> <title>...</title> <link rel=”alternate”>...</link> <id>...</id> <updated>...</updated> <author> <activity:object-type>http://activitystrea.ms/schema/1.0/person</activity:object-type> <name>...</name> </author> <activity:verb>http://activitystrea.ms/schema/1.0/post</activity:verb> <activity:object> <activity:object-type>http://activitystrea.ms/schema/1.0/note</activity:object-type> <content type=”html”> ... </content> </activity:object> </entry> </feed> here’s what Atom+ActivityStreams looks like. Similar,
  119. ATOM+ACTIVITYSTREAMS <?xml version="1.0" encoding="utf-8"?> xmlns:activity="http://activitystrea.ms/spec/1.0/" <feed xmlns="http://www.w3.org/2005/Atom" xmlns:activity="http://activitystrea.ms/spec/1.0/"> <entry> <title>...</title> <link rel=”alternate”>...</link> <id>...</id> <updated>...</updated> <author> <activity:object-type>http://activitystrea.ms/schema/1.0/person</activity:object-type> <name>...</name> </author> <activity:verb>http://activitystrea.ms/schema/1.0/post</activity:verb> <activity:object> <activity:object-type>http://activitystrea.ms/schema/1.0/note</activity:object-type> <content type=”html”> ... </content> </activity:object> </entry> </feed> here are the new parts.
  120. ATOM+ACTIVITYSTREAMS <?xml version="1.0" encoding="utf-8"?> <feed xmlns="http://www.w3.org/2005/Atom" xmlns:activity="http://activitystrea.ms/spec/1.0/"> <entry> <title>...</title> <link rel=”alternate”>...</link> <id>...</id> <updated>...</updated> <author> person <activity:object-type>http://activitystrea.ms/schema/1.0/person</activity:object-type> <name>...</name> </author> post <activity:verb>http://activitystrea.ms/schema/1.0/post</activity:verb> <activity:object> note <activity:object-type>http://activitystrea.ms/schema/1.0/note</activity:object-type> <content type=”html”> ... </content> </activity:object> </entry> </feed> so, see what this adds for the aggregator? as the most basic example, we’re essentially telling the aggregator that a person posted a note.
  121. VERBS & OBJECTS and to begin with, we already support a dozen verbs and several well-known objects.
  122. VERBS & Add Friend Article OBJECTS Favorite Follow Audio Bookmark Like Comment Join File Play Folder Post Group Save List Share Note Tag Person Update Photo Photo Album Place Playlist Product Review Service Status Video and to begin with, we already support a dozen verbs and several well-known objects.
  123. VERBS & Add Friend Article OBJECTS Favorite Follow Audio Bookmark Like Comment Join File v0.8 Play Folder Post Group Save List Share Note Tag Person Update Photo Photo Album Place Playlist Product Review Service Status Video and to begin with, we already support a dozen verbs and several well-known objects.
  124. PROCESS and the process for extending the core schema? well’s it’s pretty simple... and based on the microformats process.
  125. PROCESS 1. Ask why. and the process for extending the core schema? well’s it’s pretty simple... and based on the microformats process.
  126. PROCESS 1. Ask why. 2. Do your homework and the process for extending the core schema? well’s it’s pretty simple... and based on the microformats process.
  127. PROCESS 1. Ask why. 2. Do your homework 3. Propose and the process for extending the core schema? well’s it’s pretty simple... and based on the microformats process.
  128. PROCESS 1. Ask why. 2. Do your homework 3. Propose 4. Iterate and the process for extending the core schema? well’s it’s pretty simple... and based on the microformats process.
  129. PROCESS 1. Ask why. 2. Do your homework 3. Propose 4. Iterate 5. Interoperate and the process for extending the core schema? well’s it’s pretty simple... and based on the microformats process.
  130. http://activitystrea.ms to learn more, this is where it all happens. so, what does and activitystream-formatted feed look like?
  131. CHRIS FINISHED HIS TALK. AT SXSW IN AUSTIN, TX AT 10:30AM.
  132. THANKS monica, rob, mart atkins, dave recordon, steve ivy, james walker, todd barnard, darren bounds, john mcrea, john panzer, joseph smarr, the activitystreams community
  133. ONE MORE THING
  134. ActivityStreams Meetup Sunday, March 14 8:00 PM - 9:00 PM Austin City Limits Studio 2504 Whitis Avenue Austin, TX 78712 eventbrite.com/event/601729790
Advertisement