A while ago, I characterized the stages of web development as:
- Web 1.0: producer-generated content, where you had to be able to manage a server and work in obscure codes
- Web 2.0: user-generated content, where web tools allowed anyone to generate web content
- Web 3.0: system-generated content, where engines or agents will custom-assemble content for you based upon what’s known about you, what context you’re in, what content’s available, etc
It occurred to me that an analogous approach may be useful in thinking about interactivity. To understand the problem, realize that there has been a long history of attempts to characterize different levels of interactivity, e.g. Rod Sims’ paper for ITFORUM, for a variety of reasons. More recently, interactivity has been proposed as a item to tag within learning object systems to differentiate objects. Unfortunately, the taxonomy has been ‘low’, ‘medium’ and ‘high’ without any parameters to distinguish between them. Very few people, without some guidance, are going to want to characterize their content as ‘low’ interactivity.
Thinking from the perspective of mobile content, it occurred to me that I see 3 basic levels of interaction. One is essentially passive: you watch a video, listen to an audio, or read a document (text potentially augmented by graphics). This is roughly equivalent to producer-generated content. The next level would be navigable content. Most specifically, it’s hyper-documents (e.g. like the web), where users can navigate to what they want. This comes into play for me on mobile, as both static content and navigable content are easily done cross-platform. I note that user-generated content through most web interfaces is technically beyond this level.
The next level is system-generated interaction, where what you’ve done has an effect on what happens next. The web is largely state-independent, though that’s changing (e.g. Amazon’s mass-customization). This is where you have some computation going on in the background, whether it’s form processing or full game interaction. And, this is where mobile falls apart. Rich computation and associated graphics are hard to do. Flash has been the lingua franca of online interactivity, supporting delivery cross-platform. However, Flash hasn’t run well on mobile devices, it is claimed, for performance reasons. Yet there is no other cross-platform environment, really. You have to compile for each platform independently.
This analysis provides 3 meaningful levels of interactivity for defining content, and indicates what is currently feasible and what still provides barriers for mobile as well. The mobile levels will change, perhaps if HTML 5 can support more powerful computation, interaction, and graphics, or if the performance problems (or perception thereof) go away. Fingers crossed!