As an application developer, I have advance access to the Facebook Timeline that Mark Zuckerberg announced yesterday. Here it is:

At first glance, it’s a rather beautiful replacement for the social media profiles we’ve been using since forever. Rather than simply listing your latest content, the timeline allows any visitor to browse your life, literally from birth to the present day. (If you scroll down to the bottom, Facebook prompts you to add a baby photo. Aww.)

It’s interesting from a personal perspective to look back at the past five years but there’s so much that I wouldn’t want someone else to be reading. It seems like too much information about me for people to be able to discover. While it’s been possible for people to access my photographs from years ago, in a sense they were out of context. Now you can see context because of the posts I made myself and those made by my friends on my wall.

Facebook allows you to connect with an increasing number of sites and applications using your Facebook identity. You can write documents, share what you’re reading, play games, and so on – and for most people, this has been a welcome feature. Everything is controlled from one place, with one username and password, and it’s easier than OpenID. Great!

Except now, when someone clicks through from anywhere on the web that uses Facebook Connect to see your profile, they’ll really see you: your life in context. It’s a contextual identity; something you won’t get from a real name, a passport, an ID card, or even a DNA profile. Whereas previously profiles were a collection of hand-picked pieces of information coupled with some things you’d shared recently, now you’ll see wedding photos, pictures of drunken nights on the town four years ago, and perhaps a status update you made when you were hurt and upset after something you’ve long forgotten that happened in 2006 – mixed up with more professional status updates and links, of course.

On one level, it’s brilliant. On another, it’s undeniably, pervasively creepy, to a level we’ve hitherto been unprepared for in human society. These things are designed to be forgotten, but with the Facebook Timeline, much of your life is all but indelible, published front and center until you go through each item individually and hide or delete it.

Nobody’s forced to use Facebook, of course, although for many it’s pretty much a mandatory part of the social experience. What worries me is the trend of radical transparency and social context throughout the web software industry, where it’s expected that everyone will share their lives unless they’ve got something to hide. On the surface, for white males like me living in California, there’s a lot to be said for this on an individual level; don’t lie, be up-front, wear your intentions and motivations on your sleeve. But ultimately the decision about what to share has to be the individual’s – if you don’t feel like sharing something, don’t. Radically transparent interfaces are designed in a way that leads to a kind of peer pressure for disclosure: everyone else is sharing information about A, B and C, so why are you being so evasive?

Furthermore, there’s something particularly jarring about squeezing emotional life events into a social database. Facebook has become a social operating system. Where “social” means “sharing pages, files and resources through electronic means,” that’s great: a much-needed step forward. Where it refers to relationships between human beings, it’s not required, and the idea of placing these things into neat, centrally-defined categories is distasteful.

The case for allowing users to control not just their digital identities, but the platform that defines and stores their digital identities, is stronger than ever.

Social is an adjective that means relating to human society and its members.

A network is an interconnected system of things or people.

Therefore, I’d suggest that we can define a social network as just being an interconnected system of people.

The audience of this talk is a social network; so are your friends, colleagues, interest groups and so on. Social networking tools facilitate social networks. The universe of social tools certainly includes web applications with social functionality, but it also includes structured face to face interactions, telephone, post, SMS, email. In other words, the web is just one possible tool for this purpose – albeit a very effective one.

If you build it, they will come

You can’t install a social networking tool and instantly expect usage: Field of Dreams is not a good model for community development. The web is littered with ghost sites created using Ning, Elgg and more that have been established in the hope that a user-base will magically appear; however, if your main selling point is the social network itself, nobody’s going to join until that network of people exists and is actively using it. It’s a chicken-and-egg problem.

Therefore, you either need to have an existing network of people to facilitate interactions between (for example, when Facebook launched at Harvard) or compelling functionality that is useful without a network of existing users (for example, Delicious).

If we’re creating a tool that’s useful for the first user who signs up, without a pre-existing social network, then what we’re really talking is a software application that uses the web as an interface, and happens to have social functionality as one of its features.

The web as applications

When the web was conceived, it consisted of documents and pages linked with hypertext: linked words and phrases that, when clicked, would load another, relevant document. Each page had its own Uniform Resource Locator, which allowed you to return to that specific page at any time. Each page could be a destination in itself, and although the sites (collections of pages) could be linked together through hypertext, each one had no need to know about your activities elsewhere on the web. Why would they? Documents don’t have memory; their role is simply to impart information.

Step forward to today, and the web is not entirely made of pages: applications now represent a large amount of the web. (Princeton WordNet defines an application as “a program that gives a computer instructions that provide the user with tools to accomplish a task”; Google Docs, Remember The Milk, Flickr, Delicious etc are all applications by this definition.)

The benefits are tangible: you can access an application’s functionality from any web-compatible device, anywhere in the world. You’re no longer bound to the software you happen to have installed on a particular machine, and you no longer need to worry about whether you’ve remembered to save a particular file onto a particular drive. Because of historic resource limitations, web applications tend to be easier to use, and entirely bypass the need for IT departments, which have unfortunately earned a reputation for being obstacles to productivity in many organizations.

This change of web usage has been reflected in the ongoing development of HTML, the markup language that all web interfaces are written in. The first four versions were largely orientated towards documents; however, HTML 5, currently in development, is the first version that explicitly contains functionality to support web applications. That includes offline storage and usage, sessions, and more advanced interface features. However, aspects of the document-orientated model remain.

Silos of information

Each application is its own atomic destination with its own URL, and is by default only aware of data created within it. That means we need to register for each application we want to use, fragmenting our accounts over potentially hundreds of products and company data centers, and that the documents, files and data we create within them can’t easily be shared with other applications. On my desktop, I can write a document in Word and open it in OpenOffice, or take a Paint doodle and load it in Photoshop, but there’s no easy, generic way to take my bookmarks from Delicious into another bookmarking tool, or to take my Google Docs and open them in Acrobat.com.

Currently, each web application is like a silo: they exist on their own, and if they interoperate at all, it’s through specific links between applications that have to be individually developed. Certainly, data created in an application stays in that application; sometimes you can check your GMail address book for contacts in order to find existing friends on a service you’ve just signed up to, for example, but it’s rare that you can actually export data fully into another product. As many of these services are free, a significant portion of their business models revolve around being able to control user-contributed data, keep users coming back, and sell user-generated activity data for marketing purposes. (One has to question whether the market for personal details will continue to be profitable, or whether, like the web advertising market before it, it will saturate and crash.)

In a social networking tool, the site model means that your contacts, the information you share and any detailed access permissions all relate solely to the application they were created in. However, collaborative spaces in social web applications are like documents: they’re one of the currencies of the social web. Just as I need to be able to use my wordprocessor of choice to edit a document, I need to be able to use my social tool of choice to collaborate with others.

Turning the model upside down

Right now, we have to register with each application we want to use. What if we required each application we used to register with us, in digital identities under our own control?

What if, using these identities, anyone could connect to anyone else, and anyone could store their data anywhere as long as the storage provider followed the same broad standards?

The web itself would become a social networking tool.

This is far more flexible, and future-proof:

Your ability to collaborate is not subject to a single company’s success: social functionality and application infrastructure are inherent in the web itself

The possibilities for collaboration are not subject to technology beyond common open standards, which can evolve

A wider range of application possibilities is ensured, because web applications gain the ability to interoperate in a general way

Privacy and user control are established by allowing a person to determine which application has access to which data

By establishing a general standard for social application interactions, the services and technologies used to make connections become less relevant; the Internet is people, one big social network, and users no longer have to worry about how they connect. We can all get on with communicating and collaborating rather than worrying about where we connect.

User-centered identities

Under this model, providing the software that hosts your digital identity becomes big business. This hasn’t gone unnoticed by the main service providers, and they’re already fiercely competing to be your identity on the web:

Facebook wants your central identity to be a Facebook account (and arguably have made the user-centric model for the web part of their strategy for a very long time)

Google wants it to be a Google account

Twitter wants it to be a Twitter account

Microsoft wants it to be a Live ID

OpenID want it to be any OpenID-capable URL

Because I use all of these services, the result is a very complicated identity space. These are a subset of my profiles:

For identities to be usable as a generic standard, you should be able to use any of these – or all of them. Nobody has just one facet (or persona) comprising their identity; everyone has a collection, representing the different parts of their lives. Ben Werdmuller the web strategist for hire doesn’t need to be connected to Ben Werdmuller the Doctor Who fan, who in turn doesn’t need to be connected to the Oxford resident. They can be connected if I choose to make them, but separating parts of your life is part of a user’s control over their identity.

However, that needs to be context-specific, not application-specific. Currently, for example, my Facebook account tends to be personal, while my Twitter tends to be professional. That doesn’t make sense: in order to write personally on Twitter, I either have to accept the collision of those two parts of my life, or I need to create an entirely separate, fragmented Twitter account. Wouldn’t it be better to be able to control who sees which interactions, and choose tools based on the functionality they add to a conversation? Otherwise you have the situation I present above: one identity per communication context per application. That will quickly become unmanageable, and the web will be littered with dead profiles.

Conversely, I believe the future of the web is in atomic digital identities based on permissive, open standards, linked together as an application framework.

How do we make this work?

Problem to solve: user control

First and foremost, the framework for decentralization must be established – in other words, the actual social mesh standards that will make it possible.

Technical mechanisms need to be established for controlling access to a resource or collaborative space, which should be easy to use without removing any of the flexibility of the platform, and should allow for the maintenance of multiple personas.

Another part of access control is allowing a resource to expire gracefully. It’s important to know when to lose data: sometimes documents, resources, spaces, personas or entire identities may be transient and only required for a certain length of time. There’s no need for everything on the web to exist indefinitely; currently, rigorous indexes like Google ensure that much of it does.

Finally, the tools and standards we create must be permissive of goals, content and structure that we might not have thought of. There certainly doesn’t need to be an overarching structure or taxonomy between individual identity spaces, and constraining the technology to a rigid set of activities and data types would limit the scope of the platform.

Problem to solve: ownership

Existing web applications tend to have a single-ownership model for resources. However, Silona Bonewald rightly pointed out to me that this isn’t always the case, and in a free-flowing social mesh, multiple ownership needs to be represented. For example, all collaborators on a resource should have ownership access, unless they explicitly choose to rescind that right.

In a company environment, a user’s employer may have shared ownership (or full ownership, with author access available to the employee). The same may be true with students in a university environment. On sites like Facebook, the service owner may in reality have some ownership rights over the content.

How can we maintain this granularity, but also retain user control?

Problem to solve: privacy & transparency

There is a very public attitude of "when you put something online, it’s published" in some parts of the software development community, which is a useful concept that gives developers carte blanche to share data freely. In a fully user-controlled environment, this public-or-completely-private binary situation can no longer be the case; a resource may have been published to a few select people. Ignoring this trait disallows the platform’s use in important environments like enterprises or public bodies.

When you sign up to a service, you agree to that service’s terms and conditions and privacy policy. However, your data may be farmed out to a collection of other, secondary services via APIs, without your knowledge or consent.

An important aspect of user control is knowing how your data is used and where it is transmitted by the applications you use, so I propose a simple, human-identifiable and machine-readable mark that:

Applies permissions to how my data can be used by applications (like Creative Commons does for shared content)

Tells you in a visual way what happens to your data when you visit a site

Incorporates multi-ownership

It may be that these issues are addressed within the terms and conditions of a service. However, it’s very unlikely that a user will actually read the full contract. Therefore, a simple graphic icon with a link to a plain-English description, with an underlying microformat for machine-readable use, would be a welcome addition to the user experience. As the web becomes more mesh-like and data moves around more freely, conveying what happens to data owned by less-technical end users will become more and more important.

Problem to solve: platform

Finally, while it’s great having a conversation about this, these ideas aren’t useful to anyone unless someone goes ahead and builds it.

There are some existing projects and thinkers who are on these tracks:

The Diso Project is turning the WordPress open source blogging tool into a decentralized digital identity through an array of open standards, and the project’s Chris Messina has a lot of wise things to say about its development.

Laconi.ca is a decentralized microblogging platform, whose Open Microblogging standard may be adaptable into a more widely-scoped technology.

The Open Stack is a set of developing technologies that address some of the issues.

All of these are important contributions that strongly address some of the issues; however, we’re still a long way away from the vision of an open, social web.

Conclusion

I believe strongly, for the reasons stated above, that a decentralized, user-centered model for the web is the best way to advance it as an application platform.

Needless to say, I have my own ideas about how to actually build the platform, based on my Making the most of the web principles. However, it has to be a collaborative process: there’s no sense in building an open collaborative standard by yourself. My main concern is that the platform is created and works in an open, lightweight, flexible, easy-to-develop-for way while remaining secure and yielding control to the main user. The result will be an entirely new kind of platform, and presents a unique opportunity for anyone who wants to jump on board.

ScienceBlog reports that on Saturday, Carl Whithaus will announce the preliminary results from a California Department of Education study into increasing academic achievement using computers in 4th grade classrooms (emphasis mine):

During the first year of the two-year study, student achievement increased 27.5 percent, according to Whithaus, who is principal investigator of a study to evaluate the project’s effectiveness.

Computer use – and particularly, online community engagement – increases engagement with formal learning, which is great news for the e-learning software market. But I’m particularly interested in the effect of networks on informal learning – specifically, learning from our activities on the web.

Learning happens when two sets of experiences and assumptions are exposed with each other – in other words, when we communicate. The web is the most globally efficient communications method the world has ever seen, and as a result, I believe, may rapidly transform our world culture for the better.

Last month, I met with J. Nathan Matias from the World University Project, a project that aims to evolve higher education by shedding light on how people learn and teach around the world. His intent is to highlight experiences that people in the west have largely not been exposed to, and in so doing advance mutual understanding between our academic systems. It’s a brilliant idea, which takes advantage of the potential of a universally accessible global communications network.

Recently, the Iranian election swamped Twitter, to the point where they rescheduled maintenance in order to minimize the effect on dissidents in the country. Suddenly, because Iranian dissidents were online and conversing with people from the west, Iran seemed less like a scary, far-off country filled with terrorists and more like – gasp – a country filled with actual human beings. Clay Shirky had this to say:

I’ve been thinking a lot about the Chicago demonstrations of 1968 where they chanted “the whole world is watching.” Really, that wasn’t true then. But this time it’s true … and people throughout the world are not only listening but responding. They’re engaging with individual participants, they’re passing on their messages to their friends, and they’re even providing detailed instructions to enable web proxies allowing Internet access that the authorities can’t immediately censor. That kind of participation is really extraordinary.

On a smaller scale, we’re now interacting with people from other walks of life, with markedly different sets of skills and interests, on a daily basis. The opportunity available to us is not just to get our message out on an unprecedented scale – but to get other peoples’ messages in, and in the process make ourselves more educated and informed than we’ve ever been. On a personal level, it can help us with our fourth grade homework; on a societal level, it’s a revolution.

I believe a truly decentralized social web is required to fulfill the web’s potential as a platform for business collaboration, and I’m very interested in helping to push the technical and conceptual boundaries in that direction. I spend a lot of time on this blog writing about that, but I think it’s also important to remember that a huge amount is possible using the technologies, standards and ideas that we can currently pick up and use.

Creating a new web tool, or adapting one for your own use, can be a bit like pitching a movie: a lot of people come to me and say things like, “it’s like Delicious meets Youtube, but for the iPhone”. That’s great, and can result in some very interesting ideas, but I think it’s always best to go back to first principles and ask why you need the tool to begin with. My post The Internet is People addressed some key points on this:

Your tool must plug into an existing network of users, or be useful for user 1 (the first user to sign up). Delicious lets you save your bookmarks into the cloud; Flickr lets you easily upload photos so other people can see them. Both services come into their own when you connect with other users, but the core of the site is useful before you’ve done so. Facebook is different, but it had the Harvard real-world social network to plug in – and it now acts as a useful aggregation of your other activity on the web, which arguably is useful for user 1.

You can’t build a site and assume people will come and use it. It’s a lot of hard work, even when the technology is ready for launch; you need to lead by example, constantly adding content and using the site as you would like it to be used. Not to mention the hours you have to put in promoting it elsewhere.

The feature set itself should be tightly focused:

As each tool should focus on one particular network, or at least type of network, I’d argue that the exact feature set should be dictated by the needs of that network. Educational social networks might need some coursework delivery tools; a network for bakers might need a way to share bread recipes. The one common feature in any social network is people; even profiles may not be entirely necessary.

I mention at the end of the post that these principles were the guiding ideas behind the design of the Elgg architecture. They’re now the principles behind the tools and strategy I develop for my clients.

In this blog you’ll find lots of talk about new technologies, innovative approaches and the ethics of social media. These allow us to build interesting new tools, but they always sit on a firm foundation: the Internet is just people connecting and sharing with each other, and the purpose of web tools is to make that as easy as possible.