Tuesday, April 17, 2012

5 steps to stateless

Stateless data, applications, and devices are maturing so rapidly, and have such clear business benefits, I believe it’s time for businesses to take action.   You can begin to realize those benefits almost immediately, and you can make sure your organization is aligning itself in the present for a future that is certainly on the way.

In the stateless model, data and applications run in a private or public cloud.  The devices you use to consume them have only two main functions:

  • connect you to the cloud.
  • provide a user interface that lets you access and interact with your applications and data.

This article looks at 5 fundamentals of the stateless future.

For businesses, the benefits are profound.  Security goes up, because data is managed centrally, not scattered on thousands of hard drives and memory chips, where it is subject to malfunction, loss, or theft.  Application updates are done on one machine.  Devices become almost interchangeable, with simple configuration needs. Management costs go down, as do the costs of the devices themselves.  A four-year-old computer can be kept in service, since it must now do simpler work.   Answering the call of users to bring their own devices becomes easier, since for the most part you can deliver your entire work environment securely to any browser.  Stateless is "your business as a service."

Of all the trends that will impact business, and of all the things that will benefit business, stateless is among the easiest choices.  It offers clear rewards and very quick payback, and can be implemented with iteration rather than a single giant project.  

This illustration plots elements of the stateless future into four tracks, from legacy to pure stateless.  The latter isn’t quite possible yet, and few people reading this will find themselves purely in the former; it's the middle--the “act now zone”--where action is possible, and needed.

1. Data: cloud before data center before local device
The local machine is about the worst possible place for data to live; we still follow the practice largely out of habit, because it was necessary in the days when connectivity and bandwidth were primitive.  Neither is true today.  User data storage offerings are maturing in both the consumer and the enterprise spaces; where data storage from legacy client/server applications is dependent on local installation, move toward desktop virtualization (see below.) Of all the things that offer quick benefits and move you toward stateless, getting data off local machines offers the easiest path and the quickest deployment.

2. Applications: web before app before fat client
Fat client applications represent almost everything that’s wrong with legacy IT.  Let’s count the sins: Resource Hog.  Security risk. Nightmare to install and maintain. Constrains choice of deployed hardware, especially when companies are faced with user demands to “bring their own.” Fat clients on local machines were a miracle 20 years ago, a burden today.

Faced with that reality, it’s easy to be seduced by all the current hype around the “app internet.”  Programs available in an “app store” seem so much lighter-weight, almost elegant in their point-click-run simplicity and the storefront environment in which consumers devour them.  

But as they stand now, they only solve a few problems.  Some are only available for one ecosystem, like Apple’s iOS.  Or if they are widely available, say for Android as well, they’re sold by different vendors, each within its own walled garden.   In some cases, they use cloud storage of data as the default, which is on the right track.  But they still must be locally installed, still must sync data from the cloud to the local device, and still need endless device-by-device updates.  

Contrast that with the stateless, web-delivered alternative:  available on any device you sign in to, maintained and updated centrally, does not need to sync data, and needs only a browser on the other end in order to work.  With the advent of HTML5, web based apps are growing in power very rapidly, and are already being deployed preferentially in some cases.  Do not make the strategic mistake of investing in new applications that can’t be delivered to a browser, or else risk getting trapped in the same client/server problems of the past.

One interesting interim step is used by SaaS provider Podio.com; one Podio app is installed locally on iOS or Android, and provides a gateway into a big range of cloud-sourced apps in the Podio portfolio.  Install one app locally, run hundreds from the cloud.  Look for more of these “adaptive” app gateways in the near future as a bridge technology until pure web apps mature.

This is an important point: cloud-delivered, browser-accessed data and applications are not purely stateless, but they abstract most of the old problems away from the local machine, making it possible for you to deliver many stateless benefits now.

3. Desktops: browser before virtualized before local
We graduated from command-line computer interfaces  in the 1980s.  Even my Commodore 128 had a primitive mouse-controlled “click on icons” interface called GEOS.  For most practical purposes, everything else we’re used since the C:/ prompt is a desktop.  The multiple screens on smartphones are desktops, so is the work area on a tablet.  

It’s a visual interface between the user and whatever the user is doing; now that we’ve had desktops for 30+ years, it’s a comfortable place.    However, it’s no secret that the trend in technology has been away from the desktop as we know it for many years  So much so, that for many current knowledge workers, a browser sitting on a desktop is where we spend most of our time at work.  You may work all day in IE, Firefox, or Chrome, and never need to look at the underlying desktop once. The metaphor of the desktop and that of the tabbed browser window are merging.

Many of your needs can already be met in a browser, without a desktop at all: e-mail, several business applications,  and most office productivity applications like word processing and presentations.  In that case, the browser essentially is the desktop.  That’s a sort of “stateless light” and represents progress.  

But let’s be realistic. Many important parts of your business are client/server, and will be part of your portfolio for years to come.  You can still begin the stateless journey today by shifting to virtualized desktops, in which a licensed copy of a traditional fat OS runs on a server, complete with your legacy client/server applications, delivered in stateless form to a browser.  

At that point, when your users get their entire experience online, you’re free of concern about local updates beyond the operating system and the browser itself.  While desktop virtualization is often promoted as a cost-saving measure, I would argue that the truly compelling case is because you can then keep your whole environment secure, do updates and backups all at once, and make it available anywhere on a “need to use” basis--in a browser.  Again, a solid step in which many benefits of the stateless future can be delivered today.

In an interesting turn of events, technology is now coming full circle, not just to a “post-PC” era, but a “post-browser” one as well.  The new Aura window manager in Google’s Chrome OS remains completely stateless, but has a familiar desktop interface.  “Browser” was an application that ran on a traditional fat operating system, but in the stateless world, in which you’re just delivering a user interface to cloud based data and apps,  you can make the UI look like whatever you wish.  In Aura, a “browser” delivers a “desktop,” upon which sit “browser” windows.  It looks like the past, but it offers the benefits of the future.  

4. Roles: deploy to the need
Not all parts of the stateless future are here yet. Neither are all parts evenly distributed, and there are a few needs that argue for the old style “data/application/machine in one.”  

What roles are “stateless ready” right now?  Any knowledge worker or administrative/clerical role that primarily works in one place, or has good WiFi/3g/4g access in the locations they work, is an excellent candidate for a browser-delivered stateless experience using a hybrid of web apps and desktop virtualization.  Many of these could go pure stateless now, using Chromebooks.

Media production, involving a lot of processing of image or sound files, will likely not be suited for a pure stateless environment.    There are also knowledge workers who need office productivity applications during many long flights, and must still rely on old “local client, sync to server when connected” applications.  But have you noticed how many flights now have WiFi? The "I can't use stateless because I need to be connected all the time" argument is fading away.

The point is, you may be using the tech equivalent of a tour bus for many, many people in your organization who could get where they need to go in a minivan or compact car. Don’t wait until stateless can serve every role in your company before you begin offering its benefits to roles that are ready today.  

5. Machines: extend the life of legacy, deploy stateless where possible
We’ve already considered the ways desktop virtualization and browser enablement can allow for longer lifecycles with your existing laptops and desktop computers.  As long as a machine has the power to deliver good connectivity and run a browser, you can deliver a near-stateless experience to those machines using browsers and virtualized desktops.

Stateless content and applications are an excellent match out of the box for the new ultrabook laptop computers, or for any bring-your-own-device program.  

As this is written in spring 2012, the Google Chromebook is the only stateless device you can buy, and only from two vendors: Samsung and Acer.   New, more powerful models of Chromebooks are on the way, but I will tell you from experience that the first generation has served me well as my primary computer for almost 11 months.  Mozilla is working on the stateless phone, with their Boot2Gecko project.

Conclusion: takeaways
Although the full realization of the stateless future will use a stateless device to interact with data and applications delivered from the web, there are straightforward steps you can take today to make the stateless delivery of data and apps available right away, even if you are using Windows or Mac OSes.  

Try all these pilot programs:

  • Users’ data in the cloud, not the local machine
  • Virtualized desktops to a variety of laptops and desktops.  
  • Get some Chromebooks into service in different roles, find out to what extent a fully-stateless environment works for you or does not.

In my opinion, the future will be stateless.  Because it touches so many things, and offers benefits across so many boundaries, this article is the start of the implementation discussion, not the complete dialog.  I’d like to have that longer discussion with you if you’re thinking about stateless, both to share my ideas, and to learn from yours.  Do let me know by e-mail or in the comments what you’re interested in.  I’d be happy to plan a seminar with your team, either online or at your site, to look at the entire stateless picture and your plans to get there.  

This article is part of ongoing coverage of the stateless future, one of the big ideas.  

No comments:

Post a Comment