All postings/content on this blog are provided "AS IS" with no warranties, and confer no rights. All entries in this blog are my opinion and don't necessarily reflect the opinion of my employer.
In an earlier blog post I talked about "Web as a Platform" (in Web 2.0's context) and briefly described a layered and componentized perspective in looking at the Web platform in general. And I thought it would be more clarifying to illustrate what a Web platform stack might look like, so this post is intended to describe (not define) a stack view of the Web platform.
Plus, the evolution of this stack is the result of collective innovation contributed by many brilliant minds, and not driven by any single entity. Just as Eric Schmidt had said, "don't fight the Internet", I also don't think we need to model the Web after a specific prescribed framework. Rather, just allow the collective consciousness continue to innovate organically.
Thus this is a description of the Web platform (not a definition), as it is merely an attempt at categorizing the observed patterns and trends, and their relationships and dependencies, in the Web 2.0 phenomenon, into a structured context. There are many ways to describe and categorize these patterns, so this view is not necessarily exact and accurate, but hopefully it can provide some clarifications into the way Web is evolving.
Architecture of the Web
Below is a high-level rendering of the layered components architecture view of the Web platform stack:
The choice of words used is questionable, but the intention here is to highlight the trends and patterns (and their relationships) and hoping to effectively convey the concepts, without spending the time to make sure they are semantically accurate.
Just as I mentioned in my earlier blog post, layers towards the bottom of the stack are progressively closer to raw data and IT architectures, and layers towards the top are closer to people. In general, this layered stack view is used as I think lower layers serve as platforms that encapsulate the underlying complexities and provide abstraction and support to the upper layers. Even though this also kind of describes the evolutionary path (or a maturity model) of the Web in the past few years, I think this stack view is relevant as innovation is still occurring across this entire view.
Some examples to help clarify (nowhere near a comprehensive list; just intended to illustrate the categorizations):
In general, each component in each layer is worthy of a separate detailed analysis, and only a minor fraction of things that are examples of a particular category have been listed. Though the intention is to show that each site or service individually is not representative of the layer component; it is the network effects created by the collection of sites and services in that category. Similarly for the layers in the platform stack, it is the aggregation of individual components that really exemplify the characteristics of that layer.
As a result, we can see that each layer in this stack view has dependencies on the services offered in the underlying layers. And each layer itself provides a level of abstraction and support to the layers above. Thus architecting solutions using the Web as a platform is quickly becoming a process of choosing a target layer (where the solution will reside), and choosing the appropriate combination of support services from the underlying layers.
This view can also be helpful in visualizing general trends of innovative development on the Web, and identify potential spots where opportunistic developments can occur, and areas where they have been turned over to systematic developments. For example, the current state (as of this writing) is that mainstream efforts can be categorized as focused in the "Participation" layer, and is where many of the opportunistic developments are being turned into systematic ones (basically, gaining maturity). The "Interaction" and "Interpretation" layers are considered to be the subject of the next Web (or Web 3.0), and is where much of the research & development efforts are focused in.
One fundamental aspect is that, the Web platform is created and maintained by the collective wisdom contributing to it. It is too big and too diverse for any one entity to own, even though many organizations have investments in multiple areas, and some more than the others. But it is interesting to see how this view of the Web platform is taking shape, based on the inter-dependencies and (almost "symbiotic") relationships established between the clusters of sites and organizations operating on the Web.
The general concept here is that, Web 2.0 applications are taking on a new form. They are composite applications in nature, and increasingly can be created and hosted completely in the Web (cloud), without any dedicated on-premise infrastructure. And they are increasingly being implemented at higher levels of abstraction (moving up the stack).
For established enterprises, this marks a shift in Web application models. From approaches to open up enterprise data silos and providing value-added services to customers ("Applications" layer aspects), to migrate to a model where various higher-level components of the Web ("Integration" and "Participation" layer aspects) can be integrated and leveraged to connect to the communities. For emerging businesses, it is now possible to quickly establish an initial online presence by completely building on the cloud-based Web platform, while looking to add differentiating values with a variety of options (such as dedicated on-premise solutions).
From a user participation perspective, lower layers are progressively closer to people with higher technical expertise, but are populated by smaller communities. On the other hand, upper layers are progressively closer to larger communities as barriers to entry, from a technology perspective, are increasingly lower. This aspect demonstrates the power of network effects in enabling the participation age, and fueling the explosive pace of innovation towards creating a Web that connects/involves more people and is more relevant and intelligent.
Certainly, areas where boundaries are being pushed may still sound like science fiction, and it's fun to imagine that new breakthroughs will bring about sea changes that will overthrow all conventional wisdom. The blogosphere already has tons of speculations in that respect. Though I believe "could" does not equate to "should", such that change for change sake will not add value; only changes that lead to better outcomes will gain adoption. Thus my assessment is that, significant changes are surely imminent, but conventional wisdom will also not cease to complete irrelevance. Eventually, when the pendulum settles, we usually see a hybrid world, with some changes more dominant, and some changes less. The Web is a place where rapid changes are occurring, and as architects and strategists, using a pragmatic viewpoint when facing these changes may help us better plan the migration path between current and future states.
This post is part of a series:
I had the opportunity to present at the MSDN PowerSeries event in Irvine, on Software + Services, Windows Live Platform, and the Office Platform. It was a tough act to follow after Lynn Langit's morning session, but the audience was great and allowed me to talk about these topics at an architecture level and not providing implementation-level details.
For those who attended the event - thank you again for your time at the event and the feedback you've provided; both positive and otherwise. Here are the presentations:
Software + Services Overview
Windows Live Platform Overview
Office Platform Overview
The presentation decks have also been uploaded to my Windows Live Skydrive in PowerPoint 2007 (PPTX) format. If you don't have Office 2007, you can download the free PowerPoint Viewer 2007. Here are the direct links to the presentation slide decks in PowerPoint 2007 (PPTX) format:
I’m excited to let you know that Microsoft will hold the next Professional Developers Conference (PDC) October 27-30, 2008 at the Los Angeles Convention Center. More information on registration will be available shortly. For now, please save the date!
The PDC is the definitive Microsoft event for software developers and architects. PDC participants will have the opportunity to hear from executives about the latest platform advancements, and engage in in-depth discussions around upcoming technologies and the future direction of the Microsoft platform.
I will to share more information with you as the event gets closer. Please also check out the PDC Website -- http://msdn.microsoft.com/pdc2008 -- for updates.
I hope you will be able to join us at the PDC!
My colleague Joe Shirey just put together a series of eight posts that cover the process of the Microsoft Certified Architect (MCA) program and “what would I tell someone interested in the program”.
Joe is one of the board members of the MCA program that has helped to shape it since its inception. He offers many insights to people who may be interested in pursuing certification in this prestigious program.
Check out his blog posts:
· Why do you want to get the MCA?
· Preparing the documentation
· Putting together your presentation
· What else can you do to prepare for the board?
· The competencies
· Going in front of the board
· What to do with your results
March 5 - 7, 2008 The Venetian Resort Hotel Casino Las Vegas, Nevada
Now in its third year, MIX is an intimate opportunity for cutting-edge technical, creative and business strategists to engage Microsoft in a conversation about the future of the web. Come explore the latest wave of opportunities and help redefine the boundaries between: content and commerce, PC and TV, Windows and the Web.
Keynote presentations from Steve Ballmer, Scott Guthrie, Guy Kawasaki and other distinguished speakers unveiling the latest web-oriented products and technologies.
DISCOUNTED ADMISSION $1095 USD Register before January 15, 2008 for a $200 discount (After 01/15/2008) Full Conference Registration - $1295 USD
To register: http://register.visitmix.com/