How Can Megacorp Copy Twitter?

In this blog post I'll summarize and respond to a tech article about web services in the enterprise; explain the root culprit for enterprise organizations' lag behind start-ups; and place the lesson a context meaningful for even small business websites.


I guess I'm behind in my tech reading. A friend of mine recently shared an article from ZDNet by Dion Hinchcliffe - actually published this past summer - about modeling enterprise web services after web start-ups. That is, redesigning enterprise SOA after web start-up APIs. 

For the uninitiated, by 'enterprise' we're talking about large organizations (think Fortune 1000, federal agencies, large non-profits). Web services are how applications and systems talk to each other and exchange data. 

SOA stands for Service Oriented Architecture, a way of organizing computer systems around business systems to talk to each other. And APIs (application programming interfaces) are the way by which computer systems and programs talk to each other - the way a Facebook app can display photos from Flickr. 

Hinchcliffe bemoans the state of enterprise SOA, which from what I've seen, is comprised mostly of lots of definition documents and endless inter-department meetings. It is, in other words, just what you'd expect in an enterprise organization. The value promised by web services is too great for the enterprise organization to wallow in another 100 slide PowerPoint presentation, so Hinchcliffe posits a way out: enterprises should model their SOA on web start-up APIs. These APIs form the basis of growth in so many web start-ups. From Google and Amazon (if you can count them as start-ups) to Twitter and Tumblr, it seems that every web start-up provides a way for users and developers to add and pull data from their systems. And they've been very, very successful.

They've been successful for six primary reasons:

  1. Their APIs are easy to use

  2. They provide integrated reporting and billing

  3. They provide good account management

  4. The APIs allow you to code and go

  5. They foster developer communities to produce useful products

  6. They let you use their API in your own business system

These suggestions are all spot on. So, all the enterprise organization needs to do is base its web service after this model. Well, not quite.

Before we identify the the solution, let's identify the real problem: enterprises aren't start-ups. The point is not of size or of age, but of horizons, hunger, and stakeholders. An enterprise organization can in most cases afford to react slowly and absorb some blows. It's inertia is based on market inertia - name recognition, client contracts, etc. Both enterprise organizations and start-ups can plan for the next quarter and the next year, but only the start-up finds itself in a do-or-die position. So it does. 

Most importantly, the enterprise organization is filled with so-called stakeholders whose opinions must be heard and answered. These include far flung departments, multi-opinionated middle and upper leadership, and people who've been plucky enough to stick their noses into the commotion. Enterprises end up with complicated APIs because they have to cater to everyone. They fail to develop developer communities or provide fair license because of strong organizational 'silos' and turf defense. The start-up, in comparison, is concerned with making it happen; GSD, as it were.

The way for the enterprise organization to do these things is to enforce low or no-option decisions, fund only the requisite minimums for system advancement, and to keep score based on the value other 'stakeholders' have gained from your work, not arbitrary meeting milestones. 

What does this mean for the business website?

Put your end goal first. Listen to the folks in your organization, but emphasize the voices outside your organization, as that's where your most important stakeholders are. Let your web design team elevate your customers' perception above yours from time to time. Remember that there is no perfect, but there is "done" and sometimes just making a decision is what counts.

 

by Ben, March 8, 2010

blog comments powered by Disqus