Monday, May 25, 2009

Will Apple dominate the cloud?

At dinner the other night with a friend we were talking about what we wanted the iPhone to do. We agreed that a new camera would be good but neither of us thought that a forward facing camera had any point as we don't know anyone who has made more than two video calls despite having phones that could do it.

So what we thought would be really good for the 4th Generation iPhone? In particular what could Apple do to re-enforce their strengths over the telcos and use it to leverage people in the Mac. The answer we decided would be in how Apple look to exploit iTunes, MobileMe and the store. Increasing storage is of course something that will happen but really whether its 32GB, 64GB or even 128GB you still won't have enough storage for every video that you might want to see, and its video that really takes up the space. Podcasts move in a close second for their huge files and the challenge of course is that you can only sync when connected to your base machine. The addition of buying over both WiFi and now 3G potentially heralds a new direction however and one in which Apple can use the cloud in a positive way and in such a way that sets up an additional contractual revenue stream for Apple outside of the telcos control.

The answer is MobileMe, currently it is (IMO) a pretty basic service with minimal value, sure you can do contacts and the like but for those people who use an iPhone at work they already get that sort of service via Exchange.

The other piece is Apple's other "cloud" solution.... iTunes. Millions of connections, billions of downloads, its a cloud of music, video and application content. Like a pre-populated S3. In addition Apple know what you have bought from them, they don't currently recognise what you haven't bought, but the point here is to increase the apple lock-in.

So how could they combine a cloud like solution such as MobileMe with the iPhone/iPod Touch and iTunes? Well how about a very simple concept... infinite storage. Your iPhone no-longer just has 32GB it has a series of rules that say what you want locally, e.g. the last 5 unlistened to podcasts, 5 oldest unwatched episodes, etc. Now these rules get applied on your machine and you fill up the 32GB iPhone. You then go out and start watching videos and listening to podcasts.

MobileMe then kicks in and starts in the background (its Apple so they can do this, you can't, they can) downloading the latest versions and locally deleting the episodes you've just listened to. Now sure it takes a while but you've got 5 episodes to get through and in the next 5 hours it should be able to get it all down.

The point here is that MobileMe doesn't need huge amounts of storage, if its an iTunes purchased element (e.g. an "unlistened to but purchased" list) then it just pulls from there, if its a podcast then Apple can get it in a fraction of a second and just stream it up to you and cache it in your MobileMe account. When you get back to your base station the same sort of sync occurs and not only is all your music et al backed up automatically to the cloud but it now gives you the feeling of "infinite" storage. Now the easy option for Apple would be to limit it to iTunes purchases, or at least do so for a basic MobileMe account, then for a Premium account you can backup and sync everything that you have, of course through a properly authorise account which answers the challenges of file sharing.

The UI side should be pretty simple for Apple as well, the Time Machine interface of multiple "levels" sounds like an ideal piece to replicate for a cloud browser, so you look at an album where you sync a track then "go back" to the full album then "go back" to all the albums you own by that artist. Throw in "genius" and Apple can start flogging you new tracks by indicating other levels that are available via the iTunes store.

What else could you do once you hit the cloud? Well things like Animoto show what cloud can do from a compute perspective, why not have that synced directly from your phone via MobileMe? View it then post directly to YouTube without requiring any additional local storage. You can decide to save it locally if you want but you still have the video in your overall cloud view of content.

So after then what do you need? Well HD video is liable to become more normal on compact cameras and where cameras go the phones follow, so why not HD on an iPhone next year? Again this hits the storage side but again having a cloud solution would mean that you could quickly offload it to the cloud. If you want to do some local edits (iMovie for iPhone?) then you get a transcoded short clip back, this lets you edit away on the device in the basic way. Upload to the cloud "iMovie" and a full HD rendered video is then available for your viewing or sharing.

Now of course what you need here is iMovie, and how do you get iMovie? Oh yes you have to buy a Mac, so you buy the iMovie4iPhone application (ala Keynote) and the iMovie4MobileMe subscription to give you a nice joined up experience. If you don't want the rendering pieces then its all included but you just have to sync from your Mac to create and view the final HD video.

So suddenly there are a few pieces on your iPhone that just seem to demand that your next computer is a Mac. Not because the iPhone just works, but because its really nice the way the two worlds synchronise via the cloud. Hell throw in TimeMachine via the cloud as a weekly offsite to go with your local daily and suddenly Apple are selling you a media cloud. Use Apple TV in your lounge to view all the stuff from this cloud and have it "just work". So you create a video on your iPhone, edited from lowres transcoded clips, this is then pumped via your main Mac as an HD version which you can then watch on your Apple TV.

So while people are clamouring for lots more whizbang elements on the device we thought that this missed the point. The iPhone isn't technically the most advanced device out there, its just the best device for users. Asking for forward facing cameras and other technical gizmos which would mean the iPhone would match other devices on a tickbox misses the reasons why it is the current leader in its space.

The opportunity for Apple here is to use the cloud, and in particular MobileMe, as the central co-ordination point between all your media life. Apple should be able to commercialise that connection ($100 a year for this sort of functionality, I'd go for it) and can also use it to leverage themselves a stronger position in the home computer market.

Previously people had talked about the "central hub" in a home, whether it be MediaCentre or a PS3, the challenge with these is that they were always very physically centric solutions and they didn't move you as you left the building. A cloud solution gets rids of that problem and offers a whole heap of other opportunities.

Maybe Apple will go down the cram in the features route, but personally I hope they open their eyes to the world they've already created and look to leverage it in new an interesting ways. You can keep your 10 Mega Pixel camera, I want my media cloud.

Others can build clouds and hope that people will come, Apple can build a cloud that will have them queuing up to demand to be locked-in.

Technorati Tags: ,

Friday, May 22, 2009

Hypocrites are alive Jim

Anne updated her SOA is dead blog which includes some quotes from analysts and others who are now bemoaning that SOA hasn't delivered, in part because over over-hype and expectations. What is stunning about this (and Anne doesn't call them on it) is that the main reason is exactly what Anne says. Namely that SOA isn't a technology thing, its a practice thing.

So having vendors claiming "we are still shifting products" while analysts who told people to go and buy those products are now complaining that they haven't seen the value really is just a farce.

The reason that SOA has failed for lots of companies is exactly because vendors and analysts pushed people down a route of technology first, assisted it has to be said by the likes of Accenture who pushed the same message.

SOA hasn't failed, what has failed is the next generation lipstick on the pig, buy my technology it will save your problems, do a big project it will fix everything style of IT that has always failed.

SOA isn't dead, but yet again the zombie child that is vendor driven strategy has failed to deliver IT departments the benefits that it should have. The same is beginning to happen around cloud as the zombie possession organisations that are vendor marketing seek to subvert yet another approach, and one which in the case of SaaS has been massively business driven, into re-selling the same technology which has failed before.

The odd thing is that in IT we seem to forget these pronouncements from vendors and analysts, continuing to buy the latest news like a goldfish in an abusive relationship.

SOA was never about the thing that has failed, it was only subverted into that by the zombie hordes who now have fortunately for SOA, but unfortunately for clouds and SaaS, shifted to feast on the new fresh brains in another part of the IT landscape.

Technorati Tags: ,

Monday, May 18, 2009

Just the facts, not the opinions

A common IT discourse:

Person A: "X is better than Y"
Person B: "Why is it?"

A: Well you can develop twice as fast in X than Y
B: Are you sure?

A: Absolutely
B: But we use Y and we've measured a 40% increase in productivity over the last three years

A: Well X will double that productivity
B: Could you show me the study that shows that?

A: Look at these client references
B: But these people are building a very specific application and are also clearly idiots if they couldn't get Y to do that

A: Ahh but it was faster than Y
B: But we are not idiots

A: X is better than Y

And so the discussion goes on. Its one I've had over and over again with both proponents of multiple languages and vendors... often with vendors. What marks these out is that most of the time there is almost zero actual factual data to back up the assertion, its simply that its an assertion.

The other problem is that most companies don't capture proper metrics and so aren't able to make a reasonable decision. They will often claim a productivity increase when the business feels that IT is moving slower, with no metrics to measure it becomes impossible to actually determine if IT is getting better or not.

The reason this leapt into my head is because last night I was watching "The Incredible Human Journey: Asia" in which the Chinese government and a few of their scientists were pushing, and indeed educate the populace through-out their school years, that the Chinese are "special" and evolved independently from everyone else on planet earth. Now I was a bit suspicious of the "all the bones were lost" argument but the point was that arguing around bone fragments was pretty much purely opinion, potentially educated opinion but still just opinion.

Then in came the metrics, which in this type of biology means genetics, and a scientist who set out to prove the Chinese hypothesis, and low and behold the results came back that just like everyone else on planet earth the Chinese are African too.

The point here was that there has been an argument around different points of a subject and arguing which was best, it is only however with the advent of clear metrics that it has been possible to close it down and prove that the out of Africa theory is the right one.

The lesson for IT is clear, we need metrics and clarity if we are going to improve. Without those metrics it is impossible to say when IT is improving and when it just looks like it is or is just claimed that it is.

So how do you measure your IT?

Technorati Tags: ,

Tuesday, May 12, 2009

The revolution in IT is economic not technological

NIST has come up with a cloud computing definition the first five items end with an economic pitch
Pay per use. Capabilities are charged using a metered, fee-for-service, or advertising based billing model to promote optimization of resource use. Examples are measuring the storage, bandwidth, and computing resources consumed and charging for the number of active user accounts per month. Clouds within an organization accrue cost between business units and may or may not use actual currency.

This is the real shift in computing and IT. Not the virtualisation, not the development environments but the shift towards a utility pricing solution. I notice the last line appears to have been tacked on as it doesn't fit the previous piece so much. If a transaction isn't using currency units then how on earth is it "pay"?
Business centric SOA represents that shift towards an economic approach to computing, it enables companies to understand where different forms of economic model work and the value that IT can bring. Cloud sits where IT becomes a pure utility, non-differentiating and available on demand. While at the moment these can be pitched as "value" elements that is simply because we are moving from a cottage industry of servers on racks towards an industrialised power supply business. Today we all run little mills by the river, cloud provides us with the power on demand to scale to ever larger demands. This does not mean however that cloud will differentiate us from our competition but our ability to use these new ways of work can.

Taking a business centric SOA look at IT and understanding the heatmap to focus people and understanding the value is about that shifting focus towards economic models which then allow you to understand where you invest and where you commoditise.

Clouds are not about value creation, they should be a low cost tool that enables you to create value from them. Equating the value with the tool is wrong, it is the application from which the value comes. Having a "cloud" does nothing, except reduce cost, unless you then work in other ways. To use the mill analogy, one company could take the new electricity supply and just run the old mill cheaper without the maintenance costs of the wheel and the issues with drought, another could use it to change the location to be nearer a larger population centre and away from the flood plain and devise a production line that creates the product for 1/3 the price. In both cases the utility is the same and in both cases it reduces a cost, in one however someone has learnt how to use the new low cost tool to drive new value for their business.

Economic models for IT are going to become more and more important in the next 10 years and understanding them, and making sure you are on the right side of them, will be very important for IT professionals who want a decent career.

Technorati Tags: ,

Wednesday, May 06, 2009

Do clouds require redundancy?

Having a twitter debate with Dan Creswell and Andy Hedges one of the topics was what a cloud is and what is required. In 140 characters Andy tweeted
Cloud Computing: the commoditisation and associated automation in provisioning and management of execution contexts.
Which isn't bad in 140 characters. One of the questions though was what level of resilience and redundancy does a cloud need to provide and associated with that what type of failover should it be delivering.

Dan has made a good case of cloud being about the provisioning API and I agree that is at the heart of cloud computing, the automated provisioning of virtual machines is the underpinnings of cloud. But what else? If its simply about that provisioning and management then my iPhone has a cracking application that enables me to start (provision) and stop Parallels instances on my Mac. It doesn't enable me to provision or deploy new instances (although in theory it could) but I'd argue that my little MacBook Pro would struggle to be described as a cloud environment.

So what is important in cloud? The first piece I'd add to the 140 characters would be failover. If my Mac fails then the images are toast, a cloud should have a level of virtualised redundancy which means that if a single piece of hardware fails my image should not. This means that running images must not only be portable but also must be actively failed over. Either by continually running across multiple hardware instances or by some form of active backup.

If a "cloud" solution is still tied to the "box fails, you fail" then for me that is a FAIL in terms of it really moving us on into a virtualised world, if my redundancy is not now virtualised then a major part of my SLA isn't virtualised and I'm still considering individual failover as important.

The follow on question is what level of redundancy is required. Can it all be in a single rack where a back-plane failure could take it all down? Can it be in two different parts of the same DC so a major power outage and UPS failure takes it down? Should it be in multiple DCs in a tied pair or triplet where a major natural disaster like an earthquake could toast it or must it be geographically redundant.

I'd say that it will truly be cloud when it achieves the later but that the bar needs to be a little bit lower so I'll say there are two classes of clouds and multiple levels

Automatically resilient clouds
These are clouds which provide true virtualisation of compute resources and effectively eliminate the need for hardware failure considerations. Virtual Machines can still fail for software reasons (hello Blue Screen of Death) but hardware and storage failure are managed to a given level.
  1. Platinum Clouds - Automatic geographical redundancy
  2. Gold Clouds - Automatic multi-DC redundancy
  3. Bronze Clouds - Automatic in DC redundancy
  4. Stone Clouds - Automatic proximity redundancy (shared hardware infrastructure)
  5. Lead Clouds - None of the above
Managed Resilient Compute Grids
These are solutions, often termed clouds, where the application can fail for hardware reasons and where you need to manage against hardware failures. Software failures also still occur clearly but the main point is that from a management perspective you have exactly the same redundancy concerns as with a physical server.
  1. Platinum Compute Grids - Ability to manage and provision your images across multiple Geos
  2. Gold Compute Grids - Ability to manage and provision your images across multiple DCs in a single geo
  3. Silver Compute Grids - Ability to manage and provision your images within a DC
  4. Lead Compute Grids - Everything goes to the same set of racks
The point here is about what virtualisation means and what it provides. If a cloud still links you to hardware failure then its a great compute grid but it still requires you at a fundamental level to worry about the hardware whether that be CPU or disk. A cloud should virtualise that meaning that only software failures are the issue, the hardware has been truly virtualised and scaled.

Technorati Tags: ,