Transforming the Enterprise As We Know It

As I was reading David F. Carr’s latest piece on The Brainyard today, it drove home again for me some of the practically insurmountable challenges that many organizations have in avoiding the growing forces of digital disruption. David’s piece talked about Don Tapscott‘s proposition that we have to fundamentally remake the way our organizations engage with the world and produce useful work. The very-near future of business consists of new methods that are effective in today’s world, not for the era they were created in:

“When most people think of Enterprise 2.0, they think of the use of collaborative tools,” Tapscott said. “I’m arguing that something much bigger is happening than the application collaborative tools within the enterprise–it’s a profound transformation of the enterprise as we know it.” Basic principles of organization that have been established over the last 100 years are being upended, leading to “huge changes in how we orchestrate capabilities to create goods and services,” Tapscott said.

Like Tapscott, I’ve long been a proponent, along with thought leaders like John Hagel, that there’s a deep and profound Big Shift taking place as we get deeper into the 21st century. To survive, we must think in deeply networked, decentralized terms now, not in the rapidly receding business concepts of an age bygone. This means platforms instead of products, ecosystems instead of businesses, peer production instead of central production, and networks instead of hierarchies, to name just a few of the more significant aspects of the shift.

Emergent Business Processes and Enterprise Transformation: CoIT and Social Business Implications of the Big Shift

But how can traditional organizations get there? Web companies have a hard enough time getting there themselves, as digital natives. Most of them certainly don’t become the next Amazon or Facebook, two companies that virtually embody much of the changes taking place. Instead, I see many traditional firms engaging in the cargo cult mentality, hoping that by adding window dressing like social media, a few APIs, and perhaps some user-generated content, that they too will suddenly have a healthy, sustainable future.

Well, it’s not going to happen that way. The changes required are deep and sometimes painful. In fact, the more I examine the issue, successful transformation to a new mode of existence that naturally avoids the disruption inherent in these shifts boils down to a surprisingly few number of key changes. But those changes, though not generally that complex in and of themselves, are almost impossible to drive deeply into many organizations by virtue of their existing structures and processes. As they say, culture eats strategy for lunch.

Many of you know that I’ve been exploring how to foster social business approaches in large organizations for a number of years. When I see successes, they seem to have much in common with what made things like social media so successful. Yes, that’s network effects but also, and more to the point, about enabling an environment where emergent change can actually take root and thrive. A network effect can’t take hold if everything about the traditional way a business operates is to lock everything down into fixed transactional processes. That just doesn’t work in a fast changing new era where the value is in sustaining dynamic relationships and not fixed transactions.

As JP Rangaswami recenty wrote, it’s now all about “The capacity to change. Designed as an integral function. Native.

How then can businesses “fundamentally remake” themselves? What critical changes are at the heart of moving from regular business to things like social business? I’ve been exploring the answers to that question recently in quite some detail, but I’d start with these three things:

  • Local autonomy. Effective, resilient response to business change can’t only be driven by top-down, hierachies. It’s far too slow, low in innovation, and far from problems on the ground. Restructure the organization so that change along the edge is not only possible, but well-resourced, common, and effective.
  • Freeform collaboration. Going beyond Enterprise 2.0 to reinventing the way business models scale and provide value. I’ve previously written about the orders of magnitude cost reductions that are possible and the things they enable, plus how to get there.
  • A culture of experimentation. Of the three, this is the hardest. The first two are different; it’s always possible to create a startup culture at the edge of organizations and it’s also possible to drive mass collaboration. We increasingly see it done all the time in large companies, though it takes time to really establish itself in a transformational way. But to get an organization to be fundamentally more accepting of innovation is very difficult to instill when it does not already exist. Some of it is a skill problem, but a lot of it is more systemic. Solving this is going to be one of the great generational challenges of the social business era.

There’s a lot to consider when undergoing the large-scale transformations that businesses must undertake today, but a focus on these core issue will go way towards getting started.

Are We Building Businesses? Or Are We Building Platforms? Yes.

A couple of days ago I saw a tweet go by from Michael Cote, referencing some work I did a few years back that tried to articulate the full notion of where Platform-as-a-Service (PaaS) was going. I had been exploring the subject as Google and Amazon had recently been busy expanding their offerings in the space.

I was struck by how well the early depiction held up, given the evolution of the industry since then, including the arrival of new innovative players at the time (Heroku and CloudFoundry) and the struggles of some of the originals (Bungee). I wouldn’t add or change much about the breakdown, other than to update it around the edges and add some examples:

The Moving Parts of Platform-as-a-Service Including Business-as-a-Service and Software-as-a-Service

But as I looked at this, it also occurred to me — as our focus much of the time in business these days is about strategies to deal effectively with the latest disruptive tech — that it’s up to us to have an abundantly clear vision of the big picture of what we’re actually aiming for as a whole. This is particularly true now since the choices we make today on how we build and evolve our businesses will either lead us to 1) break out of the box and thrive or 2) just make incremental improvements that are unlikely to propel us towards a sustainable and successful future.

Key to this discussion is this question: Are we building businesses? Or are we building platforms? Of course the answer to both is yes, but most of us still possess a very 20th century notion of what a business is.

We think of business in very solitary, disconnected terms, where partners can’t rapidly connect with us and integrate their supply chains, where we can’t even readily reuse and build upon what we have ourselves, and most of our data and systems are closed off from us and each other. Unfortunately, we now live in a new time and this is no longer an option. Those days are definitively over. Steve Yegge’s epic and widely discussed rant recently about how Google doesn’t get platforms (and how Amazon does), shows the new chess board that next-generation enterprises must be playing on:

That one last thing that Google doesn’t do well is Platforms. We don’t understand platforms. We don’t “get” platforms. Some of you do, but you are the minority. This has become painfully clear to me over the past six years. I was kind of hoping that competitive pressure from Microsoft and Amazon and more recently Facebook would make us wake up collectively and start doing universal services. Not in some sort of ad-hoc, half-assed way, but in more or less the same way Amazon did it: all at once, for real, no cheating, and treating it as our top priority from now on.

But no. No, it’s like our tenth or eleventh priority. Or fifteenth, I don’t know. It’s pretty low. There are a few teams who treat the idea very seriously, but most teams either don’t think about it all, ever, or only a small percentage of them think about it in a very small way.

It’s a big stretch even to get most teams to offer a stubby service to get programmatic access to their data and computations. Most of them think they’re building products. And a stubby service is a pretty pathetic service. Go back and look at that partial list of learnings from Amazon, and tell me which ones Stubby gives you out of the box. As far as I’m concerned, it’s none of them. Stubby’s great, but it’s like parts when you need a car.

A product is useless without a platform, or more precisely and accurately, a platform-less product will always be replaced by an equivalent platform-ized product.

It’s this last sentence that’s the clicher:

A platform beats a product every time.

In our deeply connected, social, mobile, cloudy, consumerized, and data-driven world, that’s what we must be creating, whether you’re a Fortune 500 company or an Internet startup. Only those with a clue about this will survive the 21st century for very long. Getting there requires real discipline, no cheating (read about Jeff Bezo’s mandate in Yegge’s post above), and minimal compromise. It must be a top organizational priority, especially if you’re a large organization and/or you control large, strategic data sets.

Unfortunately, outside of the Web community, most companies don’t understand how to platform their business, or the urgency. But do it they must if they expect to compete with the new wave of digital native enterprises that will otherwise eat their lunch. Otherwise expect to be run over by Amazon, Facebook, and Apple, and a new generation of platform companies that get it.

For a deeper discussion, please read the “Big Five” IT shifts today, and the 10 strategies I recommend to deal with them and for a detailed exploration of the specific technology and adoption challenges in particular. For specifics on how to platform your business, I recommend Running Your SOA Like a Web Startup and Open APIs Mature Into A Next-Generation Business Model.

Exceeding the Benefits of Complexity? A Fractal Model for the Social Business Era

Over the weekend my friend and industry colleague JP Rangaswami wrote an insightful post that pondered how we have gone about delivering on customer experiences as connected to our back-end capabilities. Specifically, he explored an issue that is increasingly challenging many of the large-company CIOs I speak with these days: That the present rates of change demanded of the accumulation of 20-30 years of legacy business systems is greatly exceeding the ability of our enterprises and associated software “stacks” to deliver on them, particularly as cloud, social, and mobile dramatically transform computing today.

The problem lies in our classical views of enterprise architecture and business architecture both. But JP puts it more poetically:

Development backlogs are endemic, as the sheer complexity of the grown-like-Topsy stack slows the process of change and makes it considerably more expensive to change. The stack has begun to fossilise, just at the time when businesses are hungrier for growth, when the need to deliver customer-facing, often customer-touching, applications is an imperative.

Which makes me wonder. What Tainter wrote about societies, what Shirky wrote about companies, are we about to witness something analogous in the systems world? A collapse of a monolith, consumed by its own growth and complexity? As against the simpler, fractal approach of ecosystems?

This fractal aspect of user systems, Web 2.0, and SOA is one that I deeply explored in the 2005-2007 timeframe, and my ideas on this even made the cover story of the SOA/Web Services Journal at one point. This is when we began to see successful, composite systems sprouting up “in the wild” that were eminently natural and highly successful, such as Amazon’s, Flickr’s, and many others. Innovative new open API-based businesses had definitively emerged and shown us — in fact, virtually proved to anyone willing to observe — that business/technology ecosystems could be routinely produced that were far more successful than the ones virtually any traditional business had managed to produce for itself internally with methods like SOA. It was clear something important and new was happening and we tried to learn from it.

Traditional Closed Business Stack vs. Open Networked Supply Chain API

The signature lesson in this time period was that being “in the business” of ecosystems, at multiple levels, was the key to resilience, growth, and sustainability. It’s still a far cry from how most organizations are structured today, but I do see the first hints that this is starting to change. Companies like Best Buy and Sears have been getting the message among the old guard firms and looking at integration, partnership, and engagement as an open network activity.

The Web has also shown us that complexity, as important as it is to address and resolve the many inherent vagaries of dealing with the real world, is largely the enemy, whenever it exists needlessly. Our assumptions of where the complexity should be, in the transports for example, was wrong. It was in the ecosystem itself and we paid dearly for half a decade (and running) based on that misapprehension. But we’ve learned. SOAP usage has almost completely shifted to REST, complex WS-* stacks have largely moved on to simple standards and methods like Web-Oriented Architecture.

But technical discussions obscure the very important truths about what we’ve learned in the interim between the “aha” moment when we realized that what was happening so successfully “out there” was something that would make us just as successful inside our organizations, for internal and customer-facing needs both. After all, this holistic ‘integratedness’ — usually triggered via our connections to the Internet — was a part of our businesses increasingly and we simply had to realize this and engage as Internet natives. But back then, Andrew McAfee worried that focusing on the plumbing was the wrong emphasis to have on the exciting changes taking place, and he was largely right from a communication perspective.

However, building fractal architectures that addresses the old and the new isn’t as easy as just deciding to cast off the old, less effecive ways, as JP notes:

What I’d established in my own mind was a growing belief that the issue was to do with rates of change and costs of change. Vertical integration paid off when the rate of change was low. Networked small-pieces approaches paid off when the rate of change was high.

We are clearly living in times of much greater rates of change. Unfortunately, the old systems, the old architectures, the old business “stack” is often running the core of the business. It’s usually deeply vertically integrated, and not made of small networked pieces, loosely joined that are truly agile, deeply harness innovation on the edge, and turn IT into a profit center instead of a cost center.

So, while I have a lot more to say about this, because I believe that social business context will be at the root of the future of our how we design our products, services, processes, and workplaces, below are a few basic rules you can take away that if you stay true to, can indeed help you make the transition to the future. Note that customer and worker experiences are outside the scope of this, this has more to do with the new business stack below the social layer:

4 Ways to Create Sustainable Business Ecosystems

If resilient, networked, recomposable, open business capabilities are the future of business and IT architecture, getting there then requires a substantial change in stance:

  • Open Your Business Stack. To everyone, internally and externally, generally in the order of the systems and data that are most often requested for integration. Make it easy for anyone to onboard themselves and use the simplest and most egalitarian technology possible to deeply connect the world to your business. Self-onboarding is crucial because it enables the killer asymmetric business advantage of systems that respond to external engagement best: Export most of the change effort to outside your organization and impose it on those that wish to participate and integrate with you. Enterprises that close the “clue gap” with Big Data will have an enormous advantage.
  • Go Into the Business of Ecosystems. Stand behind your open supply chain: Invest in it for the long term, market it, evangelize it, support it, and stand behind it like your customers — again, internally or externally — will be building world changing products and services from them (if you do this, the track record is that they will.) Be fair and generous with your IP and enterprise data; you are under-utilizing it by several orders of magnitude until you do this, leaving much or even most of the potential of your business on the floor. Worse, until you treat it like a business, you won’t get external contributions to enrich your ecosystem that will drive down the cost of change while greatly increasing the velocity of new solutions and local adaptations.
  • Begin Fractal Reconciliation of Your Classical Systems. While hanging a trendy Web API off an ancient COBOL accounting system might be a step in the right direction, long-term success will mean going well behind the API. The existing business/IT landscape must be converged and rationalized so they themselves are made of “networked small pieces” that are faster to change as well as more resilient and responsive to being so much more connected (and therefore useful and valuable) to the world.
  • Spin Up New 21st Century Business Models. All new possibilities, many of which will be foreign to non-digital native firms, are reachable once you have created a fractal enterprise stack. Dominating classes of data, metered business knowledge, all new monetization methods, and more become possible once the three transformations above have started.

Unfortunately, after having advised and directly assisted many large companies in doing much of what I’m describing here over the years, it’s clear that most organizations are at a major disadvantage in making this transformation. The organizational will required is actually quite low, since most of this is fairly easy to do now with cloud technologies, increasingly capable technology partners, and the latest development stacks. Instead, it’s the understanding of how important it is to kill excessive complexity and focus on ways of thinking about business and technical architecture that will propel companies into bright futures.

We must leave behind vertical integration and radically collapse the size of our seams (APIs) in our businesses, while radically increasing the number of useful endpoints such that we look at them as the very fundament of our enterprises. The benchmark for success is how many others are depending on your ecosystem for their own success. Starting now, the activity in your organization must be focused on optimizing for growth of this number. That is the only way we’ll ensure we’re building businesses that are the most relevant, meaningful, and valuable to us going forward. The enterprises that don’t simply won’t survive in their present form. I believe that much is at stake here. Unfortunately, the “cultural gap” John Hagel wrote of back when this conversation started between the enterprise crowd and the Internet crowd is still much too large and is still hindering the move forward for many organizations.

I look forward to continuing this discussion and exploring just how much we’ve recently learned about the future of business and enterprise architecture.

On Web Strategy

Global Use of Social Networks and E-mailMy old Web 2.0 blog is finally closing due to hosting issues so I’m moving the conversation here going forward. I’m also relocating my large library of old posts and visuals to this blog over the next few weeks. Collectively they’ve had over 12 million views and are witness to an amazing time in the history of the Web, business, and society. 

It’s been a profound era of change by any measure, and one that we’re fortunate to live through. Over the last seven years we’ve seen the rise of social media, Web 2.0, Enterprise 2.0, and now social business. Put simply, the Web-based world has changed nearly everything about the way we globally connect together and create shared value. For now, this blog as well as ZDNet, ebizQ, Dachis Group, and Hinchcliffe.org, will be where I will continue exploring the emerging edge of business and technology, with this blog focusing more on the Web itself and my other channels focusing more on the enterprise aspects.

I’m renaming this blog to On Web Strategy because I’ll continue to focus on the way the Web works, particularly what makes it so powerful for those that understand it. There’s lots of exposition available online about the changes taking place today, but not enough exploring the specifics of how Web-based networks are driving pervasive change. Among the endless information streams available now, there’s still room for more thorough examination of the way the Internet is co-evolving into the single most powerful platform for self-expression in history. I believe this is true whether you’re a person or a business; there is no other place nearly as compelling, innovative, valuable, or relevant today. And the Web itself, far from reaching maturity, remains the single most exciting — and most rapidly moving — place to improve and transform how we live and work.

Knowledge Work Dominates U.S. Labor by SectorWhile my primary interest lies in connecting the two too-often loosely connected roads of business and technology, I think the increasing convergence between them is where much, if not most, of tomorrow’s opportunity resides for those that can successfully overcome the obstacles. For its part, social media has become a leading force for value creation in the world along with the rest of our digital footprints, with which we are now creating the richest and most vibrant record of our times. Visionary enterprises are now seeing how to tap into this and join in partnership with the rest of the world to create entirely new types of products and services together with their customers. From the data, it’s clear that social co-creation and other new and closely related models, such as crowdsourcing, are genuinely changing the nature of human activity, especially value creation, control, ownership and other less-tangible qualities like trust, openness, and understanding.

While some organizations and individuals will continue to debate the actual magnitude of the changes that the new low-barrier, high scale, and virtually free tools of self-expression are fostering today in the large, there’s little doubt looking at the macro trends that momentous things are happening. I have certainly been asked, “are these changes as big as the printing press? As big as mass media? How about personal computing” Yes and yes and yes. And much more significant in terms of actual change wrought. I’ve included here a few recent pieces of my research that illustrate the case that the business, cultural, and societal landscape is being remade right now, and doing it quickly in some cases. This includes the following data points:

Trends and Drivers of Work and Life Today

    Portion of the Web That's Peer Produced

  • Social is how we communicate today. There has been a generational change of communication from point-to-point (e-mail) to social in four short years (see first figure above). Certainly e-mail is in decline and will be with us for a decade or two, but it has dramatically lost its prominence and relevance in recent years. For now, social media is the way we increasingly prefer to connect and work together. Traditional organizations have had some trouble catching up to these trends, but I’m finally seeing evidence that they’re doing so.
  • Knowledge work is the driver of our world economy. People-based activities centered around the creation and exchange of information (financial services, real estate, education, media, governing, etc.) are what modern economies are built on (see second figure above.) Methods that greatly improve the creation and exchange of information will have inordinate value, especially models that optimize for it, i.e. social media and by intent, social business. Knowledge work is about 60% of the labor force today and growing steadily. The less valuable service economy is growing as well and is also a beneficiary of these new and emerging forms of communication and collaboration.
  • Peer production is now the primary motive force for creation and sharing. Centrally controlled models for production in business and government are much less powerful and inordinately more expensive. The creation of information on the “edge”, by individuals, has transformed traditional media as well as the Internet: It’s now made by us, with approximately 80% of information on the Web (see last figure, right) now coming from user generated content. In the future, sensors and other information generators may outpace us, but for now the most important trend is that productive capability has moved decisively into the hands of us out there in the long tail.

What does this all mean? That’s what this blog was developed to figure out. Come back and visit. I’ll be exploring Web strategy and cutting-edge innovations that are likely to have significant impact to the way we run our organizations and live our lives. Please drop me a line if you want to share your ideas, or better yet, contribute them in comments below or in your own blog or social network.

The K-factor Lesson: How Social Ecosystems Grow (Or Not)

Recently for some work that I’m doing I had to revisit the techniques for creating successful online social environments.  This is a surprisingly deep and nuanced topic that we as Web application architects or enterprise social computing practitioners are just now fully beginning to grasp.  The subject matter itself runs the gamut from key conceptual underpinnings — esoteric topics like systems theory and network effects — to the daily grind of understanding and managing the needs/expectations of an often difficult-to-control community of actual, live people.

In general, I’ve found that the ideas behind social systems themselves are clean and elegant while dealing with their practical realities can definitely be messier and many find them annoyingly unpredictable as well.  In the end, online social ecosystems are invariably a fascinating mix of the classic vagaries of technology and people.  However, despite the apparent science, making them grow into something undeniably successful is still very much an art form.

Interestingly, there’s no real name for this skill yet and it’s an important — even vitally strategic one — for any organization that has to engage with a lot of people over a network. And that’s increasingly most of us in these days of the ever-present Facebook news feed, Twitter microblog, and workplace Enterprise 2.0 environment.  It also means that creating a workable online community requires a good dose of hard-nosed engineering as well as highly effective “soft” skills in UX design, social architecture, and community management. For it to really work — to have a vibrant and growing community — you have to seamlessly connect both of these worlds: a well-crafted social environment together with the people that will use it. The rewards for doing it successfully speak for themselves: Ultimately, businesses and communities are groups of people, and if they produce more value for each other together than they can individually, then there is something in it for everyone. And the online world lets us create these entities far easier, more quickly, and with larger populations than ever before in history.

Related: Network effects are just one of several dozen “power laws” that social architects must know today.

We used to call this process “founding a business” or “creating an organization”.  We would call the people that did this entrepreneurs or occasionally philanthropists if their goal was non-commercial. But this terminology doesn’t seem to apply as much to what’s happening now.  For one thing, communities are organized differently and frequently have other motivations for participation than the usual one for traditional businesses: the worker/employer relationship.  Second, the output of large distributed online communities — especially when focused on discrete outcomes — can greatly exceed the results produced by densely concentrated single institutions.  While we are certainly in the very early days of this phenomenon, I’ve frequently pointed to numerous examples of these new models for creating shared value.

So putting aside the socialism vs. capitalism arguments for now (they are increasingly brought up in this discussion, though why they don’t seem to apply here is the subject of a future post) the 21st century networked economy — powered by people and knowledge connected together globally at virtually no cost — has set free fundamentally new ways of innovating and collaborating for mutual benefit.  Specifically, it’s the rules for how these new mechanisms thrive and create value that is the object of discussion here.

Viral Growth of Social Systems: The K-Factor Lesson

For my own part, I’ve been fortunate to encounter ways to reduce the concepts for creating growing social ecosystems to a short list, the key ones which I’ll present here. Please be warned, some jargon is necessary, but I will explain it along the way.

How To Create Self-Sustaining Social Ecosystems: The K-factor Lesson

Like my 50 Essential Strategies for Web 2.0 Products, this overview cannot possibly be exhaustive.  It does however highlight the central idea behind all successful communities: They are either busy growing or they’re busy dying.  Gaining critical mass early on is another important lesson that we’ve garnered from the early Web 2.0 pioneers.  Finally, the aforementioned and mysterious K-factor is introduced and explained below.

  • Fiat and network effects are the two primary ways that social ecosystems grow.  The first is based on an explicit or implicit mandate of some kind.  An example of a fiat is when an organization requires participation in a particular social group, perhaps a committee or online community.  The second, a network effect, is when a social group has more value the more that other people are involved in it too (which is usually, but not always the case.) Keep in mind that the degree of value in each new member, or their contributions, is based on the structure or design of the social system and will vary greatly.  Also note that the fiat approach that is common in business today is a top down effort to “push” participation, while network effects are a “pull” method and tend to be more bottom-up and organic.  Background: Read more about push vs. pull systems. Critically, the degree to which a network effect is realized can be influenced by many factors not the least including the intrinsic nature of the social ecosystem itself and how it is connected to the rest of the network (the Web or your intranet.)  In general, network effects will ultimately be more successful than fiat for most purposes, especially since the use of social systems are so often made optional, even in business environments.
  • Network effects can be encouraged by promoting self-sustaining growth via feedback loops (aka virality).  One of the myths of the online world is that viral growth can’t be engineered. While it’s sometimes not straightforward, it can indeed be created intentionally. While cynical uses of virtuous growth cycles won’t produce results for long, the basics work best: letting any user improve the community by contributing knowledge, often to a lightly structured data set or encouraging them to invite their friends and colleagues.  In fact, any good social ecosystem will make it easy and rewarding to do so, such as allowing users to discuss, converse, jointly edit, or otherwise work together on common goals.  Stated another way, the future of software applications that don’t provide more value when more people are present in an interaction is probably going to be fairly short. A good place for more background on the lifecycles of systems (social or otherwise) is William Varey’s Unlimited Growth.
  • Measure your K-factor and keep it above 1.  The K-factor of an ecosystem is a statement of whether your network effect is self-sustaining or not.  A K-factor of less than one means that your organic growth level is falling (exponentially) and a K-factor of greater than one means that it’s growing naturally and again, exponentially.  How to increase your community’s K-factor? There are literally countless ways but allowing users to contribute to hard-to-recreate data set, adding user distributable widgets that provide useful offsite functionality, as well as integrating meaningfully with 3rd party social networks through their application model are a few of the more popular and effective ones.  I explored some of these distribution approaches in more detail a while back in my overview of the new distribution models of the Web.
  • The higher the social feedback loop intensity, the higher the breakthrough factor.  Feedback loops are created for example when a user invites another user to the community and then that user invites their friends and so on.  However, the quality of the feedback loop is a measure of how often it reaches outside of the community and how effective that outreach is (often stated as  k = e * i, where “e” is the efficiency of the feedback loop and “i” is the average number of invites per user.)  An individual user’s ability to affect the quality and intensity of the feedback loop is usually a measure of their social surface area, which I generally consider to be the size of their social graph x the number of online channels they use x the frequency of participation x the amount of influence they exert. If you have a social ecosystem with a lot of influencers or users that are very active online, they will clearly fuel the response to your feedback loops more effectively. The design of the social environment itself also has a major effect depending on whether it makes it easy to invite others or otherwise create feedback loops.  A breakthrough factor is achieved when the feedback loops rise above a certain threshold of attention, such as when multiple invites come from multiple persons over a short interval of time.  When this threshold is crossed for a prolonged period, the K-factor increases much more rapidly.  This rise can be self-sustaining (the so-called virtuous cycle) and can lead to a permanent and dramatic growth climb as evidenced by many of the popular social networks early on, such as MySpace and Facebook.
  • External “high impulse events” can be used in the short term as a catalyst to reach the breakthrough factor.  This was famously the case with MySpace which used a database of 50 million e-mail addresses to drive initial users to the site, whereupon their feedback loops soon created a particularly strong breakthrough factor.  Traditional marketing is often used as the seed to drive the initial population of communities, but unless the K-factor soon rises above 1, the long-term cost of this approach is usually prohibitive.  It’s worth noting that it all my research, I’ve never encountered a community that was successful long-term without naturally self-sustaining growth.  This is the K-factor lesson of this post’s title: You can grow any community in the short term using artificial means but it will only last and continue to grow on its own because of the inherent quality of the people and the knowledge that has accumulated.  That said, you must get your community growth primed in some way.  High impulse events can include (by no means exhaustive) traditional marketing, paid incentives (expensive but Paypal was very successful with this model in its early days), and — particularly for business communities — seeding initial high value content.
  • Growth in a social ecosystem is not endlessly exponential and eventually hits a ceiling. Plan for it.  Typically described by the S-curve, it is encountered when you either fight an existing network effect or when resources are exhausted on the network.  While hitting the upper bound of the S-curve is desirable and denotes a successful system (Facebook is just hitting this now), it can also be an indicator of a failure or a bottle-neck in the feedback loop design.  A false S-curve is most often evident in my research when a community undergoes a major UX redesign and users have to find their way again, often unable to find and use the features that drive growth and sustain the community. Be aware of this and guard against the potential causes of premature S-curves.

I’ve written in the past about deliberately creating emergent phenomenon and then capturing some kind of value from it.  Like most efforts on a fixed scale of zero to the maximum possible result, there is a reverse bell curve effect, meaning that most people will get middling results, some will get very poor, and some will hit it out of the park.  From the projects I’ve been involved in, I find that the most successful social efforts are ones that are highly agile and willing to capture lessons learned early and often and then make changes quickly and do it all over again the next week.  The Web favors those who experiment, adapt, and evolve and thus should go your social ecosystems.

Good luck with your social media and Enterprise 2.0 efforts.  Please don’t hesitate to ask questions below or contribute your own wisdom.

How Social Could Disrupt Search

The inimitable Fred Wilson concluded yesterday in "Why Social Beats Search", that "[m]achines can help us find what is good. But with the help of machines, our friends and trusted sources can and will do that even better."  This statement capped off a fresh debate over the weekend about automated, keyword-driven "McContent" creation that started when Michael Arrington posted about "the end of hand crafted content". Richard MacManus also explored the same issues in "Content Farms: Why Media, Blogs, and Google Should Be Worried".

I find this discussion very intriguing because it's nearly a mirror-image to the still-unfolding story of the last big change in this space: How the volume and timeliness of social media has disrupted traditional media.  I explored this subject in-depth recently on ZDNet about how this same transformation is now happening more broadly to other industries as well.  Now we're full circle already: What went around with social media is coming around again rather quickly with McContent. The machines are in the upstart role this time and have the potential to displace social media "moms and pops" who might not be able to match the volume and speed at which automated content can be created.  TWill Social Surpass Search?hat of course, depends on if you believe that machines can match the quality of handmade content.  And indeed, if quality ultimately matters as much as volume and timeliness. There's a balance here that I'm not sure we fully understand yet but I'm betting there's probably room for the full spectrum.  This will only be true, however, if we are prepared to accept that the online landscape and current ways of doing business are going to continue to evolve rapidly.

The premise of today's information abundance reaching an unsustainable place isn't a new one. Information overload is a  rapidly growing subject that a lot of smart folks are talking about these days.  One bright area however, and this is the point that Fred Wilson touches on, is that social systems might actually provide an effective filter that will separate the wheat from the chaff by decentralizing the expertise and work of content curation into a sort of crowdsourced collaborative process (an increasingly widespread approach.)  This could make it both scalable and sustainable and I do believe that social content curation is an important trend.  But it's only one step in the right direction as we head into the future dominated by truly vast information abundance. 

One holy grail of search is "search that finds you" just as and when you actually need it.  Encouragingly, I'm now starting to see this happen with social environments like Twitter where I've received more and more tweets lately in the vein of "@dhinchcliffe Thanks for the link, was just looking for this 10 mins ago!" This is the seed of a trend that could be exploited by a very smart company that created the right product design that systematically optimized social recommendations and content referrals into something so much more than it is today: ad hoc serendipity.  Will the company that does this be the ones with the largest active social networks, such as Twitter or Facebook?  Or perhaps Google will figure it out as a component of real-time search?  Or will it just as likely be someone that no one has heard of yet? If the history of the Web is any guide, it will come from a place we won't anticipate.

I also suspect that other forces are in the running and may end up limiting the impact of distributed social curation, or more likely co-opting it.  Emerging trends like Web Squared and its autonomic filters and recommendation systems powered by data shadows as well as advanced forms of Enterprise 2.0 BI are just as likely to provide the solution in the medium to long-term.  Either way, search is only going to get better and social will certainly improve it.  That's not to say social won't disrupt search, but it may only complement the changes happening more broadly.  One big question is whether social can be made to scale enough to be routinely effective for most users.  In the end, that's the big question in my mind: The output of machines can always exceed that of people and that's not necessarily a bad thing as long as we still get access to both results when we need them.

Web Squared Emerges To Refine Web 2.0

It’s been five years now that we’ve begun to understand what Web 2.0 is, starting way back in 2003.  It’s been a fairly impressive if winding road as a new online generation was born.  But far from getting long in the tooth, along the way Web 2.0 became vitally important — even central in some cases — to the very future of global culture and business.  Oh certainly, sometimes we get tired of the term itself, and admittedly it doesn’t describe something necessarily new anymore, but what we just do these days.  But the concepts identified as Web 2.0 have proved to be highly insightful, even prescient, and are used around the world daily to guide everything from product development to the future of government.

It has been today’s commonplace use of intensely popular and deeply pervasive social networks, the outright transformation of industries such as media and software, and the growing dominance of 2.0 techniques such as user generated content, open business methods, crowdsourcing, Enterprise 2.0, open APIs — in the business world and elsewhere — which has been striking, even if there’s a long way to go in some quarters.  Indeed, Web 2.0 is not just here to stay, it seems to be a revolution that just keeps on rolling and giving us, as I often say in my talks, an amazingly resourceful and resilient new lens with which to 1) look at the world and 2) the network that now surrounds it, and 3) the opportunities between the two.

Now, to paraphrase Churchill, “Now this is not the end. … But it is, perhaps, the end of the beginning” of Web 2.0, many are starting to perceive deeper patterns and concepts within Web 2.0 practices.  We can perhaps now see more clearly the next steps towards what some would like to call Web 3.0, and which Tim O’Reilly and John Battelle have decided to dub Web Squared, the deeper explanation of which you can find here on the Web 2.0 Summit site.  Whether we need a new term and whether Web Squared will be as accepted, or at least as widely repeated, as Web 2.0 is perhaps unlikely but it nevertheless is a cogent, if necessarily, incomplete next progression.  What is certain is, that like Web 2.0, the ideas within it are useful new strategic ones that are emerging from the countless practical experiences of Internet practitioners everywhere in the world’s largest living laboratory: The Internet.

At its core, the message is that the Web is becoming more autonomic, reflective, real-time, generative, and open while at the same time far more deeply embedded everywhere in the fabric of our environment.  And like what came before it, Web Squared is likely to have profound impact to the societies and organizations, either way, that choose to understand it or ignore it.

What is Web Squared?

While this is my personal take, Web Squared articulates a broader fusion between the world-at-large, the Web, and the people connected to it.  It’s a more extreme view of Web 2.0 while at the same time hinting that while social computing has been a major transformative force recently in the consumer world and beyond, the relentless growth of devices, network connectivity, and sensors into our lives across our homes, workplaces, and external environment is casting an growing “information shadow” that is increasingly hard to ignore.  At first glance this can seem to be an impersonal and inhuman concept as the network expands to surround everything and dominate the participation that so far at least is still driven (for a little bit longer anyway) by what people do and contribute online.  However, this bleak vision is tempered by the realization that far from being pushed to the side, we collectively must be the feedback loop that guides Web Squared through billions of daily interactions that makes it possible in the first place.  It’s the full environment, including us, which makes it all work.

Web 1.0, Web 2.0, WebSquared Compared

The comparison above gives a cleaner, most succinct sense of what Web Squared is by comparing it to Web 1.0 and classic Web 2.0.  It’s not necessarily a generation beyond Web 2.0 since many of the concepts are simply more refined or focused.  But the “knobs” on many Web 2.0 ideas like collective intelligence, feedback loops, network effects, and so on are turned up quite a bit more and are fueled more directly by our interactions with the world as well as our synthesis of it.  We know now how to sharpen the scalpels that we use to design our online businesses a good bit better and Web Squared reflects this.

For my own part, it’s a useful evolution of Web 2.0 even if it’s not quite as dramatically transformative culturally.  However, the implications in terms of the types of new businesses that will be created have the potential to be as potent as Google (or even more so) when it comes to cornering the market on new classes of data and therefore entire industries, since most winners in on the online space have outsized dominance of their sectors.  You want to use Web 2.0 ideas for the most impact? Think in terms of Web Squared.

I’ll be exploring the concepts of Web Squared in further depth here as I am able, but it’s clear that we need to take what we’ve learned in the Web 2.0 era and focus on emerging techniques that seem particular promising.  In particular, I think the key aspect of Web Squared will lie in teaching our applications to “learn inferentially” from our online product’s strategic sets of data and drive out previously hidden value.  That’s where being able to create powerful new autonomic, environmentally-connected, database-driven applications, often from ecosystems of partners that will provide access to their data (for a price), has the potential to become a dominant new growth model for modern Web apps.  Whether this is video search engines built on top of YouTube’s content, near real-time language translation using peer production in social communities, or just better product/content recommendation engines remains to be seen.

But the chances are just as likely that entirely new types of break-out products will be created that we can only barely imagine today, like we did with Web 2.0 just a few short years ago.  These new applications will fully harness the Web of data powered by insightful and potent cooperative algorithms and novel integration strategies that are deeply connected to the world we live in.  Developing these generative algorithms will be the central challenge for a new era of product designer.  These product designers will be experts at developing interactive systems for drawing insight, collecting data, and creating value from instantaneous Web input.  We can look to examples such as the Netflix Prize as successful models for distributed, open design “studios” for creating, validating, and identifying the winners.  How we look at fostering innovation and harvesting it is being reshaped by this vision already.

One thing is for certain, however, the way we look at the network is in the process of taking another big leap.

I’d like to get together a list of Web Squared example applications and ideas.  Please leave your suggestions and comments below.

50 Essential Strategies For Creating A Successful Web 2.0 Product

I am fortunate enough to spend a lot of time looking at various online products and services in the development stage, mostly of the Web 2.0 variety, meaning they use one or more of the principles in the Web 2.0 set of practices.  It’s been going on 4 years now and what’s fascinating to me, despite the enormous amount of knowledge that we’ve accumulated on how to create modern Web applications, is how many of the same lessons are learned over and over again.

Wouldn’t it be handy if we had a cheat sheet that combined many of these lessons into one convenient list?  In this vein of thinking, I decided to sit down recently to capture are some of the most important lessons I’ve learned over the last few years along with some of the thinking that went into them.

The Web Community Gets Smarter Every Time It Builds A Product

If there’s one thing that the Web has taught us it’s that the network gets smarter by virtue of people using it and product development is no exception.  Not only do we have examples of great online applications and systems to point to and use for best practices, but the latest tools, frameworks, development platforms, APIs, widgets, and so on, which are largely developed today in the form of open source over the Internet, tend to accumulate many of these new best practices. I’ve lauded everything from frameworks like Rails, Cake PHP, and Grails to online community platforms like Drupal and Joomla as examples of guiding solutions that can be vital springboards for the next great Web product or service.  

However, most of the success of an online product, Web 2.0 or otherwise, comes from two things: Its software architecture and its product design.  It’s also the case that the story of any product is a story of ten of thousands of little decisions made throughout the life of the product, of which only a key — and heartbreakingly small — set will make much of a difference to its success on the network.  The list of strategies below tells part of the story of which decisions will make that critical difference.

What then is software architecture and product design when it comes to today’s Web applications?  The good news: They’re often the same as they’ve always been, albeit just a bit more extreme, though there are some additions for the 2.0 era as well: 

Software architecture determines a Web application’s fundamental structure and properties: Resilience, scalability, adaptability, reliability, changeability, maintainability, extensibility, security, technology base, standards compliance, and other key constraints, and not necessarily in that order. 

Product design determines a Web application’s observable function: Usability, audience, feature set, capabilities, functionality, business model, visual design, and more.  Again, not necessarily in priority order. 

Doing both of these top-level product development activities well, striking a healthy balance between them (one often dominates the other), and doing it with a small team, requires people with deep and multidisciplinary backgrounds in creating successful products across this extensive set of practice areas.  These people are often hard to find and extremely valuable.  This means it’s also not likely you’ll be able to easily put together a team with all the capabilities that are needed from the outset. 

Be prepared from the outset for on-the-job learning and study, relying on tools and products that embody best practices, and replicating only the best designs and ideas (while being very conscientious not to steal IP.)

Balancing Software Architecture and Product Design in Web 2.0 Applications

In this way, I’ve collected a set of strategies that address the most common issues that I see come up over and over again as online products go to market.  I’ve decided to share these with you so we can continue to teach the network, and consequently ourselves, a little bit more about how to make extraordinary Web applications that can really make a difference in the marketplace.

This of course is just my experience and is not intended to be a complete list of Web 2.0 strategies.  However, I think most people will find it a valuable perspective and useful cross check in their product design and development. And please keep in mind this list is for Web 2.0 applications, not necessary static Web sites, or traditional online Web presence, though there is much that here that can be applied to them to make them more useful and successful as well.

Finally, a good number of these strategies are not specifically Web 2.0 concepts.  They are on the list because they are pre-requisites to many Web 2.0 approaches and to any successful product created with software and powered by people.

Please add your own strategies in comments below for anything that I’ve missed.

50 Strategies For Creating A Successful Web 2.0 Product

1. Start with a simple problem.  All of the most successful online services start with a simple premise and execute on it well with great focus.  This could be Google with it’s command-line search engine, Flickr with photo sharing, Digg with user generated news.  State your problem simply: “I make it easier to do X”.  Focus on solving it elegantly and simply, only add features carefully.  Over time, complexity will become the enemy of both your product design and your software architecture, so start with as much focus as you can muster.

2. Create prototypes as early as possible.  Get your idea into a working piece of software as quickly as possible.  The longer you take to go through one entire cycle, the more unknown work you have ahead of you.  Not producing software also means that you are not getting better and better at turning the work of your team into the most important measurable output: Functioning software.  Throughout the life of your product, turning your ideas into software as quickly and inexpensively as possible will be one of the most important activities to get right.

3. Get people on the network to work with the product prototype rapidly and often.  The online world today is fundamentally people-centric.  If your product isn’t about them and how it makes their lives better, your product really doesn’t matter.  And if they’re not using your Web application as soon as possible, you just don’t know if you are building the right product.  Constant, direct feedback from real people is the most important input to our product design after your idea.  Don’t wait months for this to happen; get a beta out to the world, achieve marketplace contact in weeks, or at most a few months, and watch carefully what happens. This approach is sometimes called Web 2.0 Development .

4. Release early and release often.  Don’t get caught up in the massive release cycle approach, no matter how appealing it may be.  Large releases let you push off work tomorrow that should be done today.  It also creates too much change at once and often has too many dependencies, further driving an increase in the size of the release.  Small releases almost always work better, are easier to manage, but can require a bit more operations overhead. Done right, your online product will iterate smoothly as well as improve faster and more regularly than your competitors. Some online products, notably Flickr, have been on record as saying they make new releases to production up to several times a day.  This is a development velocity that many new startups have trouble appreciating or don’t know how to enable. Agile software development processes are a good model to start with and and these and even more extreme methods have worked well in the Web 2.0 community for years.

5. Manage your software development and operations to real numbers that matter.  One often unappreciated issue with software is its fundamentally intangible nature.  Combine that with human nature, which is to manage to what you can see, and you can have a real problem.  There is a reason why software development has such a variable nature in terms of time, budget, and resources.  Make sure you have as many real numbers as possible to manage to: Who is making how many commits a week to the source repository, how many registered users are there on a daily basis, what does the user analytics look like, which product features are being used most/least this month, what are the top 5 complaints of customers, and so on.  All of these are important key performance indicators that far too many startups don’t manage and respond to as closely as they should.

6. Gather usage data from your users and input it back into product design as often as possible.  Watch what your users do live with your product, what they click on, what do they try to do with it, what they don’t use, and so on.  You will be surprised; they will do things you never expected, have trouble with features that seem easy to you, and not understand parts of your product that seemed obvious.  Gather this data often and feed it back into your usability and information architecture processes.  Some Web applications teams do this almost daily, others look at click stream analytics once a quarter, and some don’t it at all.  Guess who is  shaping their product faster and in the right direction?

7. Put off irreversible architecture and product design decisions as long as possible. Get in the habit of asking “How difficult will it be to change our mind about this later?” Choosing a programming language, Web framework, relational database design, or a software interface tend to be one-way decisions that are hard to undo.  Picking a visual design, logo, layout, or analytics tool generally is not.  Consequently, while certain major decisions must be made up front, be vigilant for seemingly innocuous decisions that will be difficult to reverse.  Not all of these will be a big deal, but it’s all too often a surprise to many people when they discover their architecture isn’t malleable in the places that they want it to be.  Reduce unpleasant surprises by always asking this question.

8. Choose the technologies later and think carefully about what your product will do first.  First, make sure your ideas will work on the Web. I’ve seen too many startups with ideas that will work in software but not on the Web.  Second, Web technologies often have surprising limits, Ajax can’t do video or audio, Flash is hard to get to work with SEO for example.  Choosing a technology too early will constrain what is possible later on.  That being said, you have to choose as rapidly as you can within this constraint since you need to build prototypes and the initial product as soon as you are able.

9.  When you do select technologies, consider current skill sets and staff availability.  New, trendy technologies can have major benefits including higher levels of productivity and compelling new capabilities, but it also means it’ll be harder to find people who are competent with them.  Having staff learn new technology on the job can be painful, expensive, and risky.  Older technologies are in a similar boat; you can find people that know them but they’ll most likely not want to work with them.  This means the middle of the road is often the best place to be when it comes to selecting technology, though you all-too-often won’t have a choice depending on what your staff already knows or because of the pre-requisites of specific technologies that you have to use.

10. Balance programmer productivity with operational costs.  Programming time is the most expensive part of product creation up front while operations is after you launch.  Productivity-oriented platforms such as Ruby on Rails are very popular in the Web community to drive down the cost of product development but can have significant run-time penalties later when you are supporting millions of users.  I’ve previously discussed the issues and motivations around moving to newer programming languages and platforms designed for the modern Web, and I encourage you to read it. Productivity-oriented platforms tend to require more operational resources during run-time, and unlike traditional software products, the majority of the cost of operations falls upon the startup.  Be aware of the cost and scale of the trade-offs since every dollar you save on the development productivity side translates into a run-time cost forever after on the operations side.

11. Variability in the productivity amongst programmers and development platforms each varies by an order of magnitude.  Combined together and your choice of programming talent and software development platforms can result in a 100x overall effect on product development productivity.  This means that some teams can ship product in as little as 3 months and some projects won’t ship ever, at least not without truly prohibitive time and resource requirements.  While there are a great many inputs to an Internet startup that will help or hinder it (take a look at Paul Graham’s great 18 Mistakes That Kill Startups for a good list), these are two of the most central and variable: Who is developing the product and what development platform they are using. Joel Spolsky’s write-up on programmer productivity remains one of the best at understanding this issue.  It usually turns out that paying a bit more for the right developer can often mean tremendous output gains.  One the other side of the coin, choosing a development platform not designed for creating modern Web applications is another decision that can sap your team of productivity while they spend months retrofitting it for the features they’ll need to make it work properly in today’s Internet world. 

12. Plan for testing to be a larger part of software development process than non-Web applications.  Cross browser testing, usability, and performance/load testing are much bigger issues with Web applications than many non-Web applications.  Having to do thorough testing in a half-dozen to a dozen browser types can be an unexpected tax on the time and cost of creating a Web product.  Doing adequate load testing is another item that often waits until the end, the very worst time to find where the bottlenecks in your architecture are.  Plan to test more than usual.  Insist on automated unit and integration tests that build up over time and run without having to pay developers or testers to do it manually.

13. Move beyond traditional application hosting. Single Web-server hosting models are not going to suffice for your 2.0 applications.  Reliability, availability, and scalability are essential and must be designed into your run-time architecture and supported by your hosting environment.  Solutions like 3Tera, Amazon’s Elastic Compute Cloud, and Google’s App Engine are three compelling, yet very different solutions to the hosting problem.  Either way, grid and cloud approaches to hosting will help you meet your growth and scalability requirements while managing your costs.

14. Have an open source strategy.  This has two important aspects.  One, developing and hosting a product built with open source software (the ubiquitious LAMP stack) is almost always much less expensive than using commercial software and is what most online products use.  There are certainly commercial licenses that have fair terms for online services, but almost none of them will match the cost of free.  This is one reason why you won’t find Windows or Oracle embedded in very many Web 2.0 services.  Two, you’ll have to decide whether to open source or commercial open source your product.  This has entirely to do with what your product does and how it does it, but an increasing number of Web 2.0 hosted products are releasing their offerings as open source to appeal to customers, particularly if they are business customers. Done right, open sourcing can negate arguments about the size of your company while enlisting many 3rd party developers to help enrich and make your product better.

15. Consider mobile users as important as your regular browser customers.  Mobile devices will ultimately form the majority of your user base as the capability and adoption of smartphones, Internet tablets, laptops, and netbooks ushers in mobile Web use as the dominant model.  Having an application strategy as well as well-supported applications for the iPhone, Android, and RIM platforms is essential for most Web products these days.  By the time you get to market, mobile will be even more important than it is now.  Infoworld confirmed today, in fact, that wireless enterprise development will be one of 2009’s bright spots.

16. Search is the new navigation, make it easy to use in your application.  You have 5-10 seconds for a new user to find what they want from your site or application.  Existing users want to directly access what they need without going through layers of menu items and links.  Search is the fastest way to provide random access navigation.  Therefore, offer search across data, community, and help at a minimum.  A search box must be on the main page and indeed, every page of the modern Web application. 

17. Whenever users can provide data to your product, enable them.  Harnessing collective intelligence is the most central high-level principle of Web 2.0 applications.  To be a major online competitor, getting your millions of users to build a valuable data set around the clock is the key to success. Many product designers look at this too narrowly and usually at a small set of data.  Keep a broad view of this and look for innovative ways to get information from explicit contributions to the database of intentions can form your architecture of participation.

18. Offer an open API so that your Web application can be extended by partners around the world.  I’ve covered this topic many times in the past and if you do it right, your biggest customers will soon become 3rd party Web applications building upon your data and functionality.  Critically, offering an API converts your online product into an open platform with an ecosystem of 3rd party partners.  This is just one of many ways to realize Jakob’s law, as is the next item.

19. Make sure your product can be spread around the Web by users, provide widgets, badges, and gadgets.  If your application has any success at all, your users will want to take it with them and use your features elsewhere.  This is often low-effort but can drive enormous growth and adoption; think about YouTube’s badge. 

20. Create features to make the product distribute virally.  The potency of this is similar to widgets above and everything from simple e-mail friend invites to importing contact lists and social graphs from other Web apps are critical ways to ensure that a user can bring the people they want into the application to drive more value for them and you.   

21. The link is the fundamental unit of thought on the Web, therefore richly link-enable your applications.  Links are what make the Web so special and fundamentally makes it work.  Ensuring your application is URL addressable in a granular way, especially if you have a rich user experience, is vital to participate successfully on the Web.  The Web’s link ecosystem is enormously powerful and is needed for bookmarking, link sharing/propagation, advertising, makes SEO work, drives your page rank, and much more.  Your overall URL structure should be thought out and clean, look to Flickr and del.cio.us for good examples.

22. Create an online user community for your product and nurture it.  Online communities are ways to engage passionate users to provide feedback, support, promotion, evangelism and countless other useful outcomes.  While this is usually standard fare now with online products, too many companies don’t start this early enough or give it enough resources despite the benefits it confers in terms of customer support, user feedback, and free marketing, to name just three benefits.  Investing in online community approaches is ultimately one of the least expensive aspects of your product, no matter the upfront cost. Hire a good community manager and set them to work.

23. Offer a up-to-date, clean, compelling application design.  Attractive applications inherently attract new customers to try them and is a pre-requisite to good usability and user experience.  Visual and navigational unattractiveness and complexity is also the enemy of product adoption.  Finally, using the latest designs and modes provides visual cues that conveys that the product is timely and informed.  A good place to start to make sure you’re using the latest user experience ideas and trends is Smashing Magazine’s 2009 Web Design survey.

24. Load-time and responsiveness matter, measure and optimize for them on a regular basis.  This is not a glamorous aspect of Web applications but it’s a fundamental that is impossible to ignore.  Every second longer a key operation like main page load or a major feature interaction takes, the more likely a customer is to consider finding a faster product.  On the Web, time is literally money and building high speed user experiences is essential.  Rich Internet Application technologies such as Ajax and Flash, albeit used wisely, can help make an application seem as fast as the most responsive desktop application. Using content distribution networks and regional hosting centers.

25. User experience should follow a “complexity gradient.”  Novice users will require a simple interface but will want an application’s capabilities to become more sophisticated over time as they become more skilled in using it.  Offering more advanced features that are available when a user is ready but are hidden until they are allows a product to grow with the user and keeps them engaged instead of looking for a more advanced alternative. 

26. Monetize every page view.  There is no excuse for not making sure every page is driving bottom-line results for your online business.  Some people will disagree with this recommendation and advertising can often seem overly commercial early in a product’s life.  However, though a Web application should never look like a billboard, simple approaches like one line sponsorships or even public service messages are good ideas to maximize the business value of the product and there are other innovation approaches as well.

27. Users’ data belongs to them, not you.  This is a very hard strategy for some to accept and you might be able to get away with bending this rule for a while, that is, until some of your users want to move their data elsewhere.  Data can be a short-term lock-in strategy, but long-term user loyalty comes from treating them fairly and avoiding a ‘Roach Motel’ approach to user data (“they can check-in their data, but they can’t check out.”) Using your application should be a reversible process and users should have control of their data.  See DataPortability.org for examples of how to get started with this.

28. Go to the user, don’t only make them come to you.  The aforementioned APIs and widgets help with this but are not sufficient.  The drive strong user adoption, you have to be everywhere else on the Web that you can be.  This can mean everything from the usual advertising, PR, and press outreach but it also means creating Facebook applications, OpenSocial gadgets, and enabling use from mashups. These methods can often be more powerful than all the traditional ways combined.

29. SEO is as important as ever, so design for it.  One of the most important stream of new users will be people coming in from search engines looking for exactly what you have.  This stream is free and quite large if you are ensuring your data is URL addressable and can be found via search engine Web crawlers.  Your information architecture should be deeply SEO-friendly and highly granular.

30. Know thy popular Web standards and use them.  From a consumer or creator standpoint, the data you will exchange with everyone else will be in some format or another.  And the usefulness of that data or protocol will be in inverse proportion to how well-known and accepted the standard is.  This generally means using CSS, Javascript, XHTML, HTTP, ATOM, RSS, XML, JSON, and so on. Following open standards enables the maximum amount of choice, flexibility, time-to-market, access to talent pools, and many other benefits over time to both you and your customers.

31. Understand and apply Web-Oriented Architecture (WOA). The Web has a certain way that it works best and understanding how HTTP works at a deep level is vital for getting the most out of the unique power that the Internet has to offer.  But HTTP is just the beginning of this way of thinking about the Web and how to use its intrinsic power to be successful with with it.  This includes knowing why and how link structure, network effects, SEO, API ecosystems, mashups, and other aspects of the Web are key to making your application flourish.  It’s important to note that your internal application architecture is likely not fundamentally Web-oriented itself (because most software development platforms are not Web-oriented) and you’ll have to be diligent in enabling a WOA model in your Web-facing product design.  The bottom line: Non-Web-oriented products tend not to fare very well by failing to take advantage of the very things that have made the Web itself so successful.

32. Online products that build upon enterprise systems should use open SOA principles. Large companies building their first 2.0 products will often use existing IT systems and infrastructure that already have the data and functionality they need.  Although they will often decouple and cache them for scalability and performance, the connectedness itself is best done using the principles of SOA. That doesn’t necessarily mean traditional SOA products and standards, although it could, often using more Web-oriented methods works better.  What does this really mean? Stay away from proprietary integration methods and use the most open models you can find, understanding that the back-end of most online products will be consumed by more than just your front-end (see API discussion above for a fuller exploration).

33. Strategically use feeds and syndication to enable deep content distribution.  This is another way to use Jakob’s Law to increase unintended uses and consumption of an application from other sites and ecosystems.  Feeds enable many beneficial use cases such as near real-time perception of fresh data in your application from across the Web in feed readers, syndication sites, aggregators, and elsewhere.  Like many other techniques here, knee-jerk use of feeds won’t drive much additional usage and adoption, but carefully designing feeds to achieve objectives like driving new customers back to the application directly from the feed can make a big difference.  Failing to offer useful feeds is one of the easiest ways to miss out on business opportunities while giving your competitors an edge.

34. Build on the shoulders of giants; don’t recreate what you can source from elsewhere.  Today’s Internet application usually require too much functionality to be cost-effectively built by a single effort.  Typically, an application will actually source dozens of components and external functionality from 3rd parties.  This could be off-the-shelf libraries or it could be the live use of another site’s API, the latter which has become one of the most interesting new business models in the Web 2.0 era.  The general rule of thumb: Unless it’s a strategic capability of your application, try hard to source it from elsewhere before you build it; 3rd parties sources are already more hardened, robust, less expensive, and lower defect than any initial code could that you could produce. Get used to doing a rapid build vs. buy evaluation for each major component of your application.

35. Register the user as soon as possible.  One of the most valuable aspects of your onine product will be the registered user base.  Make sure you application gives them a good reason to register and that the process is as painless as possible.  Each additional step or input field will increase abandonment of the process and you can always ask for more information later. Consider making OpenID the default login, with your local user database a 2nd tier, to make the process even easier and more comfortable for the user.

36. Explicitly enable your users to co-develop the product.  I call this concept Product Development 2.0 and it’s one of the most potent ways to create a market-leading product by engaging the full capabilities of the network.  The richest source of creative input you will have is your audience of passionate, engaged users.  This can be enabled via simple feedback forms, harvested from surveys and online community forums, via services such as GetSatisfaction, or as the ingredients to mashups and user generated software. As you’ll see below, you can even open the code base or provide a plug-in approach/open APIs to allow motivated users and 3rd parties to contribute working functionality.  Whichever of these you do, you’ll find that the innovation and direction to be key to making your product the richest and most robust it can be.  A significant percentage of the top online products in the world take advantage of this key 2.0 technique.

37. Provide the legal and collaborative foundations for others to build on your data and platform.  A good place to start is to license as much of your product as you can via Creative Commons or another licensing model that is less restrictive and more open than copyright or patents. Unfortunately, this is something for which 20th century business models around law, legal precedent, and traditional product design are ill-equipped to support and you’ll have to look at what other market leaders are doing with IP licensing that is working.  Giving others explicit permission up-front to repurpose and reuse your data and functionality in theirs can be essential to drive market share and success. Another good method is to let your users license their data as well and Flickr is famous for doing this.  It’s important to understand that this is now the Some Right Reserved era, not the All Rights Reserved era.  So openly license what your have for others to use; the general rule of thumb is that the more you give away, the more you’ll get back, as long as you have a means of exercising control.  This is why open APIs have become as popular as they have, since they are essentially “IP-as-a-service” and poorly behaving partner/licensees can be dealt with quickly and easily.

38. Design your product to build a strong network effect.  The concept of the network effect is something I’ve covered here extensively before and it’s one of the most important items in this list.  At their most basic, Web 2.0 applications are successful because they explicitly leverage network effects successfully. This is the underlying reason why most of the leading Internet companies got so big, so fast.  Measuring network effects and driving them remains one of the most poorly understood yet critical aspects of competing successfully online.  The short version: It’s extremely hard to fight an established network effect (particularly because research has shown them to be highly exponential).  Instead, find a class of data or a blue ocean market segment for your product and its data to serve.

39. Know your Web 2.0 design patterns and business models.  The fundamental principles of Web 2.0 were all identifid and collected together for a good reason.  Each principle is something that must be considered carefully in the design of your product given how they can magnify your network effect. Your development team must understand them and know why they’re important, especially what outcomes they will drive in your product and business.  It’s the same with Enterprise 2.0 products: There is another, related set of design principles (which I’ve summarized as FLATNESSES) that makes them successful as well.  And as with everything on this list, you don’t apply 2.0 principles reflexively; they need to be intelligently used for good reason.

40. Integrate a coherent social experience into your product.  Social systems tend to have a much more pronounced network effect (Reed’s Law) than non-social systems. Though no site should be social without a good reason, it turns out that most applications will benefit from having a social experience.  What does this mean in practice? In general, social applications let users perceive what other users are doing and actively encourage them to interact, work together, and drive participation through social encouragement and competition.  There is a lot of art to the design of the social architecture of an online product, but there is also an increasing amount of science.  Again, you can look at what successful sites are doing with their social interaction but good places to start are with user profiles, friends lists, activity streams, status messages, social media such as blogs and microsharing, and it goes up from there.  Understand how Facebook Connect and other open social network efforts such as OpenSocial can help you expand your social experience.

41. Understand your business model and use it to drive your product design.  Too many Web 2.0 applications hope that they will create large amounts of traffic and will then find someone interested in acquiring them.  Alternatively, some products charge too much up front and prevent themselves from reaching critical mass. While over-thinking your exit strategy or trying to determine your ultimate business model before you do anything isn’t good either, too many startups don’t sit down and do the rigorous thinking around how to make their business a successful one in the nearer term.  Take a look at Andrew Chen’s How To Create a Profitable Freemium Startup for a good example of the framework on how to do some of the business model planning.  Taking into account the current economic downturn and making sure you’re addressing how you offering can help people and businesses in the current business climate will also help right now.

42. Embrace emergent development methods.  While a great many of the Web’s best products had a strong product designer with a clear vision that truly understood his or her industry, the other half of the equation that often gets short shrift is the quality of emergent design through open development.  This captures the innate crowdsourcing aspects of ecosystem-based products, specifically those that have well-defined points of connectedness with external development inputs and 3rd party additions.   Any Web application has some emergent development if it takes development inputs or extensibility with via 3rd party plug-ins, widgets, open APIs, open source contributions, and so on.  The development (and a good bit of the design) of the product then “emerges” as a function of multiple inputs.  Though there is still some top-down control, in essence, the product becomes more than the sum total of its raw inputs.  Products like Drupal and Facebook are good examples of this, with thousands of plug-ins or 3rd party apps that have been added to them by other developers.

43. It’s all about usability, usability, and usability.  I’ve mentioned usability before in this list but I want to make it a first class citizen.  Nothing will be a more imposing barrier to adoption that people not understanding how your product works.  Almost nothing on this list will work until the usability of your application is a given.  And hands down the most common mistake I see are Web developers creating user experiences in isolation.  If you’re not funded to have a usability lab (and you probably should be, at some level), then you need to grab every friend and family member you have to watch how they use your application for the first time.  Do this again for every release that makes user experience changes.  You will change a surprising number of assumptions and hear feedback that you desperately need to hear before you invest any more in a new user experience approach.  This now true even if you’re developing enterprise applications for the Web.

44. Security isn’t an afterthought.  It’s a sad fact that far too much of a successful startup’s time will be spent on security issues.  Once you are popular, you will be the target of every so-called script kiddie with a grudge or with the desire to get at your customer data, etc. Software vulnerability are numerous and the surface area of modern Web apps large. You not only have your own user experience but also your API, widgets, semantic Web connections, social networking applications, and other points of attack.  Put aside time and budget for regular vulnerability assessments.  You can’t afford a public data spill or exploit due to a security hole that will compromise your user’s data, or you may well find yourself with a lot of departing customers.Web 2.0 applications also need unique types of security systems, from rate limiters to prevent valuable user-generated data from being systematically scraped from the site (this is vital to “maintaining control of unique and hard-to-re-create datasets”) to monitoring software that will screen for objectionable or copyrighted contributions.

45. Stress test regularly and before releases.  It’s a well known saying in the scalability business that your next bottleneck is hiding just behind your last high water mark. Before your launch, data volumes and loads that work fine in the lab should be tested to expected production volumes before launch.  The Web 2.0 industry is rife with examples of companies that went down the first time they got a good traffic spike.  That’s the very worst time to fail, since it’s your best chance of getting a strong initial network effect and may forever reduce your ultimate success.  Know your volume limits and ceilings with each release and prepare for the worst.

46. Backup and disaster recovery, know your plan.  This is another unglamorous but essential aspect for any online product.  How often are backups being made of all your data? Are the backups tested? Are they kept offsite? If you don’t know the answers, the chances that you’ll survive a major event is not high.

47. Good Web products understand that there is more than the Web.  Do you have a desktop widget for Vista or the Mac? Might you benefit from offering an Adobe AIR client version of your application? How about integration and representation in vitual worlds and games?  How about linkages to RFID or GPS sensors? Startups thinking outside the box might even create their own hardware device if it makes sense (see Chumby and the iPhone/iPod for examples).  If one thing that is certain is that the next generation of successful Web startups will only partially resemble what we see today.  Successful new online products will take advantage of “software above the level of a single device” and deliver compelling combinations of elements into entirely new products that are as useful and innovative as they are unexpected.  A great Web 2.0 product often has a traditional Web application as only part of its overall design, see the Doritos Crash the Superbowl campaign for just one small example of this.

48. Look for emerging areas on the edge of the Web.  These are the spaces that have plenty of room for new players and new ideas, where network effects aren’t overly established and marketshare is for the taking. What spaces are these? The Semantic Web seems to be coming back with all new approaches (I continue to be amazed at how much appears about this topic on http://delicious.com/popular/web3.0 these days.) Open platform virtual worlds such as Second Life were hot a few years ago and may be again.  Mobile Web applications are extremely hot today but slated to get over crowded this year as everyone plans a mobile application for phone platforms.  What is coming after this?  That is less clear but those that are watching closely will benefit the most.

49.  Plan to evolve over time, for a long time.  The Web never sits still.  Users change, competitors improve, what’s possible continues to expand as new capabilities emerge in the software and hardware landscape.  In the Perpetual Beta era, products are never really done.  Never forget that, continue to push yourself, or be relegated to a niche in history.

50. Continually improve yourself and your Web 2.0 strategies. While process improvement is one of those lip-service topics that most people will at least admit to aspire to, few have the time and resources to carry it out on a regular basis.  But without that introspection on our previous experience we wouldn’t have many of the “aha” moments that drove forward our industry at various points in term.  Without explicit attempts at improvement, we might not have developed the ideas that became object-oriented languages, search engine marketing, Web 2.0, or even the Internet itself.  This list itself is about that very process and encapsulates a lot of what we’ve learned in the last 4 years.  Consequently, if you’re not sitting down and making your own list from your own experiences, you’re much more likely to repeat past history, never mind raising the bar.  Like I’m often fond of saving; civilization progresses when we make something that was formerly hard to do and make it easy to do.  Take the time, capture your lessons learned, and improve your strategies.

What else is missing here? Please contribute your own 2.0 strategies in comments below:

You can also get help with these strategies from a Web 2.0 assessment, get a deeper perspective on these ideas at Web 2.0 University, or attend our upcoming Economics 2.0 workshop at Web 2.0 Expo SF on March 31st, 2009.

Building Modern Web Apps? Better Have A Deep Competency in Web 2.0, Open APIs, Widgets, Social Apps, and More

The Web has an interesting property that those building Web applications and online businesses usually encounter soon after they first launch: It has its own unique and unforgiving rules for success and failure.  Appreciating them requires a certain level of understanding of the intrinsic nature of the Web and how it works.  Actually leveraging those rules requires an even deeper and more profound understanding of the Web. The challenge these days? The Web competency bar is climbing fast.

To drive the right decisions in what they do product designers, marketing teams, software architects, developers, strategy officers, and other key roles in today's generation of online businesses need to have a solid handle on an extensive array of Web topics.  This ranges from appreciating why plain old HTTP is so good at underpinning the Web to more sophisticated topics like modern application architecture, the latest in online user experiences, next generation computing models (grid/cloud/utility/SaaS/PaaS), cost-effective scalability, user identity, network effects, Jakob's Law, analytics, operations, user community, as well as the many compelling new distribution models that are nearly mandatory in the first release of most products. 

This extensive set of competencies is what's required nowadays to deliver a credible online product to a receptive user base and it has dramatic implications for both uptake and overall cost/time-to-market.  Worse, this body of knowledge has become extensive enough that many Web startups frequently fall far short of what they need to know in order to be successful with these far flung practice areas. 

Web Product Distribution Models - Web 2.0, Widgets, Social Apps, Open APIs

Does this complex body of knowledge mean the era of the two-to-five person Web startup is coming to a close? Not at all, at least not yet. The productivity level of the latest tools and techniques remains almost astonishing though the level of knowledge required of these teams is creeping up and up.  And as we'll see, new models for product distribution are pushing the capability envelope of the typical Internet startup team to the point we may very well see the day soon that they won't have all the skills necessary to deliver a fully-scoped modern Web application.  It is also one reason why fewer and fewer Web startups have the goods to be all around hits out of the gate.

Certainly, varying depths in subject matter are required depending one's exact role in a Web business, but Web-oriented products are fundamentally shaped the vagaries of the network itself.  Tim O'Reilly himself still has the best quote on the subject: "Winners and losers will be designated by who figures out how to use the network." And as we'll see, the Web is driving the evolution of a major new generation of online distribution models.

Why Adopting New Distribution Models Is Crucial 

As an example of this, I've been tracking some of the latest discussions around the hot topic du jour in the Web world: Social networking applications.  Specifically, it's been interesting to watch the surprisingly low level of industry attention around the titanic competition brewing between social networking application formats from Web giants Facebook and Google.  Why is this?  Some might say it's because these applications still have largely unproven business models.  Others, like Nick O'Neill at the Social Times recently observed (rightly in my opinion) that the struggle may have to do with a deficit in understanding why these new types of Web applications are so important. Nick notes that these widget and social networking style models for packaging and distributing Web apps often "have more eyeballs looking at their products than television channels have" and the challenge is that too many people just "don’t know what any of this means", despite the major players divvying up the online pie for themselves.  With the size of these next generation distribution audiences, ignorance has an extremely painful price: failure to produce results and growth, poor engagement with the marketplace, and loss of market share.

An excellent summary of the truly massive, but largely underappreciated scale of these new Web application models was last week's TechCrunch piece on the progress of Google's OpenSocial, an increasingly successful model for creating portable social networking applications that will run on any OpenSocial-compliant site.  Erick Schonfeld reported that OpenSocial now has a total reach of an astonishing 350 million users and it will soon be 500 million.  There are over 4,500 OpenSocial apps today, a healthy number for the application format but a small drop in the bucket compared to the number of Web sites in the world. But the key is that these applications are integrated much deeper into the social fabric of an engaged audience, interjecting themselves into the daily personal and work habits of the "captive" users of social sites and even have access to the personal habits and data of users of these sites.  Facebook's story is impressive as well with over 37,000 applications that have been installed over 700 million times.

And social networking applications are just one of many news ways that applications have to be packaged and distributed, yet far too many organizations persist in a very 1990s view of Web experiences, namely that Web sites themselves are the center of online product design.  Many even think that some of these other new distribution models are interesting but not part of their core online product.  Unfortunately, that's very much a parochial view in the present era.  Federated applications, atomized content and functionality, 3rd party product ecosystems through open APIs, and much more are required to establish a strong and resilient network effect which fends off competitors that are themselves bringing these potent new competencies to bear. 

 In fact, one of the things we emphasize over and over again in our conference workshops and in Web 2.0 University is that having a Web site is usually the least interesting things about new products.  Worse, it makes the customer have to find you amongst tens of millions of other sites.  Instead, these new models tend to focus on going to the customer, instead of making them come to you which is a much harder proposition. This can instantly give you the ability to reach millions of potential people with dramatically lower effort and cost, as long as you have something interesting to offer.

Unfortunately, the number of capable practitioners of these new distribution models remains relatively small compared to the large body of experts in traditional Web product development.  Demand is also low for these new skills as most organizations have been painfully slow to appreciate how much online product development has changed.  A quick search of the job aggregator SimplyHired tells the tale: Nearly a thousand Web designer positions are available while only 36 OpenSocial and 40 open API positions are open, for example.  This despite the the latter skills being able to project a product across the Web into hundreds of social sites or create an API that allows the product to be incorporated into countless other products for far less cost per customer than traditional methods.

The lesson here is that these new models still have a lot of fertile, unclaimed territory and many otherwise fierce competitors have not yet become fully aware of these new opportunities.  Get your piece of the pie while there's still time

The new Web 2.0 era distribution models remain largely untapped

I also find that the Web development industry has been slow to change, particularly outside the valley, and there is depressingly scarce information on how to deliver well on things like widgets, open APIs, social networking applications, and even syndication.  To help with this, I've put together a short primer and some good references for those that want to get started.

Because the good news is that there remains tremendous opportunity for growth and success — for both startups and traditional businesses — if they will actively begin incorporating these new product delivery models into their own online capabilities.

Overview of Online Product Delivery Models 

  1. Web sites.  This the classic model for Web presence.  During the early Web, creating a Web site was just about the only option for engaging with those online (e-mail being the other.)  Most early Web sites were used for publishing and not for user participation or peer production.  These days, Web sites are still important, though by no means mandatory, and have their content syndicated via RSS and ATOM (pushing the content to where it's wanted), provide an access point to obtain widgets, and maintain user identity, and create communities of users.  Upshot: They've evolved a lot but Web sites are only part of an extensive set of capabilities that must be brought to bear in the Web 2.0 era.
  2. Syndication. It took ten years for the Web community to figure out a workable syndication model.  Now RSS and ATOM are now the expected models used to distribute content off a single site and across the Web. Countless aggregation services now exist that make a site's information embedded in their services as well as a way to offer users a method for pulling information from a site and experienced in a means of their choosing, from Google Reader and Newsgator to the innovative Yahoo! Pipes.  Most sites still heavily underutilize syndication even for notifications and pushing out frequently changed information to draw attention to it much less the strategic ecosystem and integration opportunities it affords.
  3. Web 2.0 applications.  You might argue that Web 2.0 itself is not a product distribution model but a set of design patterns and business models and that would be a true statement. However, in this context we're referring to the fact that Web 2.0 apps package up the 3rd major type of networked value: user participation.  Before then, Web sites and syndication primarily had only centrally produced content or functionality that they could expose over the network and offer to the marketplace.  In other words, user participation its purest form — sometimes known as peer production —  ultimately results in products like Mechanical Turk and Predictify that provide direct networked access to user participation, but there are many fine gradations to this.  The bottom line, Web 2.0 applications plug the user into the network like never before and are a critical rung in the distribution ladder since it offers access to the largest set of content and information by harnessing collective intelligence.
  4. Open APIs and Web services.  This is one of the most important long-term decisions most online businesses can make.  Offering an open API lets anyone take the online components of a business, from its data and functional capabilities to the users themselves, and makes them open and accessible over the Web to be incorporated into other products and services, sometimes in the form of mashups and sometimes in the form of entire online products.  Amazon, one of the first Web companies in existence and is hence far downrange in terms of the experience curve, has been using this distribution model with notable success recently.  So have hundreds of others.  The real challenge has been how foreign this model is to the original Web model and thus to the various management and development competencies in most organizations.  It's much more an a way to OEM a product and leverage the customers and investments of hundreds of other partners.  However, overall, it affords the potential for much larger business outcomes than could ever be created with point Web presence.  It's now considered a significant oversight not to have an open API available for the typical online product.
  5. Web widgets.  Selecting parts of a Web site and it's data and packaging it up to make it run inside a portable, user distributable widget has been growing more and more popular over the last few years. For example, WidgetBox currently distributes 74,000 different kinds of Web widgets from its partners to over 1.2 million other sites.  Widgets lets users distribute a Web site to other places on the Web at no extra cost and it also creates an ecosystem effect, where other Web sites users become the users of the new site.  The YouTube badge is a notoriously well-known example of this that also helped drive the extraordinarily fast growth of the site.  Like APIs, widgets are now considered a mandatory must-have for new and existing online products. But unlike APIs where it's up to the API users, figuring out users want out of your site's widgets is still an art form.
  6. The Plaxo Pulse Story with OpenSocialSocial networking applications.  Sometimes viewed as an extension of the Web widget model, social networking applications are applications designed to run inside of popular social networking environments and usually have capabilities that tap into and make use of the social graph information resident in a user's social network account.  This is an amazingly fast moving field as you can see from a recent post on the latest happenings on the OpenSocial blog, to the extent it's hard even for well-funded companies to keep up.  However, despite skepticism that large businesses can be built exclusively through a social networking application, it's become ever more essential for a site to make its capabilities accessible usable in these environments.  Not only will users help distribute online products in these formats to their contacts but it also increases the overall usage of the your application including participation and its consequently growth of a site's network effect.  While not yet considered mandatory for online products, the ease with which these social network applications can be created and the large numbers of users they make available makes it a smart distribution option for most Web businesses.  Like widgets, however, figuring out what users will find engaging in a social networking application featuring your online product takes some research and experimentation.  However, the results can be very rewarding and some social networking applications have millions of daily users.  See the Plaxo Pulse story on Mashable for the details of how OpenSocial drove a 5x improvement in traffic in only 3 weeks.
  7. Semantic Web and Web 3.0. The Semantic Web, one of the original visions for the World Wide Web, has taken a while to arrive but it's beginning to look like it may hit critical mass in the next 12-24 months.  Combined with Web 3.0, which takes the architectures of participation at the core of Web 2.0 and drives it through a lens of Semantic Web capabilities.  The benefits can be profound and can greatly increase the value and leverage of information on the Web.  While this is very much not prime time yet, unlike #1-#6 above, it likely will be and smart organizations can get ahead of the learning curve and get an early market lead using these techniques.  For now, however, I recommend that most organizations focus on executing well on the first six items before tackling this and waiting for the technologies to finish emerging and maturing.

The list above should provide good guidance for starting move into the potent new models for distribution on the Web.  I'm seeing, however, that because of the major shifts in strategy and product design emphasis these techniques demand, most organizations take an inordinately long amount of time to become effective with them.  The lesson here: Start small now and build core competency.  Small investments now can pay off later in terms of valuable experience made from early experiments and pilots.  When done right,
these new distribution models can become the dominant channels that the world uses to interact with your business, like they already have with Amazon and Twitter.

I'll be talking about these and other strategic online product design topics in my upcoming Building Next Generation Web Apps Workshop at the inaugural Web 2.0 Expo 2008 NYC next month.  I'll have more details about this deep-dive session in an upcoming post.

The 6 Essential Things You Need To Know About Google’s OpenSocial

I've spent the last few days keeping track of the seemingly endless stream of news and blog coverage about Google's new OpenSocial model for social networking applications.  OpenSocial has been described by some as Google's industry "chess move" to outmaneuver and corner Facebook. This is fascinating set of developments to watch since Google's own growing social networking platform, Orkut, was eclipsed by Facebook in terms of overall traffic back in September.

Google's OpenSocial ModelUnless you've been hiding under a rock lately, you know that Facebook is presently the industry darling in social networking, having largely pushed MySpace off the industry's stage, as it seems to offer a more compelling model for social interaction to users overall.  Just as importantly, Facebook also lets any other company that wants to join in party do so by building 3rd party Facebook applications, of which over 7,100 now exist, making Facebook increasingly rich in functionality and content by leveraging the creative capacity at the edge of the Web.  In the Web 2.0 era (and in all computing eras before), the central truism is that a platform beats an application every time. This applies here with a vengeance and MySpace and other social networking sites have suddenly rushed to embrace openness and 3rd party widgets and gadgets to such an extent that MySpace has thrown in with Google on OpenSocial.

So the damage is done and in the fickle world of online social networking, Facebook currently has the upper hand.  This demonstrates yet again a powerful but counterintuitive aspect of networked software: the more control you give away, the more value you can get back.

Read my ZDNet coverage on how Facebook got ready to overtake MySpace and the challenges of setting up shop inside in Facebook.

However, much of the blogging around OpenSocial would have you believe that has Google now trounced the competition with a strategic move that counters Facebook's open SNS platform move with an open SNS application model that can work everywhere else too.  At least, that is, the other social networking sites that support OpenSocial's API.

But as Don Dodge noted in his OpenSocial coverage this isn't going to stop developers from building apps natively for Facebook any time soon and will have little practical effect on existing Facebook users for quite a while.  Not to mention the rest of the Web, since not even a single real OpenSocial application yet exists.

That's not to say however that OpenSocial doesn't have its advantages.  Joe Kraus, a Director of Product Management at Google, wrote today on the Official Google blog that OpenSocial will make life easier for developers "because it makes it easier for them to focus on making their web apps better; they get lots of distribution with a lot less work. It's good for websites, because they can tap into the creativity of the largest possible developer community (and no longer have to compete with one another for developer attention). And finally, it's good for users, because they get more applications in more places."

So, despite the early beginnings, does OpenSocial make sense from the production side of social networking applications?  It still remains to be seen, despite the enormous amount of early partner support for it, if the consumption side in terms of these kinds of applications really generates value.  Most of the applications on Facebook provide so little actual utility that they are barely worth installing.  While making these mini-apps portable between social networking sites is convenient — and it probably will appreciably increase the total number of available social applications —  it's really people and the network effect they represent for a given social networking site that makes the site truly valuable.  In other words, if my friends and colleagues aren't on the social networking site I use, then that site is of little or no use to me, even if I can take my apps with me.

It'll be interesting to see what ultimately happens to OpenSocial.  I suspect it will actually see fairly good uptake since it's based on the highly successful Google Gadgets model, for which over 23,000 different Gadgets presently exist.  But will it change the playing field in the social networking wars? Probably not as much as a federated social identity would.  Federated social identity could potentially let you exist and participate simultaneously in all the social networks you wanted to at once using one set of social metadata you control.  That's probably a lot closer to the Facebook killer that so many are looking for and things like openid are bring that world closer to reality all the time.

In the meantime, here's the six things you absolutely have to know about OpenSocial to have an opinion about it:

6 Essential Things You Need To Know About Google's OpenSocial

  1. OpenSocial only offers the lowest common denominator, not the full richness of each social networking platform.  While application developers can create apps using the OpenSocial model and they will be able to run on dozens of different social networking sites, OpenSocial can't help you leverage the full capabilities of the site it runs on.  Social networking site APIs aren't anywhere as complex as say, the Windows APIs, but we've seen this before with platforms such as Java, where the development model can't support the full capabilities of the underlying operating systems.  Like Java, write once, test everywhere is the name of the game for OpenSocial and while economies in this model certainly exist, a single universal widget model tends to discourage product differentiation in favor of broad distribution.  This means to get at the full richness of the underlying platform and create a competitive product, you have do custom coding for that site and you've just broken the reason to use a common application model.
  2. OpenSocial is largely based on open standards and there's only minor developer lock-in.  Overall, it actually seems pretty safe to do a lot of your social application development using OpenSocial.  It uses the essential browser open standards of XML, HTML, Javascript, and the data formats are all ATOM and RESTful/WOA.  You can even host Flash content and functionality inside the OpenSocial application as long as you don't break the rules.  Finally, most of the really popular development platforms, including Ruby on Rails, can support the server-side API.  All in all, Google seems to have stuck to a fairly open and non-proprietary model including avoiding crufty proprietary markup.  OpenSocial documentation and sample code all uses the Creative Commons licensing and Apache 2.0, and the OpenSocial FAQ says everything will be open sourced at some point.  Kudos for this open stance, Google.
  3. OpenSocial is a real doorway to social networking data portability as well as potential security holes. A site that supports OpenSocial applications provides that application with all the people data in that user's account.  Their own info as well as their friends.  This can be used to export user's social data from sites that don't support themselves directly and it could even be used to knit together a person's social data across other social sites that support OpenSocial, with properly designed 3rd party apps.  But it also opens the door to security problems and expect to see that security, cross-site scripting, and exploits become an issue over time, as it always does when platforms open up to the rest of the world. Update: Michael Arrington has reported that the first OpenSocial app has now been hacked.
  4. OpenSocial is simple and straightforward but also capable of developing full-blown, rich Internet applications.  And without server-side infrastructure.  Developers can simply innovate with a few bits of markup and procedural code and drop it into the OpenSocial ecosystem and leverage the massive audiences and scalable infrastructure of OpenSocial compliant sites.  OpenSocial even supports powerful interactive Web user interface models like Ajax explicitly.  Like we saw last year, with the new productivity-oriented Web development platforms, this will change what's possible while also creating mountains and mountains of relatively useless, uninteresting apps amongst a few real gems.  But a lot more wildflowers will bloom on the OpenSocial landscape and some will likely rise up and show us how useful these applications can be.
  5. OpenSocial is from Google and excessive philanthropy should not be expected.  Google almost certainly thinks OpenSocial will ultimately be very good for Google, if not outright bad for a few others (probably Facebook).  While the openness is encouraging, if OpenSocial is successful, Google has a plan to make that success work for it. Those plans may not always be to the benefit of everyone playing under the OpenSocial umbrella.  User beware.
  6. A new era in competency in social software is being ushered in by models like OpenSocial.  A lot more social applications are being created because of open social platforms have become so popular.  But building successful social applications is a lot different prospect from building traditional business and consumer applications.  Expect that many developers and software designers will fail to build applications successfully until we learn that a different focus and way of thinking is required.  I've written before about the basic rules for building good social applications, but these are just the beginning.  Understanding people is the key to building effective social networking applications, and that is often the hardest thing for us in an industry obsessed with connecting with each other via 1s and 0s.

What else do we need to know about Google's OpenSocial?  Put your ideas in comments below or drop me a line at dion@hinchcliffeandco.com.

Going to Web 2.0 Expo Berlin?  I'll be there November 5th and 6th giving two sessions (What is Web 2.0 and The Rise of Widgets) as well as on the show floor at the Reply booth, our European partners for Web 2.0 University.