Some more reflections on what I saw at Web 2.0 Expo — I saw a great deal of technology, and there was a good deal of talk about business and marketing strategies. I’m a technologist, so I don’t get into the business and marketing aspects of all of this; but I am reflecting on what an architectural view of all of this means.
The success or failure of any technology venture typically has far less to do with the technology itself and far more to do with other factors. The technology is there to support those other factors; when you focus too much on the technology, you get lost in technical details and fail to see the big picture. Architecture provides perspective. If you understand web architecture, you build better web apps — ones that are more secure and more scalable. If you understand information architecture and business architecture, you provide better solutions for businesses. If you are driven by technology and lack that architectural perspective, your solutions suffer and you are more likely to fail.
Some people recover from this mistake by remaining agile and adapting quickly to circumstance. If they are truly successful in doing this it is because they learn from their mistakes and begin to build or acquire an architectural perspective in an iterative, evolutionary fashion. Sometimes you can’t have the right architectural perspective to start with because you are blazing trails in uncharted territory. It seems to me that much of this Web 2.0 stuff has that character to it, but certainly the more visionary people in the industry are thinking about this.
I’m fairly new to this field, but as I’m thinking about what I saw at the Expo and the technologies I’m delving into, I’m thinking about what this architectural perspective means for social networking on the web. Certainly, there are some lightweight components of an information architecture emerging — such as microformats — as well as more structured information architectures provided by Semantic Web ontologies such as OWL. O’Reilly has published a book on Information Architecture for the World Wide Web — which looks quite interesting, though I haven’t read it yet. Fragments of a technical architecture (layered on web architecture) have emerged with widgets, pinging, and others technical approaches.
In Enterprise Architecture in the business world, though, a key element of the architecture — the “top layer”, one could say — is the business architecture. That is all about understanding the business processes and organization independently of the information structures and systems supporting them. Likewise, the architectural perspective on social networking on the web must include as its top layer an understanding of the patterns of use and the nature of the social networks themselves that emerge. This is heady stuff that has attracted a good deal of scientific interest involving disciplines such as social network analysis and network theory — and I’m certainly out of my depth on those topics. Sometimes, though, this stuff is brought down to earth — such as with Tim O’Reilly’s article on The Architecture of Participation.
I think for those of us building solutions in this space, we need more of the latter — sort of the equivalent of design patterns for social networks. The Wiki Patterns website is a nice example of this approach applied specifically to Wikis. If developers know the best practice patterns for use of Wikis, they build solutions to support those best practices, so they build better solutions. Users benefit, as well, as they have recipes for adoption that enhance their ability to leverage the solutions. So I’m wondering anyone is identifying patterns for social networking applications — the sort of thing that developers can use without needing a PhD in network theory.