Tag Archives: ASP

Apple’s iCloud: The New Multi-presence Cloud

Article first published as Apple’s iCloud: The New Multi-Presence Cloud on Technorati.

The iCloud is a new kind of cloud where copies of data co-exist in MANY places. This is a “game-changer.”

 

Just over one hour ago, Steve Jobs came on stage at Apple’s WWDC and introduced the iCloud. This is not just a case where Apple is jumping on the “cloud bandwagon.” It is the introduction of an entirely different type of cloud, the multi-presence cloud, to the mainstream market.

Apple’s iCloud is quite different from the clouds we usually see. Instead, of hosting your data “in the cloud” (usually a bunch of remote, virtualized servers and storage) and requiring you to access it there, iCloud allows you to download your data to multiple devices. You can access your data (most likely first music, but later videos and documents) remotely (from Apple’s servers) or locally (on your Mac, PC, iPad or iPhone)—whichever is more convenient.

This difference is not a fine point. It opens a whole new set of opportunities.

You are not “tethered” to the cloud

One of the weaknesses of the traditional cloud (and remotely-accessed services in general) is that you have to be connected to the Internet. As long as you have a connection to the Internet, you can access all your information. However, if you are in place without Internet access (e.g., on an airplane, travelling to a faraway place, at your Aunt Matilda’s), you are “off the grid,” with no access to your data.

The iCloud model overcomes this. Your Mac, iPad, iPod, etc. is a mobile “piece of the cloud” that you can carry wherever you go. You have both access to your data and the software to process it—letting you autonomously listen to music, watch videos, or read documents anywhere.

Bandwidth (i.e., time) is irrelevant

Another weakness of the traditional cloud is that your access to your data is only as fast as the slowest link between you and the cloud provider’s nearest server. Traditionally, most people have said this is not a problem as broadband is “everywhere.” However, this is not true in many situations. When the hosting company’s servers are busy, you slow to a crawl. When walking and driving around you routinely leave 3G coverage areas. When downloading large media files the Internet is always slow.

The iCloud model overcomes this as well. Most of the content you will access (e.g., your music library) will be instantaneously accessible (either on your PC or on your home network). Bandwidth is not a worry (nor are 3G connections, firewalls, etc.)

Access is now nearly ubiquitous

One of the primary strengths of the traditional cloud is that you have near-universal access to your data. It does not matter if you are on a different computer, in a different office, on a different network: you can access you data from any device, anywhere (as long as you have an internet connection). Unlike clouds, iTunes did not allow this (i.e., the PC was the hub). You had to transfer your files from device to device, a tedious process.

The iCloud model ends this limitation. You no longer have to transfer data from device to device. Any device that can connect (for a period of time, not permanently) to the Internet can download your authorised data (from the new hub, the cloud).

This IS the future of cloud computing

What Apple has pulled off is not a trivial accomplishment: universal access with centralized management. It requires the complex synchronization of data and authorization to access it across numerous independent, distributed devices. It requires software that can access this data both while it is connected to the cloud and when it is off-line. All of this has to work seamlessly—and without need of customer support.

Even with these challenges, this is the future of cloud computing. The world has benefited greatly from the economies of scale and network externalities provided by the Internet. However, life does not run on a tether. We need both the benefits of both cloud-based, large-scale efficiency and the freedom of offline operation. This will become even more important as the growth in the volume of data we use far outstrips the growth in bandwidth available.

It will be interesting to see how many other cloud providers follow Apple’s iCloud model over the next 18-36 months.

Look! Is it an ASP? Is it SaaS? Or is it a Cloud? Two Simple Acid Tests

look_up_its_a-200pxTen years ago, ASPs (application service providers) were the rage. Five years ago, SaaS (Software-as-a-Service) exploded. Lately, everyone is talking about cloud computing. Countless companies claim to provide one, some, or all of these. Some aspects of ASP, SaaS and cloud computing are very similar; some are very different. How can you tell the difference? I use two simple “acid tests” to figure this out.

That “blurry” starting point

ASP, SaaS and cloud all provide some basic common attributes: management of resources for you, broad access to many from location you do not need to own or manage, provision of service without needing your own IT teams, purchase without capital investment. However, from here the similarities end. Those differences that emerge greatly affect items of critical business importance: responsiveness to change requests, access to new features, and ability to scale quickly in response to increased demand.

Culling out ASPs from SaaS and Cloud providers

ASPs build, configure, host, and support applications on your behalf. One word, Self-service, separates SaaS and Cloud providers from ASPs:

The Self-Service Test: If a company needs to have software engineers modify code and provide a new build to provision your service, it is an ASP, “plain and simple.”

Many people who claim to provide SaaS and cloud computing are simply ASPs. Their software does not allow customers to pick, configure, and deploy the service without the intervention of software engineers. As a result, their teams (or partners) will need to commence (slow and costly) projects to make changes on your behalf. As a customer, this translates into: 1) higher service price, 2) slower implementation timelines, 3) slow response to changes, and 4) lack of automatic access to upgrades and new features (available to newer customers).

Culling out SaaS-based delivery from “True Clouds”

The line between SaaS and cloud providers is hard to see at the start. However, the line becomes clearer as you use the service more. One word, Elasticity, separates true cloud computing from basic SaaS-based delivery:

The Elasticity Test: A company is only a true cloud provider if it lets you scale capacity by 10x or more, without noticeable performance changes, with 1-2 days’ notice.

Many people who claim to provide cloud computing do so with software that only distributes some of the resources you need to scale. (True clouds distribute all of the resources). As a result, they need to commence an IT project, such as migrating data to a bigger database server, when one of their customers needs to support a dramatic increase in volume. As a customer, this translates into: 1) slower performance during peak demand, 2) downtimes for maintenance and upgrade, 3) cost spikes or delays to support things like big advertising campaigns, and 4) ability to only grow so big before you need a bigger provider.

Ask these questions, the next time you are looking at a “cloud-based” service

Then next time you are looking to procure a “cloud-based” service, apply these acid tests by asking the following:

  • Can I implement this myself? If so, how long will it take me to do this?
  • When you upgrade your service do I get the changes automatically (and for free)?
  • Can I change [X, Y, or Z] myself? Does this cost anything? Can I do this without whenever I want and see the changes immediately?
  • Can you provide a performance SLA for high and low usage periods? Do I need to do anything if, I am running a project or ad campaign that increases traffic by 10x, 100x or more? How does my cost [per X] change when this happens?

You don’t need to be a “geek” to ask these questions. However they will tell you very quickly what you are truly buying.

Additional resources and references:

  1. NIST’s cloud computing definition highlights the importance of self-service and rapid elasticity. It also highlights the importance of scaling all computing resources (e.g., networks, servers, storage, applications, and services)
  2. Amazon Elastic Compute Cloud demonstrates this in action.
  3. Scaling everything on-demand is not a trivial exercise. Here are posts on scaling dynamic data and future-proofing architecture.