The social agent, part 5: Narrated Video

Two weeks ago, I published the first four parts (1, 2, 3, and 4) of The Social Agent, my addition to the Mozilla Concept Series focused on online identity. I provided both interaction mockups and written essays illustrating the thinking behind the designs. While this work invited some feedback, I fear that my essays suffered from the TL;DR syndrome. Consequently I decided to try one more medium to explain The Social Agent: narrated video.

There are six videos in the series; you can also watch the entire uncut screencast (parts 1-6) if you’ve got a half hour to spare. Here they are:


Identity in the Browser

People, Apps & Pages




I’d be eager to hear your feedback, here or by email. There is also a mailing list that Mozilla set up to capture feedback.

If these ideas interest you, I’d also recommend checking out the Account Manager and Contacts prototypes that Mike Hanson, Dan MillsRagavan Srinivasan and the Mozilla Labs team produced.

The social agent, part 4: Share

Mozilla Labs Official ConceptThis is the fourth part of the five part Mozilla Labs Concept Series on Online Identity. This post introduces the “Share” verb as a core feature of the social agent. Historically, browsers have relied on email for sharing, but it’s time that the browser did more to make it easier to share across networks — while at the same time reducing unnecessary clutter on webpages. This post describes how sharing could be built in the browser.

Previous entries in the concept series include: Part 1: The Social Agent, Part 2: Connect, and Part 3: Follow.

Also take a look at the rest of my mockups (view as a slideshow) or visit the project overview.

. . .

Looking back, it’s quite plain to see that web browsing, email and chat co-evolved, each being the domain of different applications, and being powered by non-interoperable protocols. Over time, people grew used to separating information consumption from information exchange. The dual use of applications like Firefox and Thunderbird demonstrate this situation, as though sharing and consuming were completely distinct modes of computing.

However, people largely treat these behaviors as one in the same — they’re nearly as eager to share what they discover on the web as they are excited to discover it. It’s just that email is one of the few (clunky) tools they have. And yet, imagine what the experience is like for the uninitiated — launching a browser for the first time (especially if they aren’t inured to the ways of email). They’re going to find it terribly frustrating to share something they find on the web, no matter how great their natural desire is to share it.

This functionality should be supported by our software — browsers included! Social computing is about combining both discovery and sharing — and the social agent can, again, manage such transactions.

Sharing in modern browsers...

Thus, it’s disheartening (is it not?) that the most advanced sharing feature that browsers offer today — in 2010 — is a hand off to your preferred local email client, adding friction and interrupting your flow. Should you really need to launch a separate app just to share a link? ?

Meanwhile, it’s become all the more common to publish content openly on the web — a public display of sharing. While historically people have been hesitant to be too open online, the success of public-by-default services like Flickr over private-by-default services like Kodak EasyShare prove the durability of this trend, which is also manifest in services like Delicious, StumbleUpon, Twitter, and Facebook. It’s clear that relying on email as the primary mechanism for sharing is useful, but not sufficient for today’s web user — whose network is increasingly not found in their email address book.

Enter: the social agent.

Recall that the social agent already manages the people and topics you follow and your relationships with various parties. The next step is to add sharing to the browser. In this way, the tool that you use to discover content will be the same tool that you use to share and rebroadcast that content. Thus sharing becomes a natural part of your routine, and you become a participant-creator of the social web.

ShareThis interface

Now, of course it’s not sufficient to just add a sharing button and call it a day. That’s what so many websites already do, marring their pages with a bunch of tiny icons intended to help you share better! Well, your social agent should banish those annoying pests and make it easier for you to share the links and content with the people that you care about. Sure — for web savvy folks this isn’t necessarily a problem — but as websites become more dynamic and complex, there is a need to make sharing much more straightforward and integrated.

So suppose you visit the New York Times homepage and spot a story you think your friend would be interested in. If you used the “Send Link…” function, you’d end up sending a link to the homepage: By the time your friend visits the site, the article you wanted to share might have already fallen out of site. Sharing fail!

Yet, you didn’t do anything wrong. You saw something that you wanted to share and used the only tool your browser gave you. Regardless, you still want to share the story!

The sharing selector facilitates intentional sharing

There are a number of ways that the social agent could help you gracefully achieve this, whether you want to share a video, photo, blog post, article, event, or other common web document. For one, the browser can ask you to indicate specifically which item(s) you want to share. It can then attach extra information (related links, titles, descriptions) to your share to enrich your message (Facebook already does this for those of you who have figured out how to use Facebook’s sharing bookmarklet).

Let's send this as a message...

Again, the familiar sharing widget appears, prefilled with addresses from the profiles in that bundle

The browser can also tell you what methods it has available to share content with certain friends, or can make a list of your contacts or friends available through a familiar and convenient auto-suggesting textbox.

Let's drag this item instead...

This means that the browser should help you drag and drop content to your friends, and between any compatible web sites or services.

Additionally, the browser can also maintain a history all the items you’ve shared, giving you the ability to search across them, and bring them back up quickly. You could also filter by recipient, service, time, or where you were physically located when you shared.

Dropped image (from one web app to another!)

Viewing the metadata of the dropped image...

The browser can also follow the items you’ve shared to watch for updates or other changes like new comments. Since following is a feature we’ve already discussed, it’ll suffice to say that the items you share will be recorded and followed for new updates, which will be available in your activity dashboard.

Given how prevalent sharing information has become now that nearly everyone can be reached online, a modern browser should support this behavior in order to make the experience more universal, discoverable, easier to use, and more convenient.

The social agent, part 3: Follow

Mozilla Labs Official ConceptThis is the third part of the five part Mozilla Labs Concept Series on Online Identity. This post introduces and examines the “Follow” verb as a more modern and flexible approach to “subscribing” to information — information of any kind: people, sites, social objects and anything with a stream or feed.

Other entries in the concept series include: Part 1: The Social Agent and Part 2: Connect.

Also take a look at the rest of my mockups (view as a slideshow) or visit the project overview.

. . .

Recently I stopped by my neighborhood Whole Foods looking to pick up fixin’s for dinner — some fish, beets; y’know: the basics. After checking out, I noticed a sign on the wall that I’d not seen before, providing links to that local Whole Foods’ Twitter and Facebook pages. It struck me as rather strange that a company like Whole Foods would promote their profiles on networks owned by other companies until I got out of my tech bubble mindset for a moment and realized how irrelevant Whole Foods’ homepage must seem to people who are now used to following friends’ and celebrities’ activities on sites like Twitter and Facebook. What are you supposed to do with a link to a homepage these days? Bookmark it? — only to lose it among the thousands of other bookmarks you already forgot about?

An increasingly common sight...

As the number of people and organizations who have homepages on the web has increased the people formerly known as the audience are diverting their attention from these static outposts to activity-based social content, often consumed as-it-happens, in real-time.

This has tremendous implications for the browser, an application devised during the age of the “slow web”. More importantly, the browser’s interface hasn’t kept up with the changing and rapidly evolving nature of web content, failing to provide native interfaces that help you track content that you’re interested in, and that updates you automatically as new atomic data is available.

Though many browsers have basic feedreader support, their implementations are uninspired and irrelevant — as evidenced by the popularity of alternative web-based aggregators like Google Reader, Netvibes, Friendfeed, and even Twitter and Facebook.

In fact, the popularity of these services proves that consuming syndicated content from various sources is something that people want — it’s just that the browser does virtually nothing to satiate this desire.

Whole Foods‘ promotion of their Twitter and Facebook profiles also underscores an additional evolution that existing feed formats don’t express: that people are interested in many more kinds of content than blog posts and articles! People want photos, videos, status updates, wishlists, favorites, birthdays, and more. They want to know what changed or what happened — whether someone left a comment, made a new friend, is attending an event, or changed their profile photo. These activities take place across several domains and contexts, and pulling them all together into one convenient place is needlessly tedious and rarely portable.

Though I’m sure Whole Foods would much prefer to advertise its own website, they must promote themselves in the contexts where their customers spend their time for one simple reason: Facebook and Twitter have made it insanely easy for people to follow what their friends and favorite brands are doing. Even though feeds subscriptions have been built into browsers for several generations now, it took the social networks to actually make this feature usable — and wrote the browser right out of the picture.

But all’s not lost. As it turns out, the social agent is perfectly suited to provide “following” functionality by modernizing the browser’s existing feed infrastructure. In fact, by implementing “follow” at the browser level, we can generalize the activity of “subscribing” beyond articles and blog posts — and bring the functionality that people expect from social networks to the entire web.

Like subscribing, “following” only goes one way — and doesn’t require a reciprocal relationship in the way that “adding someone as a friend” on a social network often does.

CNN Log In to Follow

This means that following can apply to a wider array of subjects like people, sports teams, comment threads, brands, and any other entity that might emit a stream of updates or activities (even your scale can emit an activity stream!).

Following does not define the mode by which one “follows”, nor is it restrictive in what you follow. In Twitter, for example, you can follow someone’s updates on the web, on your phone via SMS, in apps, or in other connected social networking contexts. In other words, the social agent can continually evolve the experience of following all kinds of activities and objects, rather than being restricted to the conventional list of items common today.

Viewing a photo detail page.

The social agent can integrate following in two different ways: it can either provide built-in handling of syndicated content, or it can seamlessly hand off to a service like Friendfeed, Brizzly, TuneIn, Netvibes, Seesmic, or Google Reader. What’s important, though, is that when you hit the “follow” button, updates from your sources flow to a known preferred aggregator.

The power of “following” is evident when you connect to an activity publisher. To date, getting access to protected feeds in the browser has been complicated, especially if you use technologies like Facebook Connect or OpenID which don’t use passwords to provide access. By adding the ability to connect your active account to what you follow, the social agent can provide you seamless access to private feeds.

For example, say you decide to follow your friend, and want to receive updates when he posts new photos. That’d be easy, except that his photos are private to the world, and he posts them to a network that you’re not on. No problem: since the social agent knows who you are, it can help you connect with your friend and make it easy to just ask him for permission to see his photos. Next time he signs in, he’ll get a notification that you’ve requested access, which he can approve at his leisure. And you never have to sign up for the service that he happens to use — since his updates will be delivered to you through your social agent.

Following is about more than just status updates...

In practice, much of what I’ve described is already possible using recent protocols and formats. It’s really just a matter of providing a unified experience through the browser and pushing for wider adoption of these technologies across the most popular social web services.

Over time, it is conceivable that the browser may develop sophisticated functionality that provides personal analysis and insights into the people and activities that you follow. Such analysis may be presented in an aggregated view, or give you “Best Of” summaries along various slices (daily, monthly, locally, among your college friends, etc). It certainly will be exciting to improve your ability to consume all the information you’re interested in without being overwhelmed by it, with the social agent able to differentiate between content types, activity sources, actors, and contexts and able to pick out those things which are most relevant to your tastes.

One last thing: as processors become faster and computers more connected, managing information should be a burden borne by the computer, rather than the individual. The individual should instead focus on information intake, assessment, interaction, and decision making — the things that require human attentiveness.

Interfaces for managing data should be kept to a minimum, and where they do exist, should be made simple, efficient, and clear. Where we once relied on hierarchical folders and directories, for example, we can now rely on search or other heuristic ranking tools that take social inputs to improve their performance.

Over time we can expand functionality, but to begin, it makes sense to heed the wisdom of Gall’s law:

“A complex system that works is invariably found to have evolved from a simple system that worked. The inverse proposition also appears to be true: A complex system designed from scratch never works and cannot be made to work. You have to start over, beginning with a working simple system.”