Question from our reader

Hi Paul,

I’m the CDO of a multinational company but the thing is...I’m a bit stuck. I’ve been browsing the web for aaaages and just can’t make up my mind on what cloud-based solution to go for. Microsoft? Google? Amazon? I’m terrified I’m going to pick the wrong one for my company. Can you help??

In desperation,

Platform_Choice_Paralysis

Paul's answer

Dear Platform_Choice_Paralysis,

Here’s the thing...you’re already using all of them! If you’re using Salesforce, Workday, Xero or your kids are gaming on their PlayStation4 then you’re already using Amazon Web Services. If you use WhatsApp, you’re already using IBM’s cloud. If you use Google then you’re already using Google Cloud Platform and if you use Office 365 or Exchange you’re already using Microsoft Azure. Funny how all-pervasive the Cloud is, isn’t it?

So don’t worry...my advice is to just pick one and give it a try. If it works then that’s great, and if not you can cancel your subscription anytime and try another. Flexibility is key – so embrace it!

There are a few differences between the major platforms though that I can share, from varying costs to different capabilities. The big names tend to be Microsoft Azure, Google Compute Platform (GCP) and Amazon Web Services (AWS).

Microsoft is known for its productivity background and making easy-to-use software (think of the impact SQL Server had on the database space and the skills needed to drive it). Google is known for working on a massive scale at search, including machine learning and complex search algorithms. In my experience having built and used both platforms for customer deployments, Microsoft tends to be easier to use and provides a mass of pre-built solutions, whereas Google is a bit more technical yet offers more in the machine learning space and big data.

Of course, there is no technical reason why you can’t span multiple cloud environments. For example, you could leverage machine learning in AWS from applications developed Azure. However, there are a number of considerations when doing this including: a potential for increased cost, the need for skills in both environments, potential performance considerations especially when large data sets are involved, and lastly security which can be a significant consideration and require investment, monitoring and mitigation.

Security will be something that requires careful thought and detailed knowledge of the underlying cloud platform. You will need to consider how you architect your intra-service security and roles to create the right demarcation between services and users, and then also the external security that will control how you gain access to the platform and solutions. Private VPNs to cloud are of course a good starting point along with removing ‘internet access’, but there are subtle nuances with some services that may leave them with external IP addresses which is where the detailed knowledge of the platform comes in.

Lastly, skills will be a big consideration. As with all IT we will need to consider the skills required to build and manage the platform along with the skills required to actually drive the individual services, capabilities and solutions. Cloud changes the way we work and there are a range of subtle differences that users, especially those that build the platform and/or their own solutions will need to grasp. These include the way we move data around and the security implications, how networking works, how resource groups work and so on. None of these things are in any way rocket science, but an adjustment in thinking and the skills required need to adapt.

But my key message is – just give it a go and see what works for you. It’s like picking the right partner...you’re going to have a few learning lessons and bumps along the way, but you’ll find the right one in the end.

Yours,

Paul Maker

Chief Technology Officer at Aiimi & Agony Aunt for Techies