Amazon is dead wrong?(No, I don’t think so)

Some of my friends were talking about the post above last night, so I have read it.

Jason Forrester, former global data center network manager at Apple is saying that the public cloud like Amazon and Azure are still good for easy apps. He means ‘web application’ and some other ‘not time-sensitive’ applications. But strategic applications like Apple’s virtual assistant Siri, Apple TV, Uber’s mapping service do make more sense with internal data centers.

I’m assuming one of the reasons he is saying this comes from the line up of services those AWS provides. We can say they are offering 2(or some more) layers of services, the one is underlying layer services like EC2, VPC, S3 or something like fundamentals. The other one is higher level or application level services like RDS, EMR, ElasticBeanstalk and so on. I think he is not happy with current line up of this higher level services.

Actually AWS is designing and offering those services based on the customer’s feedbacks while they were using very generic services like EC2. For example, RDS provides sophisticated RDB capability on top of EC2. We obviously can run our own RDB installation on top of EC2, however, RDS offloads the very common work like installing/tuning/operating those most of everyone has to do. So, RDS came out, based on the feedbacks from those people.

However, it make sense that the strategic applications he mentioned really requires various and bunch of unique feature, capability, capacity and control those AWS’s higher level services does not cover. It’s understandable.

To me, that’s one of the reason nowadays we everyone is talking about Docker type of things and the public cloud services are starting to offer container managing services like ECS(EC2 Container Service).

The container service provides very fine tuned level of infrastructure abstraction. It provides infrastructure abstraction while we still can run any type of application we want. While we will leverage the higher level services above, we can or we have to use container services to deploy and run very unique or in-house type application. With these capability, I believe we can cover most of complicated applications.