The Big Switch

I finished reading Nicholas Carr‘s The Big Switch: Rewiring the World, from Edison to Google back in June, but am just now getting to blogging my thoughts on this book. Something about shipping software… :-)

Carr carefully recounts how the electrical industry evolved, and focused on the personalities of early central players such as Thomas Edison and Samuel Insull, as if to personify the computing industry into those “DC like” and those “AC like.”

As I read this book, my thoughts centered mostly around the nature of centralized and distributed systems, and around the human desire to control and to be emancipated.

A frequently recurring conversation I have with ECM customers, concerns centralized versus distributed systems. Often this discussion is about delivering the right façades to satisfy the needs of a particular role (e.g. supporting centralized auditing and compliance functions for systems administrators, empowering line of business users via delegated (edge) administration, including user/group management, etc.).

While I get that switch refers to electricity (i.e. a light switch), I wonder if a better metaphor would involve a dial or a set of dials. I think that software delivery is becoming more adaptive and less binary (i.e. on premise and hosted, not or).

I’m reminded of the following visual by my colleague Michael Hackney that I sometimes refer to as “dialed in” software:

There are, of course, more variables (rows) than those listed above, including whether software runs on premise or is hosted (i.e. delivered as a service). I talk with customers who require unstructured content to be managed on premise and delivered via software as a service. So, I guess I take some issue with the binary nature of a switch metaphor.

As a software architect building enterprise software for such adaptation, I think about the subtle ways our perceptions, ideas, and language change whenever we begin using a new tool (e.g. writing software for a so-called cloud environment). Consider the difference between the emphases of the printed page versus the web page:

  • Printed page – emphasizes logic, sequence, history, exposition, objectivity, detachment and discipline
  • Web page – emphasizes immediacy, simultaneity, contingency, subjectivity, disposability and speed

Here are a few more thoughts about this kind of transformation and disruption that cloud computing can yield:

  • Carr’s chapter, “The Great Unbundling,” talks to some of my thoughts in this blog [1] [2].
  • Does unbundling and re-bundling of content–a form of personalization and reuse–amplify isolation or promote knowledge sharing? Am I inclined to go beyond a particular filter even if my initial need is satisfied, or do shield (block) myself from more meaningful collaboration and thought instead (i.e. divide knowledge and magnify it according to differences, content balkanization, content polarization, etc.)?
  • What are the social consequences of pervasive content (i.e. content always at my fingertips)? (I’m already a bit frustrated with my Blackberry-slinging friends who feel compelled to thumb through incoming email despite being in face-to-face meetings with others.)
  • Advances in IT that weaken central control, inevitably are followed by a reassertion of control. That is, control… disruption… reassertion… (repeat).
  • On the Web, anonymity is just a false façade (illusion). So, does that mean the Internet can become an “integrity catalyst”?
  • Consider the value of distributed content services (i.e. bringing services to content and also content to services) in light of Eric Schmidt’s statement, “When the network becomes as fast as the processor, the computer hollows out and spreads across the network.”
  • Trust takes on special meaning where reliability, scalability, responsiveness (both software and customer service)
  • Capacity planning becomes even more important (i.e. knowing how a function/feature contributes load, establishing the right model and metadata to track demand, load and diversity factors).
  • Parallel processing and virtualization become powerful ways to deal with narrow application sets (e.g. Google) and wide application sets (e.g. Amazon), respectively.
  • Let’s say that collective intelligence is something to generally foster in a consumer or corporate environment and that something fostering collective intelligence is “green.” Then how green is your content and your content services? For example, instead of just performing calculations or executing queries, does your content (services) contribute to collective “sense making” (i.e. providing answers without knowing questions), to increased knowledge sharing (explicitly and implicitly), etc.?

Lastly, as you might imagine, there have been a number of other reviews of this book. Here are a few I found interesting:

  • Charles Fitzgerald (now with EMC via its Pi Corp. acquisition, after being a GM of platform strategy at Microsoft) – who reminds us of the power of reinvention (e.g. Edison and General Electric)
  • Ross Mayfield – who raises issues of perception and subjective value given his work with customers at Socialtext
  • Tim Bray – who does a nice job of outlining Carr’s work and validating its engaging nature (by taking the time to blog despite personal bias)
  • Chuck Hollis – who emphasizes the thought-provoking nature of Carr’s work and who leveraged his interview with Carr to discuss “how,” not “if”

Update 12/1/2008: For more of my book reviews and to see what else is in my book library (i.e. just the business-related or software-related non-fiction therein), please visit my Books page.

Does ‘seam carving’ generalize?

During a recent Charlie Rose interview with Peter Chernin, the subject of media formats came up, which reminded me of an earlier question I raised, “What is the natural unit of written collaboration?” When I mused upon this question it was in the context of documents and written content. I hadn’t really thought about so-called rich media (interactive) content.

So, what is the natural unit of such content?

Mr. Chernin remarked that the movie, the hour-long drama and the half-hour comedy are all resilient forms of content–and he would hope so given his responsibilities at News Corp. He also sees new forms emerging–all shorts, if you will: five, ten and 15 minute segments, depending on one’s context (e.g. watch on your smart phone while waiting for public transportation).

I recall the following quote from Mr. Chernin: “In a world of infinite choice, mediocrity is death.” (More quotes are captured here, for example.) Or, aim to stand out. Speaking of short films and excellence, Pixar’s Presto, which plays before WALL-E, is one of the funniest things I’ve ever seen in a movie theater.

Anyway, back to new forms of interactive content… Content reuse is something I build software to promote based on conversations with customers. During this interview, I couldn’t help but to think that there is a real opportunity here for software to support the production of variously sized shorts from full originals in such a way as to retain, if not amplify, the essence of the first edition.

Enter seam carving.

I found a seam carving implementation by Mike Swanson called Seamonster. This led me to a paper by seam carving’s creators, Dr. Shai Avidan and Dr. Ariel Shamir: Seam Carving for Content-Aware Image Resizing.

As the author’s note, without additional “higher level cues.” seam carving doesn’t work on all images. Nevertheless, the relatively straightforward nature of seam carving causes me to wonder if similar techniques can be applied to video, audio and even text.

This later work describes video application of seam carving. It appears, upon first glance, that a key to application is what Avidan and Shamir call energy criteria (e.g. the notion of forward energy in a video context).

What are the key energy criteria for audio files? What are the key energy criteria for documents? What artifacts should be anticipated when applying seam carving to various media and how can they be mitigated, if not avoided altogether?

I need to investigate seam carving in more detail. All resource pointers are much appreciated.

Documentum 6.5 with services in mind

You may have seen this week’s press release (PR) concerning the launch of the EMC Documentum 6.5 platform. Given that this blog is referenced in the PR’s sidebar, I thought it would be appropriate for me to offer my perspective on this release.

When the Documentum Foundation Services (DFS) team first embarked on its mission to better service-orient the Documentum platform, I suggested that, over time, the very focus of our daily work–services and common service infrastructure–would become less “talked about.” I suggested that services alone deliver less value than services in the context of processes and processes in the context of solutions.

So, ultimately EMC has to deliver relevant, robust solutions to market much more than just web services. This is exactly the focus of the EMC PR–and each solution discussed is built using Enterprise Content Services (ECS).

Take CenterStage (aka “Magellan”), Media WorkSpace, and My Documentum as D6.5 solution examples. One user experience differs fairly significantly from another user experience (e.g. CenterStage Essentials versus Media WorkSpace). Looking under the covers, one implementation (i.e. presentation layer and application behavior) also differs from another implementation. However, common business logic is provided to each solution via a consistent set of services (e.g. Object, Query, Schema, Access Control, etc.).

Each solution is worth its own coverage, but I will allow solution teams to accomplish this (e.g. content like this).

Instead, I’d like to focus on the progress achieved in the D6.5 release where services and common service infrastructure are concerned:

1. The number of out-the-box Enterprise Content Services (ECS) in DFS has more than doubled in 6.5, from the six to 13. The total number of ECS across D6.5 has grown nearly fourfold, from six to 23.

  • Six original services with DFS 6.0: Object (enhanced in 6SP1 to support external objects; enhanced again in 6.5 to support aspects), Query, Schema, Search (enhanced functionality in 6.5 for clusters), Version Control (enhanced in 6.5 to support aspects), Workflow
  • Seven new services with DFS 6.5: Access Control, Analytics, Comment, Lifecycle, Query Store, Task Management (WS-HumanTask), Virtual Document
  • Plus 10 additional, new services beyond (i.e. not packaged with) DFS 6.5:
    Content Delivery, Electronic Signature, ERP Integration (SAP), Federated Proxy, Formal Record, Physical Records Library, (Records Management) Policy, (Content Transformation) Profile, Retention Markup, (Content) Transformation

Bottom line #1: there are many more services with D6.5 from which to compose content-centric applications.

2. Common service infrastructure has been significantly enhanced at the same time. For example:

  • Contract first (or WSDL first) development of services is supported in addition to code first development.
  • Design time discovery of services is supported via a new service catalog or an existing UDDI v2 compliant service registry. Classification of service occurs via the concept of catalogs and categories, by default.
  • Modularity has increased at the binary (e.g. JAR file) level to promote better composition (i.e. only take what you need).
  • Single sign-on (SSO) support has been improved.

Bottom line #2: you have more options now to provide, discover and consume services.

Certainly there is a lot more to each bullet point above, and I plan to drill down into several points in future posts.

…and I didn’t even use the term “Web 2.0″…until now. :-)

Hands-on DFS

DFS hands-on lab participants at EMC World 2008

Tom and I were able to present to another great set of attendees–lots of healthy curiosity and great questions. Now that the labs have been conducted, here are the presentation slides–version from today, which was slightly modified from Monday’s deck.

It’s been a great talking with a lot of folks about DFS and content management in general. Thanks to everyone who shared their current experience with DFS, their ideas and their issues. The product will be better because of you. Thanks! :-)