Interfaces as building blocksPosted: September 14, 2005 at 11:16 pm in socialsoftware, tech
Even though it’s late and I’m tired (I went to Dorkbot this evening, which was surprisingly disappointing), I’m just going to keep on trucking, because I sketched out another post while driving to work this morning, picking up on one of the threads I left hanging at the end of yesterday’s post, which is the relationship of accountable interfaces to the Internet.
One of the things that has made the growth of the Internet so dramatically rapid is that the interface is open all the way down. From HTML down to TCP/IP, you can open up the black boxes and see what’s going on inside, which means that you can build stuff on top of those abstractions without fear that something underneath is going to break what you’re building. And, more importantly, the network is open and stupid. If you format things properly, the routers will take it and send it. Whether you’re doing multimedia or voice or text or anything else, as far as the routers are concerned, they’re just packets being sent from one place to the other.
Why has this led to rapid growth and development? Because anybody can try anything. The openness of the protocols makes it possible to figure out how to construct new applications on top of the abstractions already in place. And the openness of the network means that nobody can block those new applications from replicating virally as people discover them.
All this has been said before, of course. But I want to pause for a moment and use the terms I introduced yesterday to examine the Internet as an interface. The fact that you can examine each of the protocols and find out how they work makes the Internet interface accountable in the sense that its workings are observable and reportable. I’m not quite sure how to classify the openness of the network, but it could be construed as a variation of charming, in that it invites experimentation and interaction, because nothing is forbidden. And in an epistemological sleight-of-hand, I’m going to claim that we can see how powerful an accountable, charming interface can be, by labelling the Internet as such an interface and holding up its manifest success.
So where do we go from here? The next phase of the web is being called Web 2.0, whatever the heck that means. The basic idea, as far as I can tell, is that people have continued to build yet another layer on top of the existing internet protocols, and now we’re all going to start using each other’s tools in one big glorious technical mashup. In particular, the tools are getting simple enough to combine that non-technical users can generate their own combinations of tools in new and interesting ways (danah boyd refers to the godawful neologism of glocalization in her post on the subject). Users can create their own applications by building with each other’s blocks. But for this to happen, the blocks need to exhibit the same characteristics that I claimed for the Internet protocols above. They need to be accountable and open, such that users can determine whether the blocks are appropriate to their needs. And they should be charming, inviting the user to experiment with them, to play with them, to figure out new uses for them.
I’m going to step back for a second and drop in a design principle of embodied interaction that Dourish postulates: “Users, not designers, create and communicate meaning.” What does he mean by this? He’s making the point that a designer can tell a user all day what an icon is supposed to mean, but the user defines the meaning for themselves. Another example that Dourish uses is that an artifact designed for one thing may be used for a completely different purpose by the user, adapted to fit their needs by the exigencies of their situation. Another way of putting it is that “Users create uses.” Without users, the interface or artifact is a meaningless conglomeration of technology. Users decide how it is to be used, thereby giving it meaning.
Applying this to the world of Web 2.0, we can see that in a world where users are creating their own applications from the building blocks of other web artifacts and interfaces, the users are creating their own uses in a very real sense. And thus taking into account the interfaces of the building blocks that we are creating is going to be important to continue to enable this creation of uses. As I mentioned in the technical mashup post, the exponential growth of combinations possible with an increasing number of building blocks combinable in different ways is reminiscent of speculations on how complex behavior in the form of life first started. Will Web2.0 enable the next phase of our evolution? Okay, that’s too pretentious even for me, but it’s interesting to speculate on how each layer enabled by the appropriate interface decisions of the layer below, creating ever more complexity.