Trouble in the Jungle

What do Dropbox and Foursquare have in common? One integrates your local digital life with the cloud and the other converges your real-life activities digitally. They both operate in different markets, with different revenue models, and provide entirely different products. However, both of them host part of their infrastructure on Amazon’s EC2 cloud computing platform, and both of them went down exactly one week ago. These two companies, along with a slew of others including Quora, Reddit, and many of their 60,000 EC2 customers experienced outages lasting for 7 hours, or in web-terms, an eternity.

Sad Clouds
Amazon, in this case, is not just a web host; it is one of the largest representatives of the cloud computing movement. The cloud computing (or C2 as Amazon calls it) concept is responsible for enabling the possibility of true digital convergence and, when it went down, it sent shivers down the spines of even the most ardent advocates of the trend. 

Dropbox Takes Power
A personal computer has two things that are integral to its operation: processing power and storage. When a normal user boots up their laptop and opens Word to edit a document, that document gets put in the computer’s memory (storage). Every subsequent keystroke is logged and every action takes processing power to register.

Let’s forget about Word for a second and think about the same process in a Google Document. The document would be stored on Google’s servers and every time a user hits a key, (which in the case of this very blog post would be over 2,700 times) a request is sent to the server for processing and storage.

Saving multiple versions of a file, like Dropbox does, takes the same amount of computing “energy” as modifying the document. Building a hardware system that can handle anything from 5 virtual computers to 5 million concurrent ones would require an outrageous investment, and unless you’re Google (which Dropbox is not), it’s not monetarily feasible.

Amazon Gives You Wings
Amazon’s two most popular services offer those specific capabilities to startups on an as-needed basis. EC2 (Elastic Cloud Compute) provides an endless army of virtual computers that can be operated remotely to perform any computing task from DNA analysis to keystroke logging. S3 (Simple Storage Service) provides an infinitely scalable storage infrastructure to store anything from the gigabytes of data required to store a full DNA sequence to the individual byte required to store an English letter. Amazon offers both of these services on-demand with pricing set in a pay-per-use model.

When Dropbox was being built, its cofounders, along the founders of Foursquare and others, chose Amazon to extend their infrastructure. It is the cheapest and easiest way to scale a website, and for that reason, other organizations, big and small choose Amazon. Even Netflix, Amazon’s direct competitor in one space, chooses to use Amazon’s S3. Last week, when one of Amazon’s Web Services (AWS) went down, startups around the world panicked as they saw their infrastructure crumbling. What’s more, is it gave cloud computing, the infrastructure necessary for digital convergence, a terrible black eye.

Google Docs Schmoogle Docs

I’m writing this on Microsoft’s new Office 365 platform, and I have to say, it’s a step in the right direction for Microsoft. It’s an online document editor and storage platform that integrates (somewhat) nicely with recent versions of Microsoft’s “thick” Office clients. It currently supports 4 document types: Word, Excel, PowerPoint, and OneNote. It actually does a great job of imitating the look and feel of the standalone clients with a smaller version of Microsoft’s “Ribbon” and a great looking document console. Sadly, that’s where the party ends, and Microsoft is playing its usual game. It did too much, and at the same time, too little, too late.

Too Late

If anyone should know about first-mover advantage, it’s Microsoft. After their brutal success with DOS, Windows, and Office, one would expect that the behemoth would understand that in today’s fast paced technological world, it takes quickness and agility to remain on top. Microsoft missed the memo and last week, over a year after Google released Docs, they released what amounts to a fancy, browser demo. After Google has amassed over 14 million monthly unique users for Docs, Microsoft released a buggy, featureless, pseudo-browser-dependent text editor. 

Too Much

With Office 365, Microsoft played the same game it did with Windows Me. It released a poor product that was overdeveloped and under thought. Take the document creation process for example. Once you choose to create a new document, it won’t let you edit that document without naming it. Can you name a piece of productivity software that asks a user to do that now? I can’t. 

The interface is also not intuitive. Microsoft should have taken a lesson from Apple (or Google) on simplicity. When learning about the web apps, one of the first things I noticed was the subscription fee for professionals to use their email service (they obviously don’t know about Google Apps). The document list interface seems simple enough, yet at the same time, it’s cluttered with useless self-promotion and advertisements. I like photographic advertisements in my productivity software as much as I like a blaring Television on my nightstand. Word Up? No Microsoft, downvote.

Too Little

Say what you want about Google Docs’ faults. Docs can’t format a document to satisfy a third grade teacher and Spreadsheets can barely handle calculus, but it does have the basic features down well. It has a simple interface for a simple product. Office 365 “features” buggy highlighting, inconsistent typing rules, inconsistent delete functionality, no undo button, and it even lost the contents of my clipboard.

A Passing Foghorn

The biggest thing that Office 365 is missing is the focus of this blog: convergence. People don’t use Google Docs for its formatting abilities. They use it because they can collaborate quickly and easily with others. Multiple people can be in the same document, of any type, on any platform, and edit together in real-time. Office 365 barely allows it and Excel is the only product that a collaborative experience (and it only does that because it’s the least technologically challenging to develop). 

Moving everything to the cloud is one thing, but allowing simplicity, sharing, and collaboration is really what this new wave of digital convergence is all about. 

Microsoft is the tyrannosaurus that missed Noah’s Ark to the Cloud, even though that particular ark was equipped with a foghorn. 

PS. I finished writing this in Google Docs. 

End Game: Google’s Tactics and Strategy

Google’s CFO, Patrick Pichette, said something very interesting last week on their Q1 2011 earnings call. It revealed Google’s convergence strategy in bright, vivid detail. 

There are really two stories on Chrome. There is a tactical question and there is a strategic question. Chrome is really pushing the Web, and it has a fantastic opportunity that, when people have adopted Chrome, they basically instead of looking for Google and looking for search, the “omnibox” gives them immediate access to Google search. So from a strategic perspective, it has that in Chrome OS. On a tactical basis, everybody that uses Chrome is a guaranteed locked-in user for us in terms of having access to Google.

Google’s strategy is a unified cloud-based computing experience. Their tactic is rapid user adoption through the now wildly popular Chrome web browser. Once they have users “locked-in” with chrome, they know that those users will use Google products almost exclusively. They no longer have to pay for user acquisition costs from in-browser search bar advertising, which means Firefox and Internet Explorer might see declining revenues. Most importantly, each locked-in user who frequents sites like GMail will likely use future Google products like Chrome OS.

In the past year, Chrome usage has gone from 7% to 17% worldwide and this growth doesn’t appear to be slowing. Each new user of the browser represents significant future potential earnings from being locked-in to Google products.

This dependence on Google products will become even more significant when consumers are given the option of a simple, unified Google experience. Consider the case of the Apple’s iPod. The iPod itself would not have been a home run without iTunes and the iTunes store. The iPod was released in October of 2001, 10 months after iTunes guaranteed a seamless interface for transferring music. What really made the iPod’s sales explode, however, was the introduction of the iTunes store in 2003. 

With the unified experience provided by integrated hardware, software, and additional services, Apple was able to gain an insurmountable competitive advantage. Google is hoping to do the same with Chrome, Chrome OS, and its online applications. If consumers use computers primarily for the web, media, and basic productivity, and all of those can be had online, why not have a unified experience geared towards those services?

Can you imagine living in a world where your music library lives in the cloud and instead of using a local music library, you load up a website? Now think of a world where you don’t need to use a Mail client to manage email efficiently. Finally, imagine a world where your productivity suite doesn’t start with the word Microsoft, never gives you a virus, and never requires you to download a software update. 

This world of web applications already exists. Google’s Chrome strategy is already in place, locking you in. You probably just didn’t know it yet.

Chrome OS: “A” Final Frontier?

Google’s Chrome OS is not an operating system in the traditional sense. Historically, a personal computing hardware stack would consist of three distinct layers: hardware, operating system, and application layers.

The hardware layer would consist of physical storage, memory, and a processor. Essentially, it is the lowest level of computing that deals with the 1’s and 0’s.

The application layer sits at the top of the stack and allows the user to control the hardware.

The operating system sits squarely in the middle and provides an interface between the applications and the underlying hardware.

Google recently made the first “large-scale” disruption to this model in decades with the introduction of Chrome OS. 

When people think of applications, they typically think of Microsoft Word, Internet Explorer, or their favorite iPhone game. These are all applications in the very traditional sense. People don’t generally consider GMail to be an application, but it is.

A New Paradigm
Chrome OS merges the old application layer with the operating system and leaves you with what is essentially an instant-on web browser for an operating system. There is no start menu, spinning hard drive with your music, or control panel. With a laptop running Chrome OS, you are greeted immediately by a web browser running web applications. “Applications” like GMail, Google Docs, YouTube, and Pandora are all at your fingertips. 

The Demise of the Desktop
Google is obviously trying to take the personal computing industry in a new direction marked with the convergence of our on- and off-line digital lives. Google may be ahead of the curve, but our days of disconnected workflow are numbered.

A Technical Deep Dive: Real-Time Web Communcation

One of the biggest differences between our online and offline digital lives is inherent in how we understand the functionality of the web. It’s an issue of real-time two-way communication compared to a pull-only system. We all operate under the assumption that the web is stateless and our actions as users are pulls (or requests). That is, we as web users perform an independent action, manually update the server, and then wait for a response. We often don’t even realize that this is how we conceptualize internet usage. We type, click, and wait for a response from the ether. I won’t go into the technological reasons for why the HTTP protocol was designed this way, but basically, it was to remain simple. How, using this type of framework, can a web application replicate a truly interactive “desktop-like” experience? Simply put, it can’t.

Why So Technical?

While trying to understand the convergence of online and offline technological experiences, it is important to understand why the distinction appeared in the first place, how the gap between the two has narrowed, and how it can be overcome. Only then can we begin to conceptualize possible uses for the technology and truly understand how these two worlds will eventually collide. 

A History of Imperfect Attempts

In an attempt to create truly real-time applications, developers have come up with some very not-so-clever ways to imitate seamless, two-way communications. Let’s use a very basic internet phenomenon to illustrate this evolution: person-to-person chat.

Imagine signing on to a website with only one other user, your friend. You both sign in and see a simple chat window with chat history and a text input box. You type “hello” and press return. What happens when you press return is that a request filled with your information is sent to the server and stored. That’s it. How do you know when something was typed? Your web browser sends a simple request asking the web server if anyone has submitted a message. If messages exist, the server returns the chat history and it’s displayed for all users. Your web browser would perform this check once every few seconds to make it seem real-time. For two users polling the web server once every four seconds, that’s cake: a lowly 43,200 requests per day. If 100 users used this site, it would be over 2 million requests per day. Imagine what would happen if a thousand people used this chat site!

Let’s say that those hundred people only send 5 messages each. That’s basically 2 million (minus 500) unnecessary requests for that web server to handle.

How Desktop Applications Differ

The Observer Pattern in computing describes a methodology in which an application “listens” for commands rather than “asking” for them. In our simple example, we can state that web servers listen, and web browsers ask. No web server will ever send data to a random web browser without being asked first. Desktop chat clients are programmed using the Observer Pattern and they listen for updates from the server, which is something browsers can’t do. Have you ever wondered why chat has only appeared in a web browser in late 2005? Why did it take so long for Google Chat or Facebook Chat to happen? It’s because there hasn’t been a way to scale millions of people chatting for hours a day using a stateless protocol. IBM even released an article in 2007 which explained the “myth of real-time” on the web:

“There is no cross-platform, cross-browser way to create a continuous pipe between the client and the server without special software installed on both ends of the line. And even then, you might need a special firewall configuration to make it all happen.”

A New Era of Real-Time Online Computing: Comet and Node.js

The HTTP protocol isn’t going to change anytime soon but developers have figured out that web browsers are built to stream information, and as such, can keep connections open with web servers. In the past couple of years, they have figured out ways to maintain those open connections and imitate the Observer Pattern in web browsers. This new process is called Comet. The only remaining issue was being able to scale to millions of concurrent users without Google’s budget. Enter Node.js, an extremely fast technology with which to create scalable two-way web technologies. 

With these two technologies combined, a barrier to true two-way web communication has been removed. 

Online storage: syncs, streams, and whatever Amazon is trying to do.

It’s no secret that Amazon launched its first consumer-facing cloud storage platform last week to much fanfare, hoopla, and loud groans from the music industry. Overall, the reception has ranged from poor to lukewarm despite CNN’s John D. Sutter declaring cloud storage to be “the future of music.” The reason: Amazon’s poor implementation and general misunderstanding of the nature of consumer requirements for online storage.

First, let me be clear. Sutter is just plain wrong. Nevermind the trend of music discovery outpacing plain music playback. Online storage doesn’t represent the future of music. He must have been sleeping through Pandora’s explosive growth (shown to the right, source). He must also not be familiar with the plethora of other booming music streaming sites such as GroovesharkLast.fm, and Spotify. He claims that online music storage is “convenient” but there is nothing convenient about a strorage medium that doesn’t play nice with the largest music retailer in the world. Online music storage that doesn’t seamlessly interact with iTunes or other existing music players will never become the defacto standard.

Interoperability is convenience.

Assuming Amazon clears up the legal issues surrounding their new music storage service, all they have left is just that: a storage service. They don’t have an API (yet) and they don’t have an easy-to-use desktop client. What they do have is a terrible Web 1.0 interface that is more cumbersome than convenient.

Two models for success: Dropbox and Box.net.

Dropbox launched in 2007 with two main value propositions: a seamless interface for cloud storage and an easy way to share files with friends. Now, Fortune reports that the company is rumored to have hit $100 million in revenues this year and carries with it a $1-2 billion valuation. I’m personally inclined to believe the valuation if those sales numbers are correct, since they have a defined, margin-based revenue model. Why is Dropbox such a hit despite non-existant marketing? It’s dead-simple, focused on playing nicely with others, and completely platform agnostic. I use it at school to collaborate on projects, at home to share music with friends, and everywhere as a dead-simple backup system.

Box.net, while not geared towards a consumer audience, provides another great example of interoperable convenience. It does all the same things that Dropbox does including backups and sharing, but also adds a layer of functionality for collaboration. The most important aspect of Box.net’s success is their interface. It plays nicely with just about any way you could conceive to edit a document in a collaborative environment. Want to edit a Word document in Google Docs, track changes and provide comments? Easy. Does it require a specific platform? No. Are they successful? Yes.

Convergence

The greatest commonality between all successful consumer cloud platforms is that they seek to blur the lines between the desktop and webtop. Google Docs, Box.net, Dropbox, and even the venerable Microsoft Office all are reaching for the same ideal (or cloud). Google is even banking on the eventual disappearance of native applications entirely with Chrome OS.

Amazon missed the memo. They are an island in a great sea of clouds. As useful as basic cloud storage is, it represents only an incremental step towards our eventual and permanent move into to the cloud.

Welcome to the Big Show

This might not be the big show, but it’s definitely the longer show. My thoughts have outgrown the 140 characters of Twitter and the implicit hipster-picture-limitation of Tumblr. It’s time to share longer ideas and thoughts to provide a more in-depth exploration of the technology ecosphere. Specifically, I will explore the trend of technology consolidation with respect to the convergence of our on and offline digital lives. I will help decipher the exciting world of converging online and offline technologies through in-depth analysis and commentary from the point of view of a computer scientist/MBA.