I have given many talks in recent years about my experiences in pioneering cloud applications. I have spoken at events ranging from C-level round tables to professional seminars to large vendor events with more than 5,000 people attending. I have had press conferences with fifty or so journalists. One thing that I find interesting is that the nature of the questions I get asked has changed over that time as an increasing number of people are becoming cloud-savvy.
In the early days, almost every question was about security and privacy, data sovereignty. More recently the questions have been more technical in nature – how to implement, how to handle change management, legal issues around the service level agreements etc.
So it came as a bit of a surprise to speak last week to a room of 150 people almost completely new to cloud at an event held at Google’s Sydney offices. The questions were quite mixed, but they all had one thing in common: the audience hadn’t realised that Cloud computing is different from the way they currently do things.
After years of doing interesting things with the various technologies on offer, it is easy to become complacent about just how radical a difference Cloud computing can make to a business prepared to see it as an opportunity to make real change. So the opportunity to share some basics with this audience was exciting and fresh. They thought Google Apps would bring them a different mail-server. I showed them how it was fundamentally different from in-house approaches: not just an outsourced mail server but an opportunity collaborate and move around untethered.
The freedom to innovate, the freedom to explore, the freedom to dream.
I found it really exciting to see them starting out on this journey that has changed so much.
My observations of our changing IT landscape move me to write this post about where I think we are heading and what our world will look like beyond the currently fragmented understanding of what Cloud Computing is.
People see Cloud Computing in different ways. Some see it as a cost cutting vehicle, some see it as a strategy for Greener IT, some see it as just a means of managing virtualising or outsourcing of computer power and storage. Others, including myself, have seen it as a means of facilitating innovation in a world of opportunity without limits. Regardless of the perspective, most people talk “Cloud” but think “Clouds”. I have never subscribed to the view that there are multiple clouds – that is just not compelling enough, too limiting. And yet most implementations seem to end up as competitive islands bereft of capacity to really play a role in synergising for a better world.
Nevertheless, there is a lot of evidence to suggest this pluralised, fragmented and limited Cloud paradigm is being replaced inexorably by a single consolidated view, Evidence of this trend includes:
- Single Sign On technologies providing single points of entry;
- Increasingly convenient and powerful APIs facilitating interoperability and data exchange between systems
- User interface mash ups, initially limited to maps and embedded videos, are increasingly making their way into social networking and business applications, everything from Twitter and RSS feeds to camera based applications like QR and barcode readers, from financial credit ratings on customers to public ratings on suppliers. For illustration, LinkedIn now provides Twitter feeds and WordPress blog entries without any programming. Facebook includes all manner of embedded games.
- New Social Media platforms take advantage of our need to contextualise our input and output: LinkedIn allows the creation of groups for private or open discussions, and Google+ takes a big step forward in this direction with its concept of circles, seemingly borrowed from the like of Covey’s Circles of Influences and Concern.
Twitter involves broadcasting our message to the world and will be received by followers and searchers. Strangely, a lot of people see Twitter as a reciprocal arrangement, whereas its real power lies in people being able to follow those who have something to say that they find interesting. Reciprocation as a practice limits the usefulness of the medium. As a side note, it is interesting how the crowd has adapted Twitter for contextualization by adding hash tags (#MyTopic). This has enabled Twitter-based real time discussions, trending topics to be picked up and has introduced all sorts of leveraging power for customers,vendors, budding artists and anyone else who wants to be noticed. Salesforce Chatter has adopted the same convention.
- Many email clients provide a range of ways to automate the management of email. We started with clients like Outlook that could do things like put emails in folders (A very client-oriented approach). GMail introduced labels – the new tagging approach meant that emails could co-exist in multiple locations. Threading added support for grouping related emails. Business rules facilitated focus on things that are important immediately, without losing things for later attention. Spam management both at the server and the client side also helped. Recently a number of tools are rethinking this. For example, ZeroMail, currently in beta, learns from your behavior as well as the behavior of others how email should be processed and separates magazine-style content into a reading stream, allows emails to be treated as tasks and to be snoozed for later attention.
- Back-end facilities such as Amazon SQS (Simple Queuing Service) and SNS (Simple Notification Service) now allow developers to tie systems together in unimaginable ways, providing interesting context and value that is hard to predict.
- The emergence of Database as a a Service in a variety of forms is allowing designers to focus on how their system will provide value rather than how the data is stored or persisted.
One of the beautiful things about Salesforce is the ability to create or modify an object’s structure with defined relationships, permissions, application contexts, business rules and page layouts.
Think about it for a second: how many frameworks do you know of that enable you to modify the data schema and automatically set:
- Relationships between objects;
- Cardinality rules, (definitions of how objects relate to each other in terms of how many of one can be related to how many of another);
- Business rules, (what fields are mandatory, what fields are dependent, default values, what fields are read only or even visible for certain users, which fields must be unique);
- Referential Integrity rules (which records will be deleted when a parent is deleted);
- A User Interface, even one that can be different for each user profile;
- Application context (which objects belong together to form a sub application;
- Access to reports; and
- A Notification engine that can share changes with subscribers or record owners, or handle task assignments.
And all with a point and click interface – no programming required (unless you want to), and all with defaults to allow you get the job done quickly. Very quickly. Read more
This article is the first in a series of articles looking at changes/improvements I would like to see happen. You will find them categorised under the category “Things I Want to See”, and also filed under specific vendors where appropriate.
An increasing number of people are coming to understand intuitively the difference between traditional peer-to-peer document sharing modes where multiple instances of documents exist, at least once on each client machine. You know the drill, you attach a document to an email, the recipient opens the attachment, edits it, saves it and then attaches the saved new version to a new email and sends it back. Before long, there are multiple copies of the document and it can be difficult to know how the document evolved. In the case of several people, it can even be difficult to know which version of the document is the current one. There may not even be one single latest version, as two people may edit two different earlier versions at once. Stitching these all back into a master document is not easy.
A lot of tools have been developed to simplify the potentially incredibly complex task of managing all these document versions. But the cloud provides a simpler way, by fundamentally only having one document location. So instead of linking people to people, you link people to documents and the problem elegantly goes away:
|Traditional Document Sharing||Cloud-based Document Sharing|
“Knowledge is a single point, but the ignorant have multiplied it.”
(Baha’u’llah: Seven Valleys and Four Valleys, Page 25)
When we don’t really understand something, we see division, we see dichotomy. We see the things that differentiate and we hone in on them, creating opportunities by exploiting these differences and in so doing we limit our thinking, our judgement, our potential. We become experts and protect that expertise by making it difficult for others to gain the knowledge we have. Knowledge is power, having more knowledge than others gives us an advantage.
It usually takes one visionary person to challenge the basic assumptions that lead to these differences, and when that happens, entirely new vistas open to us, empowering those who were shut out by providing access to the knowledge or exposing the differences as being false divisions, false barriers to entry.
Computers are like this. In the very early days, only people trained in the arcane would be able to (or want to) access a computer. A computer operator had to be able to read ticker tape, write in binary, then assembler, then Fortran. Screens and keyboards made computers more accessible, and then graphical user interfaces hid much of the complexity.
Programmers have been able to work with increasingly high abstractions, but still we haven’t really been able to get away from the need to be able to program, or to purchase tools that hide this from us – tools that automatically do backups, convert file formats, transfer data, dial the phone, send communiqués or whatever.
This seems to be changing very quickly – increasingly it is becoming possible for people to choose to configure existing systems rather than being forced to find a programmatic solution.
What is interesting here is the trap this represents for some people on both sides of the fence – those that understand how to program and those that don’t. Clearly the people who focus on the end objective, rather than the means of getting there, will adapt as technology becomes increasingly available to non-programmers. These outcome-oriented people have a distinct advantage.
Those who only see the barriers will continue to use old methods. End users will remain in fear of the unknown, while programmers will continue to look for programmatic solutions, even when both are presented with tools that can get the job done without code.
Cloud Computing makes it easier to facilitate the kind of advances described here, advances that empower end users to achieve change without programmers. This is because Platforms and Software delivered as a Service typically mean there is only one version of the platform or software in use by everyone – it is literally impossible for anyone to get left behind. Vendors can work to cover a lower common denominator because it is worth their while. Salesforce.com is a great example of this.
The bottom line: Those that focus on the technology will be left behind in a world where we were slaves to technobabble. Those that focus on what they want to do will realise the rules have changed and will be astonished at just how far they can take their vision without breaking a sweat.
In the 19th Century, railroads sprang up all over the United States and Europe and history shows that most of them ultimately failed because they didn’t understand the fundamental nature of their business. The actions of most demonstrate that they understood their business to be that of operating a railroad. Of course, those that survived understood they were in the business of providing a service to move people and goods. These companies were able to make the natural transition from trains to planes, ships and trucks.
Telecommunications companies face a difficult decision as they see their traditional business eroded by new entrants using completely new approaches to linking people together, but how do they perceive their business? Is it:
- provisioning infrastructure?
- facilitating communications between people from afar?
- enabling information to be shared remotely between people?
- enabling information to be shared between business objects and people?
There are many businesses offering a small subset of this in a particular domain, for example,
- Marketing Automation tools that offer automated notifications when the behaviour of someone warrants it for example visiting a website, opening an email, talking to someone at a tradefair, failing to respond to a stimulus;
- Accounting Software that can automatically notify a dispatch agent such as Amazon Fulfilment when an order is placed, informthe Financial Controller when an invoice over a threshold has been allowed for a customer with a suspect credit history or can notify the Accounts Receivable clerk when an expected cash receipt fails to arrive;
- Product subscription services and RSS notifications that notifying a group of subscribers when a new product enhancement has been released or a new piece of content is made available;
- Leave management systems that notify managers when an employee’s leave gets too high or when a vacation is due to be taken by someone in the team; and
- Data Integration tools that allow data warehousing for data mining, disaster recovery or remote access.
- API Calls;
- Facebook Posts;
- Tweets and similar;
- Forum Posts;
- Website Visits;
- Email Responses;
- Database Events (inserts, updates, deletes, reads, procedure executions)
- API Calls;
- Facebook Posts;
- Tweets and Similar;
- Forum Posts;
- Database Events;
- SMS Messages;
- RSS Feeds;
- Amazon Simple Notification Service entries;
- Amazon Simple Queuing Service entries;
- Tasks / ToDo Items;
- Financial Transactions;
- Logistics Instructions
- A robust security system;
- A scheduler;
- An event and non-event manager;
- A business rules processor;
- A billing and transaction manager;
- An adapter;
- A metadata editor;
- A subscription manager.
Historically people have clustered in towns and cities because it is cheaper to transport goods than it is to transport people. Humans, being social animals, typically have a need to be with others physically. For the vast majority of us there is also a need to be able to communicate with others, whether we are near them or not. Through the ages a variety of systems of communication have been established: entire civilisations have thrived or fallen due to a communications infrastructure consisting of safe modes of transport and communication including roads and waterways, language, mountain towers, and eventually the telegraph and beyond. The Romans, for example, demonstrated the importance of this infrastructure to being able to grow a civilization we still talk about.
Companies initially arose to finance shipping ventures, where ships set off on journeys lasting months to trade goods, making fortunes at great risk by sapping the common for the rare in each direction. The workers on these ships, of course, needed to be in the one place – a sailor not on board is not of much value.
As the industrial revolution unfolded, the same techniques of bringing investors together were used to build self-contained factories where workers could manufacture increasingly complex products. These factories had their own source of power, their own distribution mechanisms, their own forms of transport. Productivity increasingly became the order of the day through machine and labour specialisation, and isolation from other companies.
Today our world is very different. We have learned to work interdependently, sharing a central supply of power that can be used for pretty much any generic purpose, sharing distribution systems, communications systems and all manner of services including things like advertising, staff training, waste disposal and statutory compliance.
Increasingly workers are able to work remotely, share jobs and rotate desks. Companies are able to outsource many things enabling them to concentrate on the things that truly make those companies special, and leave anything else to other companies with their own special skills. Rigid, hierarchical organisational structures have given way to matrix and other interesting structures. Workers who used to specialise in one repetitive task are empowered to take a more holistic role in the company.
We often hear that the future will enable us to work more from home and spend less time wasted in traffic. These are inevitable changes from a services based society and the increasing bandwidth and reliability that comes from better infrastructure. But there is more change coming to the way we live and work than that. It is happening all around us. New communications tools that social media brings us, tools like Twitter and Facebook, Chatter, LinkedIn, Quora, Ning, Yammer, WordPress and many others have the benefit of allowing people to tune into streams of information as a consumer and/or a producer in ways we really hadn’t foreseen a decade ago. The results are creeping up on us slowly, but inevitably.
So what will these changes mean for our corporate lives? For many businesses, long gone is the need for everyone to be in the same location, but more subtle changes such as our traditional relationship with one employer are likely to change. Companies specialise, and so do people. In a world where the streams of information make it possible, we are likely to see people increasingly take on fluid roles within companies, roles that morph from project to project, working on teams that are flexible and tailored to a requirement. Beyond that, we are likely to see people work for multiple organisations because the barriers to moving around will asymptotically approach zero. People, like companies will do the things that make them special, remarkable, and do them for multiple organisations. This is already true in the case of outsourcing to some extent, and the way that consultancies draw resources from a common pool elastically, but this is going to continue in many organisations.
The new modes of communication have given rise to a number of new businesses that facilitate sharing resources in ways that have exciting consequences – things like shared cars and bicycles, the so-called Internet of Things where devices can communication with each other and many others. We are gradually going to be able to recover from Information Overload because of this new way of communicating.
Looking back twenty years and seeing how futile it would have been trying to predict the way we live now leads me to the conclusion that any attempts to predict the consequences of these changes beyond the next few years is nigh on impossible, but I think attempts to do so will make interesting reading…
In reading the book Made to Stick by Chip and Dan Heath I learned about an experiment done in 1990 by psychology PhD student Elizabeth Newton, who was able to demonstrate that knowledge can be a curse. In the experiment, some people are asked to tap out a well known song (something iconic like happy birthday) and have someone else predict what the song is merely from the rhythm of the taps. The results were very interesting: the tappers predicted a 50% success rate, but the listeners were only successful 2.5% of the time – that’s one in forty times. Of particular interest was the fact that the people with the song were convinced the listener must be stupid, or not trying hard because the song was so obvious to them. Of course, they had a frame of reference – the song was, after all, in their head.
I feel that where we are with the Cloud at the moment is a bit like that. Firstly the cloud service providers: Cloud providers know how cool their technology and various systems are, but they have difficulty in conveying what is possible to the business community in a way that the business community can really understand what it means to them beyond saving a few dollars. The business community ends up focussing on factors like Capex vs Opex, TCO, security, disaster recovery etc – factors that simply provide a framework for decision making around alternatives for doing exactly the same stuff they have always done. In this light the focus of the cloud is heavily on cost management and other secondary (albeit important) issues.
The Business Community, having been led to see the cloud as merely an alternative to hosting their hardware (or in some cases software) solutions, are trapped into a suckers choice really: do it in house or do it in the cloud (or in a bureau etc…). But what the business community really wants to know (or should want to know) is how do they do it differently. How do they profoundly change the experience their customers have, how do they provision their staff with information that can help them pre-emptively deal with problems. How do they make their business remarkable. This is where the cloud offers exciting new potential and the vendors and the customers are still not talking the same language.
Part of this is a lack of awareness of the problem, part of it is a failure to truly see “The Cloud” for what I believe it to be – THE CLOUD, not the Amazon cloud, the Google Cloud, the Microsoft Cloud, the Salesforce Cloud, the “My Private Cloud” cloud. This lack of unified thinking leads to limited thinking and stifles opportunities.
I was excited to read this week that the IEEE has announced their intention to develop a cloud interoperability standard. Hopefully this will get people thinking in a more unified way, but the building blocks are already there. Any cloud offering worth its salt provides some form of API that enables interoperability so there is no need to wait.
A very small example by way of illustration: after a recent rollout of a new system to tens of thousands of people, a couple of customers reported an issue they were experiencing. The system touched on a number of different cloud-based systems and by viewing these as part of one system, I was able to pre-emptively find 140 other people who had either experienced this problem or were going to experience it. A personalised message was then sent from the system to each of these and they were astonished that we were able to proactively deal with their problem before they had reported it. Most of them never even knew there had been a problem. Looking at this particular instance from any single vantage point and we would only have been able to deal with these people as they inevitably hit the issue. The patterns were only evident in taking a holistic and pattern-based view of their particulars.
The business community and the technology community need to see across the chasm that divides them – their own expertise makes them assume things they shouldn’t assume. When business people can learn what is really possible by synergising in the cloud, and when cloud providers learn just how significant a 10% reduction in debtors days or stock turns means for a business, or a 5% increase in customer referrals means, then and only then will we start seeing what the cloud can do to help us effect real change.
Stephen R. Covey, in his book The Seven Habits of Highly Effective People, points out that human beings evolve from dependence to independence and ultimately, if they are to fulfil their potential, they evolve beyond independence to a state of interdependence.
In the first of these states, the state of dependence, the human needs the assistance of one who knows how to get food, clothing, accommodation, sanitation etc. Eventually, the child outgrows these basic needs and assumes a position of independence, ready to take on the world, posturing in a range of ways to demonstrate how well he or she can stand on their own two feet. Many of us fail to progress meaningfully beyond this stage, but in order to fully realise our potential, we must let go our ego and realise that we can do much better if we allow others to help us, trusting to the advantages of synergy that others who know better in some aspect will deliver their share of an agreement to work with us for a greater outcome than we can possibly achieve on our own.
The evolution of business systems and IT infrastructure for a corporation follow a similar pattern. The company starts off being dependent on the advice and software being offered by some small (or large) consultancy, with computers being serviced or looked after by someone else. Companies eventually grow or grow in confidence and decide to take these matters in house and look after their own computer systems. This is the stage where they express their independence. By bringing it all in house and stating that they can host their own equipment, design their own network architecture, they demonstrate their self confidence in being able to stand on their own (if virtual) two feet.
Of course, even in this stage with something as complex as a computer system, there is always going to be an aspect of interdependence – nobody is going to design their own CPUs, their own switches, cables, firewalls, communications protocols, powersource, operating systems etc. But at some fundamental level there is a view that the systems management is going to be done independently of all others. This is done in the name of competition, security, hubris, having special requirements or just “because we can”.
Those that manage to evolve beyond this view take a look outside their self-imposed walls and ask “what if” questions based on a fresh perspective that encompasses the views and potential of others. This is in essence what interdependence allows. Here are some examples that have come about as a result of interdependent thinking:
- The electricity grid – delivered as a result of thinking about the interconnectivity and the common need of all
- The humble telephone provides interconnectivity in ways previously rarely dreamed about. It is inspired by the desire to interoperate.
- The browser as the ultimate form of polymorphism – the killer app: simple in its approach, almost universal in its versatility
- XML as the common lingua franca allowing all systems to communicate with all systems – the same data basing shared and used in completely different ways
- Platform As A Service – the leveraging afforded by being able to make improvements that can be applied to thousands of clients and more makes possible the impossible, and delivers systems in unprecedented timeframes
These are just a small number of examples, but putting them together yields layer upon layer of opportunity to improve the world for everyone by simply thinking interdependently. For example
- The Google maps project was significantly enhanced as a result of one of the regional development teams providing the tools so that others could extend the maps globally. Soon enough, the public responded magnificently and a global resource is born.
- Wikipedia has 3.5 million articles in English not to mention all the other languages covered – all as a result of thinking interdependently
- The Petrucci Library offers a free collection of sheet music for over 80,000 scores of classical and related music
Those are public domain projects, but what about commercial synergies, such as
- Freight companies offering automatic tracking of packages while in transit
- Single sign on being used to streamline a customer’s relationship with a range of seemingly unrelated entities
- Customer subscriptions to forum posts and cases logged in support systems with automated notifications via SMS, Email, Twitter or Facebook
When companies start thinking from a point of view of interdependence, all sorts of doors open up to ways in which they can improve their customer’s experience, the quality of their products, the working conditions of their staff, the reputation of their brand. There is hardly a day goes by when I don’t see an example of how a company could improve the world by thinking interdependently rather than independently. And it doesn’t require exposing private information to the wrong people. It just requires thinking differently.